From c41c6ff27f88c6cb240620a593c446a71cdb12a0 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Wed, 21 Feb 2024 21:28:39 -0400 Subject: [PATCH] agx: assert phis don't have .kill set it's meaningless for phis but would cause soundness problems. Signed-off-by: Alyssa Rosenzweig Part-of: --- src/asahi/compiler/agx_register_allocate.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/asahi/compiler/agx_register_allocate.c b/src/asahi/compiler/agx_register_allocate.c index 96b042c446b..ac5c74d4ca4 100644 --- a/src/asahi/compiler/agx_register_allocate.c +++ b/src/asahi/compiler/agx_register_allocate.c @@ -931,6 +931,8 @@ agx_ra_assign_local(struct ra_ctx *rctx) /* First, free killed sources */ agx_foreach_ssa_src(I, s) { if (I->src[s].kill) { + assert(I->op != AGX_OPCODE_PHI && "phis don't use .kill"); + enum ra_class cls = ra_class_for_index(I->src[s]); unsigned reg = ssa_to_reg[I->src[s].value]; unsigned count = ncomps[I->src[s].value];