agx: Add jumps to block ends
authorAlyssa Rosenzweig <alyssa@rosenzweig.io>
Wed, 30 Aug 2023 20:25:02 +0000 (16:25 -0400)
committerAlyssa Rosenzweig <alyssa@rosenzweig.io>
Sun, 1 Oct 2023 16:32:11 +0000 (12:32 -0400)
commitdd6106c8bd685e937db48ebe4ba0fca16fbd500b
tree00e2eb6c97e51cbdc76d1d59803c3d8d8c939f2c
parent22ab505a3d2abcc8a9dbc2bfd0259101f115764a
agx: Add jumps to block ends

jmp_exec_none variant that jumps to the last instruction of the target block,
rather than the beginning. This is convenient for skipping over elses, while
still executing the block-final pop_exec instruction. Similarly for skipping
over loop bodies while still executing the block-final pop_exec, after break
instructions.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
src/asahi/compiler/agx_compiler.h
src/asahi/compiler/agx_opcodes.py
src/asahi/compiler/agx_pack.c