diff --git a/.pick_status.json b/.pick_status.json index fbb2005b3b2..d9d6b809f9b 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -1794,7 +1794,7 @@ "description": "nir/clone: Fix cloning indirect call instructions", "nominated": true, "nomination_type": 2, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "bb40284f76e1b2151b79b4bfa015110f8239144e", "notes": null diff --git a/src/compiler/nir/nir_clone.c b/src/compiler/nir/nir_clone.c index 2ad4867a21e..4b34200a145 100644 --- a/src/compiler/nir/nir_clone.c +++ b/src/compiler/nir/nir_clone.c @@ -485,6 +485,8 @@ clone_call(clone_state *state, const nir_call_instr *call) for (unsigned i = 0; i < ncall->num_params; i++) __clone_src(state, ncall, &ncall->params[i], &call->params[i]); + if (call->indirect_callee.ssa) + __clone_src(state, ncall, &ncall->indirect_callee, &call->indirect_callee); return ncall; }