Module: Mesa Branch: master Commit: 73f7f73ef30fdc8178265f8d79ff078cdd50e5cb URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=73f7f73ef30fdc8178265f8d79ff078cdd50e5cb
Author: Jonathan Marek <[email protected]> Date: Thu Apr 23 12:31:15 2020 -0400 freedreno/ir3: fix incorrect conversion folding Fixes dEQP-VK.glsl.builtin.function.pack_unpack.unpackhalf2x16_compute Signed-off-by: Jonathan Marek <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4708> --- src/freedreno/ir3/ir3_cf.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/freedreno/ir3/ir3_cf.c b/src/freedreno/ir3/ir3_cf.c index 9875ba4906f..db9b5de008b 100644 --- a/src/freedreno/ir3/ir3_cf.c +++ b/src/freedreno/ir3/ir3_cf.c @@ -103,6 +103,13 @@ try_conversion_folding(struct ir3_instruction *conv) case OPC_SIGN_F: case OPC_ABSNEG_F: return; + case OPC_MOV: + /* if src is a "cov" and type doesn't match, then it can't be folded + * for example cov.u32u16+cov.f16f32 can't be folded to cov.u32f32 + */ + if (src->cat1.dst_type != src->cat1.src_type && + conv->cat1.src_type != src->cat1.dst_type) + return; default: break; } _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
