aboutsummaryrefslogtreecommitdiffstats
path: root/target-arm
diff options
context:
space:
mode:
authorDavid 'Digit' Turner <digit@google.com>2009-10-05 14:06:05 -0700
committerDavid 'Digit' Turner <digit@google.com>2009-10-05 14:06:05 -0700
commitddf49e53df97a349f42c733059165dc73c9907dc (patch)
tree94f840eab7a00cb543b37e1ab9086bc26df5245e /target-arm
parentacbee3546b9a380a4eb33daef3dccfac87c56b0b (diff)
downloadexternal_qemu-ddf49e53df97a349f42c733059165dc73c9907dc.zip
external_qemu-ddf49e53df97a349f42c733059165dc73c9907dc.tar.gz
external_qemu-ddf49e53df97a349f42c733059165dc73c9907dc.tar.bz2
Workaround ARMv7 emulation issues.
This patch is used to disable the code generator's liveness analysis pass when we emulate an ARMv7 CPU. This is required to properly run the dex preoptimization pass during the build of -user system images. Also includes: - a fix for a sad typo in target-arm/translate.c related to NEON instruction emulation - upstream improvements to the x86 and x86_64 backends to generate better goto branches at runtime - upstream fixes for 64-bit swap and shift operations in TCG After this patch is applied, re-enabling the ARMv7 memcpy should allow to run the dex preopt pass succesfully. Anything else is untested though. WE STILL NEED TO FIX THE CODE GENERATOR.
Diffstat (limited to 'target-arm')
-rw-r--r--target-arm/translate.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/target-arm/translate.c b/target-arm/translate.c
index ad3ab44..15239d1 100644
--- a/target-arm/translate.c
+++ b/target-arm/translate.c
@@ -3828,7 +3828,7 @@ static int disas_neon_ls_insn(CPUState * env, DisasContext *s, uint32_t insn)
gen_neon_dup_low16(tmp);
break;
case 2:
- tmp = gen_ld32(cpu_T[0], IS_USER(s));
+ tmp = gen_ld32(cpu_T[1], IS_USER(s));
break;
case 3:
return 1;