aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorblueswir1 <blueswir1@c046a42c-6fe2-441c-8c8c-71466251a162>2008-02-29 19:34:39 +0000
committerblueswir1 <blueswir1@c046a42c-6fe2-441c-8c8c-71466251a162>2008-02-29 19:34:39 +0000
commit2f0a500803d7cb52ae98727a291d244bcdb38f84 (patch)
tree17286ba2a304510e1e2ff992e09da02c4dfb33ad
parent309e60bd07c8b5e89b285ed7ee9ce3240d7f9bfc (diff)
Fix register references (Igor Kovalenko)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4002 c046a42c-6fe2-441c-8c8c-71466251a162
-rw-r--r--tcg/sparc/tcg-target.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/tcg/sparc/tcg-target.c b/tcg/sparc/tcg-target.c
index 689d73a4e3..dd15735846 100644
--- a/tcg/sparc/tcg-target.c
+++ b/tcg/sparc/tcg-target.c
@@ -214,7 +214,7 @@ static inline void tcg_out_movi(TCGContext *s, TCGType type,
int ret, tcg_target_long arg)
{
if (arg == (arg & 0xfff))
- tcg_out32(s, ARITH_OR | INSN_RD(ret) | INSN_RS2(TCG_REG_G0) |
+ tcg_out32(s, ARITH_OR | INSN_RD(ret) | INSN_RS1(TCG_REG_G0) |
INSN_IMM13(arg));
else {
tcg_out32(s, SETHI | INSN_RD(ret) | ((arg & 0xfffffc00) >> 10));
@@ -312,7 +312,7 @@ static inline void tcg_out_op(TCGContext *s, int opc, const TCGArg *args,
/* indirect jump method */
tcg_out_ld_raw(s, TCG_REG_O7, (tcg_target_long)(s->tb_next + args[0]));
tcg_out32(s, JMPL | INSN_RD(TCG_REG_O7) | INSN_RS1(TCG_REG_O7) |
- INSN_RD(TCG_REG_G0));
+ INSN_RS2(TCG_REG_G0));
tcg_out_nop(s);
}
s->tb_next_offset[args[0]] = s->code_ptr - s->code_buf;
@@ -326,7 +326,7 @@ static inline void tcg_out_op(TCGContext *s, int opc, const TCGArg *args,
} else {
tcg_out_ld_raw(s, TCG_REG_O7, (tcg_target_long)(s->tb_next + args[0]));
tcg_out32(s, JMPL | INSN_RD(TCG_REG_O7) | INSN_RS1(TCG_REG_O7) |
- INSN_RD(TCG_REG_G0));
+ INSN_RS2(TCG_REG_G0));
tcg_out_nop(s);
}
break;