agx: Track current_block
authorAlyssa Rosenzweig <alyssa@collabora.com>
Sun, 23 May 2021 21:27:26 +0000 (17:27 -0400)
committerAlyssa Rosenzweig <alyssa@rosenzweig.io>
Sun, 30 May 2021 19:53:35 +0000 (01:23 +0530)
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11023>

src/asahi/compiler/agx_compile.c
src/asahi/compiler/agx_compiler.h

index 338b031..d3fb649 100644 (file)
@@ -732,6 +732,7 @@ emit_block(agx_context *ctx, nir_block *block)
    agx_block *blk = agx_create_block(ctx);
    list_addtail(&blk->link, &ctx->blocks);
    list_inithead(&blk->instructions);
+   ctx->current_block = blk;
 
    agx_builder _b = agx_init_builder(ctx, agx_after_block(blk));
 
index 0c45c0e..a9d818d 100644 (file)
@@ -321,6 +321,9 @@ typedef struct {
    /* I don't really understand how writeout ops work yet */
    bool did_writeout;
 
+   /* During instruction selection, for inserting control flow */
+   agx_block *current_block;
+
    /* Stats for shader-db */
    unsigned loop_count;
    unsigned spills;