diff --git a/.pick_status.json b/.pick_status.json index 53e6229dd28..ea17d43fb81 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -584,7 +584,7 @@ "description": "intel/brw: Drop misguided sign extension attempts in extract_imm()", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "580e1c592d90392a30185d8059499498748909fd", "notes": null diff --git a/src/intel/compiler/brw_fs_copy_propagation.cpp b/src/intel/compiler/brw_fs_copy_propagation.cpp index afb976b8430..c1064051054 100644 --- a/src/intel/compiler/brw_fs_copy_propagation.cpp +++ b/src/intel/compiler/brw_fs_copy_propagation.cpp @@ -1740,16 +1740,7 @@ extract_imm(brw_reg val, brw_reg_type type, unsigned offset) assert(bitsize < brw_type_size_bits(val.type)); - switch (val.type) { - case BRW_TYPE_UD: - val.ud = (val.ud >> (bitsize * offset)) & ((1u << bitsize) - 1); - break; - case BRW_TYPE_D: - val.d = (val.d << (bitsize * (32/bitsize - 1 - offset))) >> ((32/bitsize - 1) * bitsize); - break; - default: - return brw_reg(); - } + val.ud = (val.ud >> (bitsize * offset)) & ((1u << bitsize) - 1); return val; }