diff --git a/.pick_status.json b/.pick_status.json index 7a9f3a7ca96..47cfec2a5f8 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -4819,7 +4819,7 @@ "description": "pan/bi: Fix incorrect compilation of fsat(reg.yx)", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "ac636f5adb57704696c781a17f11609fad9035ec" }, diff --git a/src/panfrost/bifrost/bi_lower_swizzle.c b/src/panfrost/bifrost/bi_lower_swizzle.c index 988618036b3..883f530148d 100644 --- a/src/panfrost/bifrost/bi_lower_swizzle.c +++ b/src/panfrost/bifrost/bi_lower_swizzle.c @@ -134,8 +134,10 @@ lower_swizzle(bi_context *ctx, bi_instr *ins, unsigned src) bi_index dest = ins->dest[0]; bi_index tmp = bi_temp(ctx); + bi_index swizzled_src = bi_replace_index(ins->src[0], tmp); + ins->src[0].swizzle = BI_SWIZZLE_H01; ins->dest[0] = tmp; - bi_swz_v2i16_to(&b, dest, bi_replace_index(ins->src[0], tmp)); + bi_swz_v2i16_to(&b, dest, swizzled_src); return; }