diff options
author | Richard Henderson <richard.henderson@linaro.org> | 2022-10-14 07:37:38 +1100 |
---|---|---|
committer | Richard Henderson <richard.henderson@linaro.org> | 2023-01-05 11:34:14 -0800 |
commit | 29f5e92502effeadde242500a63dfd87a275ab46 (patch) | |
tree | 5f5699e04f261b39860c6189810db4db0e38f127 /include | |
parent | 8940ea0d326252cdbfd0fb5d6092caa3647a3b94 (diff) | |
download | qemu-29f5e92502effeadde242500a63dfd87a275ab46.zip qemu-29f5e92502effeadde242500a63dfd87a275ab46.tar.gz qemu-29f5e92502effeadde242500a63dfd87a275ab46.tar.bz2 |
tcg: Introduce paired register allocation
There are several instances where we need to be able to
allocate a pair of registers to related inputs/outputs.
Add 'p' and 'm' register constraints for this, in order to
be able to allocate the even/odd register first or second.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/tcg/tcg.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/tcg/tcg.h b/include/tcg/tcg.h index d84bae6..5c2254c 100644 --- a/include/tcg/tcg.h +++ b/include/tcg/tcg.h @@ -951,6 +951,8 @@ typedef struct TCGArgConstraint { unsigned ct : 16; unsigned alias_index : 4; unsigned sort_index : 4; + unsigned pair_index : 4; + unsigned pair : 2; /* 0: none, 1: first, 2: second, 3: second alias */ bool oalias : 1; bool ialias : 1; bool newreg : 1; |