Revision e8996ee0 tcg/tcg.h
b/tcg/tcg.h | ||
---|---|---|
98 | 98 |
|
99 | 99 |
#define TCG_TYPE_I32 0 |
100 | 100 |
#define TCG_TYPE_I64 1 |
101 |
#define TCG_TYPE_COUNT 2 /* number of different types */ |
|
101 | 102 |
|
102 | 103 |
#if TCG_TARGET_REG_BITS == 32 |
103 | 104 |
#define TCG_TYPE_PTR TCG_TYPE_I32 |
... | ... | |
188 | 189 |
unsigned int fixed_reg:1; |
189 | 190 |
unsigned int mem_coherent:1; |
190 | 191 |
unsigned int mem_allocated:1; |
192 |
unsigned int temp_allocated:1; /* never used for code gen */ |
|
193 |
/* index of next free temp of same base type, -1 if end */ |
|
194 |
int next_free_temp; |
|
191 | 195 |
const char *name; |
192 | 196 |
} TCGTemp; |
193 | 197 |
|
... | ... | |
208 | 212 |
TCGTemp *temps; /* globals first, temps after */ |
209 | 213 |
int nb_globals; |
210 | 214 |
int nb_temps; |
215 |
int first_free_temp[TCG_TYPE_COUNT]; /* index of free temps, -1 if none */ |
|
216 |
|
|
211 | 217 |
/* constant indexes (end of temp array) */ |
212 | 218 |
int const_start; |
213 | 219 |
int const_end; |
... | ... | |
236 | 242 |
TCGHelperInfo *helpers; |
237 | 243 |
int nb_helpers; |
238 | 244 |
int allocated_helpers; |
245 |
int helpers_sorted; |
|
239 | 246 |
|
240 | 247 |
#ifdef CONFIG_PROFILER |
241 | 248 |
/* profiling info */ |
... | ... | |
299 | 306 |
TCGv tcg_global_mem_new(TCGType type, int reg, tcg_target_long offset, |
300 | 307 |
const char *name); |
301 | 308 |
TCGv tcg_temp_new(TCGType type); |
309 |
void tcg_temp_free(TCGv arg); |
|
302 | 310 |
char *tcg_get_arg_str(TCGContext *s, char *buf, int buf_size, TCGv arg); |
303 | 311 |
void tcg_dump_info(FILE *f, |
304 | 312 |
int (*cpu_fprintf)(FILE *f, const char *fmt, ...)); |
... | ... | |
381 | 389 |
|
382 | 390 |
void tcg_out_reloc(TCGContext *s, uint8_t *code_ptr, int type, |
383 | 391 |
int label_index, long addend); |
384 |
void tcg_reg_alloc_start(TCGContext *s); |
|
385 |
void tcg_reg_alloc_bb_end(TCGContext *s); |
|
386 |
void tcg_liveness_analysis(TCGContext *s); |
|
387 | 392 |
const TCGArg *tcg_gen_code_op(TCGContext *s, int opc, const TCGArg *args1, |
388 | 393 |
unsigned int dead_iargs); |
389 | 394 |
|
Also available in: Unified diff