diff options
| author | Richard Henderson | 2020-03-29 19:11:56 +0200 |
|---|---|---|
| committer | Richard Henderson | 2021-01-13 19:39:08 +0100 |
| commit | ee17db83d2dce35792e9bf03366af193e5e0e5c9 (patch) | |
| tree | 75dcdc88c2b2811e1000975f67dde680cbe05036 /include | |
| parent | tcg: Increase tcg_out_dupi_vec immediate to int64_t (diff) | |
| download | qemu-ee17db83d2dce35792e9bf03366af193e5e0e5c9.tar.gz qemu-ee17db83d2dce35792e9bf03366af193e5e0e5c9.tar.xz qemu-ee17db83d2dce35792e9bf03366af193e5e0e5c9.zip | |
tcg: Consolidate 3 bits into enum TCGTempKind
The temp_fixed, temp_global, temp_local bits are all related.
Combine them into a single enumeration.
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'include')
| -rw-r--r-- | include/tcg/tcg.h | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/include/tcg/tcg.h b/include/tcg/tcg.h index 95fe5604eb..571d4e0fa3 100644 --- a/include/tcg/tcg.h +++ b/include/tcg/tcg.h @@ -483,23 +483,27 @@ typedef enum TCGTempVal { TEMP_VAL_CONST, } TCGTempVal; +typedef enum TCGTempKind { + /* Temp is dead at the end of all basic blocks. */ + TEMP_NORMAL, + /* Temp is saved across basic blocks but dead at the end of TBs. */ + TEMP_LOCAL, + /* Temp is saved across both basic blocks and translation blocks. */ + TEMP_GLOBAL, + /* Temp is in a fixed register. */ + TEMP_FIXED, +} TCGTempKind; + typedef struct TCGTemp { TCGReg reg:8; TCGTempVal val_type:8; TCGType base_type:8; TCGType type:8; - unsigned int fixed_reg:1; + TCGTempKind kind:3; unsigned int indirect_reg:1; unsigned int indirect_base:1; unsigned int mem_coherent:1; unsigned int mem_allocated:1; - /* If true, the temp is saved across both basic blocks and - translation blocks. */ - unsigned int temp_global:1; - /* If true, the temp is saved across basic blocks but dead - at the end of translation blocks. If false, the temp is - dead at the end of basic blocks. */ - unsigned int temp_local:1; unsigned int temp_allocated:1; tcg_target_long val; |
