diff options
author | Renato Golin <renato.golin@linaro.org> | 2014-01-29 11:50:56 +0000 |
---|---|---|
committer | Renato Golin <renato.golin@linaro.org> | 2014-01-29 11:50:56 +0000 |
commit | 8cea6e8fc6a0cc1b5f1f4cbe9fb9f97983e531cc (patch) | |
tree | c8427457319e6ae166c91b9c24d9cec14e96d335 /llvm/test/ExecutionEngine | |
parent | 336d97146a047a9425bcad4858347baff9e223c5 (diff) | |
download | bcm5719-llvm-8cea6e8fc6a0cc1b5f1f4cbe9fb9f97983e531cc.tar.gz bcm5719-llvm-8cea6e8fc6a0cc1b5f1f4cbe9fb9f97983e531cc.zip |
Enable EHABI by default
After all hard work to implement the EHABI and with the test-suite
passing, it's time to turn it on by default and allow users to
disable it as a work-around while we fix the eventual bugs that show
up.
This commit also remove the -arm-enable-ehabi-descriptors, since we
want the tables to be printed every time the EHABI is turned on
for non-Darwin ARM targets.
Although MCJIT EHABI is not working yet (needs linking with the right
libraries), this commit also fixes some relocations on MCJIT regarding
the EH tables/lib calls, and update some tests to avoid using EH tables
when none are needed.
The EH tests in the test-suite that were previously disabled on ARM
now pass with these changes, so a follow-up commit on the test-suite
will re-enable them.
llvm-svn: 200388
Diffstat (limited to 'llvm/test/ExecutionEngine')
9 files changed, 12 insertions, 13 deletions
diff --git a/llvm/test/ExecutionEngine/MCJIT/remote/Inputs/cross-module-b.ll b/llvm/test/ExecutionEngine/MCJIT/remote/Inputs/cross-module-b.ll index 68701174110..bc13b1de8ef 100644 --- a/llvm/test/ExecutionEngine/MCJIT/remote/Inputs/cross-module-b.ll +++ b/llvm/test/ExecutionEngine/MCJIT/remote/Inputs/cross-module-b.ll @@ -1,6 +1,6 @@ declare i32 @FA() -define i32 @FB() { +define i32 @FB() nounwind { %r = call i32 @FA( ) ; <i32> [#uses=1] ret i32 %r } diff --git a/llvm/test/ExecutionEngine/MCJIT/remote/Inputs/multi-module-b.ll b/llvm/test/ExecutionEngine/MCJIT/remote/Inputs/multi-module-b.ll index 103b601e7f0..0b8d5eb37ad 100644 --- a/llvm/test/ExecutionEngine/MCJIT/remote/Inputs/multi-module-b.ll +++ b/llvm/test/ExecutionEngine/MCJIT/remote/Inputs/multi-module-b.ll @@ -1,6 +1,6 @@ declare i32 @FC() -define i32 @FB() { +define i32 @FB() nounwind { %r = call i32 @FC( ) ; <i32> [#uses=1] ret i32 %r } diff --git a/llvm/test/ExecutionEngine/MCJIT/remote/Inputs/multi-module-c.ll b/llvm/test/ExecutionEngine/MCJIT/remote/Inputs/multi-module-c.ll index b39306be9e3..98350a8c106 100644 --- a/llvm/test/ExecutionEngine/MCJIT/remote/Inputs/multi-module-c.ll +++ b/llvm/test/ExecutionEngine/MCJIT/remote/Inputs/multi-module-c.ll @@ -1,4 +1,4 @@ -define i32 @FC() { +define i32 @FC() nounwind { ret i32 0 } diff --git a/llvm/test/ExecutionEngine/MCJIT/remote/cross-module-a.ll b/llvm/test/ExecutionEngine/MCJIT/remote/cross-module-a.ll index 8331ecf93c2..b540bfa3bd6 100644 --- a/llvm/test/ExecutionEngine/MCJIT/remote/cross-module-a.ll +++ b/llvm/test/ExecutionEngine/MCJIT/remote/cross-module-a.ll @@ -2,12 +2,11 @@ declare i32 @FB() -define i32 @FA() { +define i32 @FA() nounwind { ret i32 0 } -define i32 @main() { +define i32 @main() nounwind { %r = call i32 @FB( ) ; <i32> [#uses=1] ret i32 %r } - diff --git a/llvm/test/ExecutionEngine/MCJIT/remote/multi-module-a.ll b/llvm/test/ExecutionEngine/MCJIT/remote/multi-module-a.ll index d04df322cb3..fbbb8bdf4bc 100644 --- a/llvm/test/ExecutionEngine/MCJIT/remote/multi-module-a.ll +++ b/llvm/test/ExecutionEngine/MCJIT/remote/multi-module-a.ll @@ -2,7 +2,7 @@ declare i32 @FB() -define i32 @main() { +define i32 @main() nounwind { %r = call i32 @FB( ) ; <i32> [#uses=1] ret i32 %r } diff --git a/llvm/test/ExecutionEngine/MCJIT/remote/simpletest-remote.ll b/llvm/test/ExecutionEngine/MCJIT/remote/simpletest-remote.ll index ddee861346d..6c8ab3d5369 100644 --- a/llvm/test/ExecutionEngine/MCJIT/remote/simpletest-remote.ll +++ b/llvm/test/ExecutionEngine/MCJIT/remote/simpletest-remote.ll @@ -1,10 +1,10 @@ ; RUN: %lli_mcjit -remote-mcjit -mcjit-remote-process=lli-child-target%exeext %s > /dev/null -define i32 @bar() { +define i32 @bar() nounwind { ret i32 0 } -define i32 @main() { +define i32 @main() nounwind { %r = call i32 @bar( ) ; <i32> [#uses=1] ret i32 %r } diff --git a/llvm/test/ExecutionEngine/MCJIT/remote/test-data-align-remote.ll b/llvm/test/ExecutionEngine/MCJIT/remote/test-data-align-remote.ll index 0c895984231..129350b63eb 100644 --- a/llvm/test/ExecutionEngine/MCJIT/remote/test-data-align-remote.ll +++ b/llvm/test/ExecutionEngine/MCJIT/remote/test-data-align-remote.ll @@ -3,7 +3,7 @@ ; Check that a variable is always aligned as specified. @var = global i32 0, align 32 -define i32 @main() { +define i32 @main() nounwind { %addr = ptrtoint i32* @var to i64 %mask = and i64 %addr, 31 %tst = icmp eq i64 %mask, 0 diff --git a/llvm/test/ExecutionEngine/MCJIT/remote/test-fp-no-external-funcs-remote.ll b/llvm/test/ExecutionEngine/MCJIT/remote/test-fp-no-external-funcs-remote.ll index 5ad71112ae8..8eec0f22988 100644 --- a/llvm/test/ExecutionEngine/MCJIT/remote/test-fp-no-external-funcs-remote.ll +++ b/llvm/test/ExecutionEngine/MCJIT/remote/test-fp-no-external-funcs-remote.ll @@ -1,6 +1,6 @@ ; RUN: %lli_mcjit -remote-mcjit -mcjit-remote-process=lli-child-target%exeext %s > /dev/null -define double @test(double* %DP, double %Arg) { +define double @test(double* %DP, double %Arg) nounwind { %D = load double* %DP ; <double> [#uses=1] %V = fadd double %D, 1.000000e+00 ; <double> [#uses=2] %W = fsub double %V, %V ; <double> [#uses=3] @@ -12,7 +12,7 @@ define double @test(double* %DP, double %Arg) { ret double %Y } -define i32 @main() { +define i32 @main() nounwind { %X = alloca double ; <double*> [#uses=2] store double 0.000000e+00, double* %X call double @test( double* %X, double 2.000000e+00 ) ; <double>:1 [#uses=0] diff --git a/llvm/test/ExecutionEngine/MCJIT/remote/test-global-init-nonzero-remote.ll b/llvm/test/ExecutionEngine/MCJIT/remote/test-global-init-nonzero-remote.ll index b14d80b156a..9fbaeb79449 100644 --- a/llvm/test/ExecutionEngine/MCJIT/remote/test-global-init-nonzero-remote.ll +++ b/llvm/test/ExecutionEngine/MCJIT/remote/test-global-init-nonzero-remote.ll @@ -2,7 +2,7 @@ @count = global i32 1, align 4 -define i32 @main() nounwind uwtable { +define i32 @main() nounwind { entry: %retval = alloca i32, align 4 %i = alloca i32, align 4 |