diff options
author | Aurelien Jarno <aurelien@aurel32.net> | 2012-10-09 21:53:07 +0200 |
---|---|---|
committer | Aurelien Jarno <aurelien@aurel32.net> | 2012-10-28 14:54:22 +0100 |
commit | 7dfd8c6aa1d0691d03c5ccc9b0c5a93bcf00f768 (patch) | |
tree | 630a26591ca215955ecf0a5b8aaf2c04ab2eef6a /tcg | |
parent | a52ad07e7cde61c799ca3351ccd58c04d6f7474f (diff) | |
download | qemu-7dfd8c6aa1d0691d03c5ccc9b0c5a93bcf00f768.zip qemu-7dfd8c6aa1d0691d03c5ccc9b0c5a93bcf00f768.tar.gz qemu-7dfd8c6aa1d0691d03c5ccc9b0c5a93bcf00f768.tar.bz2 |
tcg: start with local temps in TEMP_VAL_MEM state
Start with local temps in TEMP_VAL_MEM state, to make possible a later
check that all the temps are correctly saved back to memory.
Reviewed-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Diffstat (limited to 'tcg')
-rw-r--r-- | tcg/tcg.c | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -776,7 +776,11 @@ static void tcg_reg_alloc_start(TCGContext *s) } for(i = s->nb_globals; i < s->nb_temps; i++) { ts = &s->temps[i]; - ts->val_type = TEMP_VAL_DEAD; + if (ts->temp_local) { + ts->val_type = TEMP_VAL_MEM; + } else { + ts->val_type = TEMP_VAL_DEAD; + } ts->mem_allocated = 0; ts->fixed_reg = 0; } |