From 7f524c427597cc998f243769b0e22e4f450c55cf Mon Sep 17 00:00:00 2001 From: dec05eba Date: Wed, 24 Apr 2019 21:22:53 +0200 Subject: Progressing on bytecode (to c), fix ssa resolving multiple times --- include/ssa/ssa.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'include/ssa') diff --git a/include/ssa/ssa.h b/include/ssa/ssa.h index 32d1ba6..e1e2d01 100644 --- a/include/ssa/ssa.h +++ b/include/ssa/ssa.h @@ -44,7 +44,8 @@ typedef struct { Buffer/*instruction data*/ instructions; HashMap/**/ intermediates_map; Buffer/*SsaNumber*/ intermediates; - HashMap/**/ strings; + HashMap/**/ strings_map; + Buffer/*BufferView*/ strings; SsaIntermediateIndex intermediate_counter; SsaStringIndex string_counter; SsaRegister reg_counter; @@ -77,6 +78,7 @@ SsaNumber create_ssa_integer(i64 value); 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_get_unique_reg(Ssa *self, SsaRegister *result); -- cgit v1.2.3