diff options
author | Ian Moffett <ian@osmora.org> | 2025-10-03 16:36:06 -0400 |
---|---|---|
committer | Ian Moffett <ian@osmora.org> | 2025-10-03 16:36:06 -0400 |
commit | 39bd29f7dea6426db6fa78b4f18aae9aa76d8bc4 (patch) | |
tree | d97305f833e1a442a9b35daf3135b4d2c6ca834a /src/sys/include/np/piir.h | |
parent | 5ac96ca0f277c447254bcc50f98457c779d59dd6 (diff) |
np: piir: Add bitmap based register allocation
Introduce register allocation via a bitmap where each bit corresponds to
a specific register index.
Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'src/sys/include/np/piir.h')
-rw-r--r-- | src/sys/include/np/piir.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/sys/include/np/piir.h b/src/sys/include/np/piir.h index 5625409..b892231 100644 --- a/src/sys/include/np/piir.h +++ b/src/sys/include/np/piir.h @@ -42,6 +42,7 @@ */ typedef int8_t ir_byte_t; typedef int8_t md_byte_t; +typedef int8_t reg_t; /* * The maxiumum size of the bytecode stack per @@ -65,11 +66,13 @@ typedef int8_t md_byte_t; * @code: Generated machine code * @last_ir: Last IR byte used * @code_i: Current index into code buffer + * @regset: Register set bitmap */ struct piir_vm { md_byte_t code[4096]; ir_byte_t last_ir; uint32_t code_i; + uint8_t regset; }; /* |