[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 08/14] tcg-sparc: Change AREG0 in generated code to
From: |
Richard Henderson |
Subject: |
[Qemu-devel] [PATCH 08/14] tcg-sparc: Change AREG0 in generated code to %i0. |
Date: |
Fri, 21 Sep 2012 19:05:01 -0700 |
We can now move the TCG variable from %g[56] to a call-preserved
windowed register.
Signed-off-by: Richard Henderson <address@hidden>
---
tcg/sparc/tcg-target.c | 3 ++-
tcg/sparc/tcg-target.h | 8 +-------
2 files changed, 3 insertions(+), 8 deletions(-)
diff --git a/tcg/sparc/tcg-target.c b/tcg/sparc/tcg-target.c
index 5acfeba..9ab5746 100644
--- a/tcg/sparc/tcg-target.c
+++ b/tcg/sparc/tcg-target.c
@@ -696,7 +696,8 @@ static void tcg_target_qemu_prologue(TCGContext *s)
tcg_out32(s, JMPL | INSN_RD(TCG_REG_G0) | INSN_RS1(TCG_REG_I1) |
INSN_RS2(TCG_REG_G0));
- tcg_out_mov(s, TCG_TYPE_PTR, TCG_AREG0, TCG_REG_I0);
+ /* delay slot */
+ tcg_out_nop(s);
}
#if defined(CONFIG_SOFTMMU)
diff --git a/tcg/sparc/tcg-target.h b/tcg/sparc/tcg-target.h
index 99e9f57..ee154d0 100644
--- a/tcg/sparc/tcg-target.h
+++ b/tcg/sparc/tcg-target.h
@@ -130,13 +130,7 @@ typedef enum {
#define TCG_TARGET_HAS_GUEST_BASE
-#ifdef CONFIG_SOLARIS
-#define TCG_AREG0 TCG_REG_G2
-#elif HOST_LONG_BITS == 64
-#define TCG_AREG0 TCG_REG_G5
-#else
-#define TCG_AREG0 TCG_REG_G6
-#endif
+#define TCG_AREG0 TCG_REG_I0
static inline void flush_icache_range(tcg_target_ulong start,
tcg_target_ulong stop)
--
1.7.11.4
- [Qemu-devel] [PATCH v3 00/14] Sparc TCG cleanup, Richard Henderson, 2012/09/21
- [Qemu-devel] [PATCH 03/14] tcg-sparc: Fix ADDX opcode., Richard Henderson, 2012/09/21
- [Qemu-devel] [PATCH 04/14] tcg-sparc: Don't MAP_FIXED on top of the program, Richard Henderson, 2012/09/21
- [Qemu-devel] [PATCH 01/14] linux-user: Use memcpy in get_user/put_user., Richard Henderson, 2012/09/21
- [Qemu-devel] [PATCH 02/14] tcg-sparc: Hack in qemu_ld/st64 for 32-bit., Richard Henderson, 2012/09/21
- [Qemu-devel] [PATCH 05/14] tcg-sparc: Assume v9 cpu always, i.e. force v8plus in 32-bit mode., Richard Henderson, 2012/09/21
- [Qemu-devel] [PATCH 08/14] tcg-sparc: Change AREG0 in generated code to %i0.,
Richard Henderson <=
- [Qemu-devel] [PATCH 07/14] tcg-sparc: Support GUEST_BASE., Richard Henderson, 2012/09/21
- [Qemu-devel] [PATCH 09/14] tcg-sparc: Clean up cruft stemming from attempts to use global registers., Richard Henderson, 2012/09/21
- [Qemu-devel] [PATCH 06/14] tcg-sparc: Fix qemu_ld/st to handle 32-bit host., Richard Henderson, 2012/09/21
- [Qemu-devel] [PATCH 10/14] tcg-sparc: Mask shift immediates to avoid illegal insns., Richard Henderson, 2012/09/21
- [Qemu-devel] [PATCH 12/14] tcg-sparc: Add %g/%o registers to alloc_order, Richard Henderson, 2012/09/21
- [Qemu-devel] [PATCH 13/14] tcg-sparc: Fix and enable direct TB chaining., Richard Henderson, 2012/09/21
- [Qemu-devel] [PATCH 14/14] tcg-sparc: Preserve branch destinations during retranslation, Richard Henderson, 2012/09/21
- [Qemu-devel] [PATCH 11/14] tcg-sparc: Use defines for temporaries., Richard Henderson, 2012/09/21
- Re: [Qemu-devel] [PATCH v3 00/14] Sparc TCG cleanup, Blue Swirl, 2012/09/22