X-Git-Url: https://git.xonotic.org/?p=xonotic%2Fgmqcc.git;a=blobdiff_plain;f=ir.h;h=bce85f4fb5e09fd1da578266707158698801b37b;hp=b1b0ea7b0b99837dbc8b5e4628db0e69d87c2076;hb=bd54fe03b9d080b5b99af874cc625b35a82580a3;hpb=973122ed9bc0679d4f9bb0fde90f90d57c17c3d7 diff --git a/ir.h b/ir.h index b1b0ea7..bce85f4 100644 --- a/ir.h +++ b/ir.h @@ -175,7 +175,6 @@ typedef struct ir_block_s size_t entry_id; size_t eid; bool is_return; - size_t run_id; struct ir_function_s *owner; @@ -273,12 +272,16 @@ typedef struct ir_function_s size_t run_id; struct ir_builder_s *owner; + + /* vararg support: */ + size_t max_varargs; } ir_function; #define IR_FLAG_HAS_ARRAYS (1<<1) #define IR_FLAG_HAS_UNINITIALIZED (1<<2) #define IR_FLAG_HAS_GOTO (1<<3) #define IR_FLAG_INCLUDE_DEF (1<<4) -#define IR_FLAG_MASK_NO_OVERLAP (IR_FLAG_HAS_ARRAYS | IR_FLAG_HAS_UNINITIALIZED) +#define IR_FLAG_MASK_NO_OVERLAP (IR_FLAG_HAS_ARRAYS | IR_FLAG_HAS_UNINITIALIZED) +#define IR_FLAG_MASK_NO_LOCAL_TEMPS (IR_FLAG_HAS_ARRAYS | IR_FLAG_HAS_UNINITIALIZED) ir_function* ir_function_new(struct ir_builder_s *owner, int returntype); void ir_function_delete(ir_function*);