summary refs log tree commit diff stats
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)
downloadfocaccia-qemu-5e143c43a686d5563b3a8c9d46b338967cc8d09c.tar.gz
focaccia-qemu-5e143c43a686d5563b3a8c9d46b338967cc8d09c.zip
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);