diff options
Diffstat (limited to 'tcg')
| -rw-r--r-- | tcg/i386/tcg-target.c | 4 | ||||
| -rw-r--r-- | tcg/ia64/tcg-target.c | 5 | ||||
| -rw-r--r-- | tcg/ppc64/tcg-target.c | 4 | ||||
| -rw-r--r-- | tcg/s390/tcg-target.c | 4 | ||||
| -rw-r--r-- | tcg/sparc/tcg-target.c | 6 |
5 files changed, 14 insertions, 9 deletions
diff --git a/tcg/i386/tcg-target.c b/tcg/i386/tcg-target.c index 7529677fe2..281f87d3c6 100644 --- a/tcg/i386/tcg-target.c +++ b/tcg/i386/tcg-target.c @@ -76,9 +76,11 @@ static const int tcg_target_call_iarg_regs[] = { #endif }; -static const int tcg_target_call_oarg_regs[2] = { +static const int tcg_target_call_oarg_regs[] = { TCG_REG_EAX, +#if TCG_TARGET_REG_BITS == 32 TCG_REG_EDX +#endif }; static uint8_t *tb_ret_addr; diff --git a/tcg/ia64/tcg-target.c b/tcg/ia64/tcg-target.c index 9db205d4cc..3803ab6bfa 100644 --- a/tcg/ia64/tcg-target.c +++ b/tcg/ia64/tcg-target.c @@ -172,9 +172,8 @@ static const int tcg_target_call_iarg_regs[8] = { TCG_REG_R63, }; -static const int tcg_target_call_oarg_regs[2] = { - TCG_REG_R8, - TCG_REG_R9 +static const int tcg_target_call_oarg_regs[] = { + TCG_REG_R8 }; /* maximum number of register used for input function arguments */ diff --git a/tcg/ppc64/tcg-target.c b/tcg/ppc64/tcg-target.c index d831684803..3d24cd4da4 100644 --- a/tcg/ppc64/tcg-target.c +++ b/tcg/ppc64/tcg-target.c @@ -130,7 +130,7 @@ static const int tcg_target_call_iarg_regs[] = { TCG_REG_R10 }; -static const int tcg_target_call_oarg_regs[2] = { +static const int tcg_target_call_oarg_regs[] = { TCG_REG_R3 }; @@ -1560,7 +1560,7 @@ static void tcg_out_op (TCGContext *s, TCGOpcode opc, const TCGArg *args, break; case INDEX_op_ext32u_i64: - tcg_out_rld (s, RLDICR, args[0], args[1], 0, 32); + tcg_out_rld (s, RLDICL, args[0], args[1], 0, 32); break; case INDEX_op_setcond_i32: diff --git a/tcg/s390/tcg-target.c b/tcg/s390/tcg-target.c index 2fc5646400..b58df719a6 100644 --- a/tcg/s390/tcg-target.c +++ b/tcg/s390/tcg-target.c @@ -252,7 +252,9 @@ static const int tcg_target_call_iarg_regs[] = { static const int tcg_target_call_oarg_regs[] = { TCG_REG_R2, - TCG_REG_R3, +#if TCG_TARGET_REG_BITS == 32 + TCG_REG_R3 +#endif }; #define S390_CC_EQ 8 diff --git a/tcg/sparc/tcg-target.c b/tcg/sparc/tcg-target.c index ac76e1198d..fc3fd7ffce 100644 --- a/tcg/sparc/tcg-target.c +++ b/tcg/sparc/tcg-target.c @@ -84,9 +84,11 @@ static const int tcg_target_call_iarg_regs[6] = { TCG_REG_O5, }; -static const int tcg_target_call_oarg_regs[2] = { +static const int tcg_target_call_oarg_regs[] = { TCG_REG_O0, - TCG_REG_O1, +#if TCG_TARGET_REG_BITS == 32 + TCG_REG_O1 +#endif }; static inline int check_fit_tl(tcg_target_long val, unsigned int bits) |