aboutsummaryrefslogtreecommitdiff
path: root/include/ssa
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2019-07-31 01:25:05 +0200
committerdec05eba <dec05eba@protonmail.com>2020-07-25 14:36:46 +0200
commit1f28c3c733ea3ae4234bff91e1c55e61b1ee3e96 (patch)
tree0ab52e362da03fde741ce8159ef8a4110cd1fb6a /include/ssa
parentec1a48e7b86fcd00127dd5a88d56c42083af1d78 (diff)
Starting on asm, implementing extern function call so progress is visible
Diffstat (limited to 'include/ssa')
-rw-r--r--include/ssa/ssa.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/include/ssa/ssa.h b/include/ssa/ssa.h
index 15a9f78..1d4c612 100644
--- a/include/ssa/ssa.h
+++ b/include/ssa/ssa.h
@@ -14,7 +14,9 @@ typedef enum {
SSA_ASSIGN_REG,
SSA_ADD,
SSA_SUB,
+ SSA_IMUL,
SSA_MUL,
+ SSA_IDIV,
SSA_DIV,
SSA_EQUALS,
SSA_FUNC_START,
@@ -69,7 +71,7 @@ typedef struct {
typedef struct {
SsaFuncIndex func_index;
- u8 num_args;
+ u16 num_registers;
} SsaInsFuncStart;
typedef struct {
@@ -93,7 +95,7 @@ SsaNumber create_ssa_float(f64 value);
SsaNumber ssa_get_intermediate(Ssa *self, SsaIntermediateIndex index);
BufferView ssa_get_string(Ssa *self, SsaStringIndex index);
-CHECK_RESULT int ssa_init(Ssa *self, ScopedAllocator *allocator);
+CHECK_RESULT int ssa_init(Ssa *self, ArenaAllocator *allocator);
typedef struct {
jmp_buf env;