diff --git a/.pick_status.json b/.pick_status.json index c4033f1cd15..ba89352b782 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -6134,7 +6134,7 @@ "description": "aco/ra: don't clear lateKill operands in get_reg_create_vector()", "nominated": true, "nomination_type": 2, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "08f088479a40b2f8c76064f4f9939c53a6d03a9b", "notes": null diff --git a/src/amd/compiler/aco_register_allocation.cpp b/src/amd/compiler/aco_register_allocation.cpp index 7f07f37cf3d..6e5939a534e 100644 --- a/src/amd/compiler/aco_register_allocation.cpp +++ b/src/amd/compiler/aco_register_allocation.cpp @@ -2109,7 +2109,7 @@ get_reg_create_vector(ra_ctx& ctx, const RegisterFile& reg_file, Temp temp, tmp_file.fill_killed_operands(instr.get()); for (unsigned i = 0; i < instr->operands.size(); i++) { - if ((correct_pos_mask >> i) & 1u && instr->operands[i].isKill()) + if ((correct_pos_mask >> i) & 1u && instr->operands[i].isKillBeforeDef()) tmp_file.clear(instr->operands[i]); }