diff --git a/src/asahi/compiler/agx_lower_pseudo.c b/src/asahi/compiler/agx_lower_pseudo.c index 2dfef489174..73b1dcf884d 100644 --- a/src/asahi/compiler/agx_lower_pseudo.c +++ b/src/asahi/compiler/agx_lower_pseudo.c @@ -28,6 +28,10 @@ lower(agx_builder *b, agx_instr *I) case AGX_OPCODE_OR: return agx_bitop_to(b, I->dest[0], I->src[0], I->src[1], AGX_BITOP_OR); + /* Writes to the nesting counter lowered to the real register */ + case AGX_OPCODE_NEST: + return agx_mov_imm_to(b, agx_register(0, AGX_SIZE_16), I->imm); + default: return NULL; } diff --git a/src/asahi/compiler/agx_register_allocate.c b/src/asahi/compiler/agx_register_allocate.c index cb74e4b32a9..0a2aacbd261 100644 --- a/src/asahi/compiler/agx_register_allocate.c +++ b/src/asahi/compiler/agx_register_allocate.c @@ -1252,14 +1252,6 @@ agx_ra(agx_context *ctx) } break; - /* Writes to the nesting counter lowered to the real register */ - case AGX_OPCODE_NEST: { - agx_builder b = agx_init_builder(ctx, agx_before_instr(I)); - agx_mov_imm_to(&b, agx_register(0, AGX_SIZE_16), I->imm); - agx_remove_instruction(I); - break; - } - default: break; }