aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <rth@twiddle.net>2010-01-12 19:59:32 +0000
committerBlue Swirl <blauwirbel@gmail.com>2010-01-12 19:59:32 +0000
commit5e143c43a686d5563b3a8c9d46b338967cc8d09c (patch)
tree1ae577e0fe1ec58dd0d64b26c0e680bcc73b93a7
parent7a3766f390a19522d1a3de6097d2f088e46b9cc2 (diff)
tcg-sparc: Do not remove %o[012] from 'r' constraint.
Only 'L' constraint needs that. Signed-off-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
-rw-r--r--tcg/sparc/tcg-target.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/tcg/sparc/tcg-target.c b/tcg/sparc/tcg-target.c
index 6934580697..8675fcee11 100644
--- a/tcg/sparc/tcg-target.c
+++ b/tcg/sparc/tcg-target.c
@@ -143,6 +143,9 @@ static int target_parse_constraint(TCGArgConstraint *ct, const char **pct_str)
ct_str = *pct_str;
switch (ct_str[0]) {
case 'r':
+ ct->ct |= TCG_CT_REG;
+ tcg_regset_set32(ct->u.regs, 0, 0xffffffff);
+ break;
case 'L': /* qemu_ld/st constraint */
ct->ct |= TCG_CT_REG;
tcg_regset_set32(ct->u.regs, 0, 0xffffffff);