diff --git a/.pick_status.json b/.pick_status.json index 8fb5cfe731b..779af589847 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -247,7 +247,7 @@ "description": "intel/nir: fix shader call lowering", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "c5a42e401036eb2eecf8798c103f8ae2cce08eab" }, diff --git a/src/intel/compiler/brw_nir_lower_shader_calls.c b/src/intel/compiler/brw_nir_lower_shader_calls.c index 38c4e0a3345..d7f3983a55b 100644 --- a/src/intel/compiler/brw_nir_lower_shader_calls.c +++ b/src/intel/compiler/brw_nir_lower_shader_calls.c @@ -137,6 +137,8 @@ lower_shader_calls_instr(struct nir_builder *b, nir_instr *instr, void *data) switch (call->intrinsic) { case nir_intrinsic_rt_trace_ray: { + b->cursor = nir_instr_remove(instr); + store_resume_addr(b, call); nir_ssa_def *as_addr = call->src[0].ssa; @@ -217,6 +219,8 @@ lower_shader_calls_instr(struct nir_builder *b, nir_instr *instr, void *data) } case nir_intrinsic_rt_execute_callable: { + b->cursor = nir_instr_remove(instr); + store_resume_addr(b, call); nir_ssa_def *sbt_offset32 =