summaryrefslogtreecommitdiff
path: root/test/ExecutionEngine/MCJIT
diff options
context:
space:
mode:
authorTim Northover <tnorthover@apple.com>2013-05-28 19:48:19 +0000
committerTim Northover <tnorthover@apple.com>2013-05-28 19:48:19 +0000
commite274b476de33ee4f2e90a3eb3a56b5cdd619eb82 (patch)
tree16b053fcfc965d8e2923398d28f1a89176bd5890 /test/ExecutionEngine/MCJIT
parent9174fd77e5e299fa3b1357a85ad82173217270b7 (diff)
downloadllvm-e274b476de33ee4f2e90a3eb3a56b5cdd619eb82.tar.gz
llvm-e274b476de33ee4f2e90a3eb3a56b5cdd619eb82.tar.bz2
llvm-e274b476de33ee4f2e90a3eb3a56b5cdd619eb82.tar.xz
ARM: use pristine object file while processing relocations
Previously we would read-modify-write the target bits when processing relocations for the MCJIT. This had the problem that when relocations were processed multiple times for the same object file (as they can be), the result is not idempotent and the values became corrupted. The solution to this is to take any bits used in the destination from the pristine object file as LLVM emitted it. This should fix PR16013 and remote MCJIT on ARM ELF targets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182800 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/ExecutionEngine/MCJIT')
-rw-r--r--test/ExecutionEngine/MCJIT/remote/simpletest-remote.ll2
-rw-r--r--test/ExecutionEngine/MCJIT/remote/stubs-remote.ll2
-rw-r--r--test/ExecutionEngine/MCJIT/remote/test-fp-no-external-funcs-remote.ll2
3 files changed, 3 insertions, 3 deletions
diff --git a/test/ExecutionEngine/MCJIT/remote/simpletest-remote.ll b/test/ExecutionEngine/MCJIT/remote/simpletest-remote.ll
index bdd7e3a593..f1a69d8d5d 100644
--- a/test/ExecutionEngine/MCJIT/remote/simpletest-remote.ll
+++ b/test/ExecutionEngine/MCJIT/remote/simpletest-remote.ll
@@ -1,5 +1,5 @@
; RUN: %lli_mcjit -remote-mcjit %s > /dev/null
-; XFAIL: arm, mips
+; XFAIL: mips
define i32 @bar() {
ret i32 0
diff --git a/test/ExecutionEngine/MCJIT/remote/stubs-remote.ll b/test/ExecutionEngine/MCJIT/remote/stubs-remote.ll
index 15cb5d037e..47a710db0e 100644
--- a/test/ExecutionEngine/MCJIT/remote/stubs-remote.ll
+++ b/test/ExecutionEngine/MCJIT/remote/stubs-remote.ll
@@ -1,5 +1,5 @@
; RUN: %lli_mcjit -remote-mcjit -disable-lazy-compilation=false %s
-; XFAIL: arm, mips
+; XFAIL: mips
define i32 @main() nounwind {
entry:
diff --git a/test/ExecutionEngine/MCJIT/remote/test-fp-no-external-funcs-remote.ll b/test/ExecutionEngine/MCJIT/remote/test-fp-no-external-funcs-remote.ll
index c7d48126ae..d7e8c35716 100644
--- a/test/ExecutionEngine/MCJIT/remote/test-fp-no-external-funcs-remote.ll
+++ b/test/ExecutionEngine/MCJIT/remote/test-fp-no-external-funcs-remote.ll
@@ -1,5 +1,5 @@
; RUN: %lli_mcjit -remote-mcjit %s > /dev/null
-; XFAIL: arm, mips
+; XFAIL: mips
define double @test(double* %DP, double %Arg) {
%D = load double* %DP ; <double> [#uses=1]