summaryrefslogtreecommitdiff
path: root/test/ExecutionEngine/test-fp-no-external-funcs.ll
diff options
context:
space:
mode:
authorEli Bendersky <eli.bendersky@intel.com>2012-01-17 09:14:54 +0000
committerEli Bendersky <eli.bendersky@intel.com>2012-01-17 09:14:54 +0000
commita7f99f28a71635e83d85c68c47ca0fc20ec68400 (patch)
treef4fefe779a5038b141033a1b3dbcd2311b3f2d0b /test/ExecutionEngine/test-fp-no-external-funcs.ll
parent0b94b5f52b11092a69267159dfe0df3acdfcabd7 (diff)
downloadllvm-a7f99f28a71635e83d85c68c47ca0fc20ec68400.tar.gz
llvm-a7f99f28a71635e83d85c68c47ca0fc20ec68400.tar.bz2
llvm-a7f99f28a71635e83d85c68c47ca0fc20ec68400.tar.xz
Additional ExecutionEngine tests, as part of bringing up the MCJIT on ELF
implementation. Currently lit still executes ExecutionEngine tests with JIT (not MCJIT) by default. MCJIT tests can be executed manually by calling llvm-lit with --param jit_impl=mcjit git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148299 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/ExecutionEngine/test-fp-no-external-funcs.ll')
-rw-r--r--test/ExecutionEngine/test-fp-no-external-funcs.ll22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/ExecutionEngine/test-fp-no-external-funcs.ll b/test/ExecutionEngine/test-fp-no-external-funcs.ll
new file mode 100644
index 0000000000..6b8410a225
--- /dev/null
+++ b/test/ExecutionEngine/test-fp-no-external-funcs.ll
@@ -0,0 +1,22 @@
+; RUN: %lli %s > /dev/null
+; XFAIL: mcjit
+
+define double @test(double* %DP, double %Arg) {
+ %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]
+ %X = fmul double %W, %W ; <double> [#uses=2]
+ %Y = fdiv double %X, %X ; <double> [#uses=2]
+ %Q = fadd double %Y, %Arg ; <double> [#uses=1]
+ %R = bitcast double %Q to double ; <double> [#uses=1]
+ store double %Q, double* %DP
+ ret double %Y
+}
+
+define i32 @main() {
+ %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]
+ ret i32 0
+}
+