From b1f7b0cccc6986ca107d9eeb1c7d5e5e5a32dc49 Mon Sep 17 00:00:00 2001 From: Johnny Richard Date: Sun, 30 Apr 2023 03:11:00 -0300 Subject: gas: Compile variable expression with scope support This patch adds the variable compilation and uses a scope (a stack of map) to lookup for identities. Today we use a vector + ref_entry structs in order to achieve the scope implementation. The ref_entry lacks memory management, we are still no sure who will be the owner of the pointer. We also want to replace the scope a hashtable_t type as soon as we get one. Signed-off-by: Johnny Richard Co-authored-by: Carlos Maniero --- src/gas_assembly_generator.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/gas_assembly_generator.h') diff --git a/src/gas_assembly_generator.h b/src/gas_assembly_generator.h index 4d4b28e..044e8ed 100644 --- a/src/gas_assembly_generator.h +++ b/src/gas_assembly_generator.h @@ -18,11 +18,14 @@ #define GAS_ASSEMBLY_GENERATOR_H #include "ast.h" +#include "vector.h" #include typedef struct gas_assembly_generator_t { FILE *stream; + vector_t *refs; + int stack_offset; } gas_assembly_generator_t; void -- cgit v1.2.3