summaryrefslogtreecommitdiff
path: root/tcg/sparc
diff options
context:
space:
mode:
authorRichard Henderson <rth@twiddle.net>2013-09-06 14:20:00 -0700
committerRichard Henderson <rth@twiddle.net>2014-03-17 11:13:25 -0700
commite7bc9004e729d4db1fdced5ccc09a322df53723f (patch)
tree1a7947dac53b6cee3923e952ddec4aaf5c1d8161 /tcg/sparc
parent87f639629334c4592c3ba1011af0f691db1e7ed1 (diff)
downloadqemu-e7bc9004e729d4db1fdced5ccc09a322df53723f.tar.gz
qemu-e7bc9004e729d4db1fdced5ccc09a322df53723f.tar.bz2
qemu-e7bc9004e729d4db1fdced5ccc09a322df53723f.zip
tcg-sparc: Fix ld64 for 32-bit mode
Since were not using an annulled branch, we need to put a nop in the delay slot. Signed-off-by: Richard Henderson <rth@twiddle.net>
Diffstat (limited to 'tcg/sparc')
-rw-r--r--tcg/sparc/tcg-target.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/tcg/sparc/tcg-target.c b/tcg/sparc/tcg-target.c
index cbd1c91779..b459886116 100644
--- a/tcg/sparc/tcg-target.c
+++ b/tcg/sparc/tcg-target.c
@@ -963,6 +963,7 @@ static void tcg_out_qemu_ld(TCGContext *s, const TCGArg *args, int sizeop)
label_ptr[0] = (uint32_t *)s->code_ptr;
tcg_out_bpcc0(s, COND_NE, BPCC_PN
| (TARGET_LONG_BITS == 64 ? BPCC_XCC : BPCC_ICC), 0);
+ tcg_out_nop(s);
/* TLB Hit. */
/* Load all 64-bits into an O/G register. */