aboutsummaryrefslogtreecommitdiff
path: root/test/ExecutionEngine/test-interp-vec-arithm_float.ll
diff options
context:
space:
mode:
authorNadav Rotem <nrotem@apple.com>2013-04-12 20:45:20 +0000
committerNadav Rotem <nrotem@apple.com>2013-04-12 20:45:20 +0000
commitaffe889d08fe95ab4ef3d818efa1a2a98fd7e736 (patch)
tree07c782c73ac47be9f5a0bba9d3c5189647d7f13d /test/ExecutionEngine/test-interp-vec-arithm_float.ll
parent3f42936af8be447c339a7c41bcd2b1468e39135b (diff)
Add support for additional vector instructions in the interpreter.
patch by Veselov, Yuri <Yuri.Veselov@intel.com>. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179409 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/ExecutionEngine/test-interp-vec-arithm_float.ll')
-rw-r--r--test/ExecutionEngine/test-interp-vec-arithm_float.ll20
1 files changed, 20 insertions, 0 deletions
diff --git a/test/ExecutionEngine/test-interp-vec-arithm_float.ll b/test/ExecutionEngine/test-interp-vec-arithm_float.ll
new file mode 100644
index 0000000000..d7f4ac90a9
--- /dev/null
+++ b/test/ExecutionEngine/test-interp-vec-arithm_float.ll
@@ -0,0 +1,20 @@
+; RUN: %lli %s > /dev/null
+
+
+define i32 @main() {
+
+ %A_float = fadd <4 x float> <float 0.0, float 11.0, float 22.0, float 33.0>, <float 44.0, float 55.0, float 66.0, float 77.0>
+ %B_float = fsub <4 x float> %A_float, <float 88.0, float 99.0, float 100.0, float 111.0>
+ %C_float = fmul <4 x float> %B_float, %B_float
+ %D_float = fdiv <4 x float> %C_float, %B_float
+ %E_float = frem <4 x float> %D_float, %A_float
+
+
+ %A_double = fadd <3 x double> <double 0.0, double 111.0, double 222.0>, <double 444.0, double 555.0, double 665.0>
+ %B_double = fsub <3 x double> %A_double, <double 888.0, double 999.0, double 1001.0>
+ %C_double = fmul <3 x double> %B_double, %B_double
+ %D_double = fdiv <3 x double> %C_double, %B_double
+ %E_double = frem <3 x double> %D_double, %A_double
+
+ ret i32 0
+}