aboutsummaryrefslogtreecommitdiffstats
path: root/test/ExecutionEngine
diff options
context:
space:
mode:
authorElena Demikhovsky <elena.demikhovsky@intel.com>2013-09-12 10:52:03 +0000
committerElena Demikhovsky <elena.demikhovsky@intel.com>2013-09-12 10:52:03 +0000
commit19aa26dbb796e50272d7e07b771f6f8a3dd7d8b8 (patch)
tree1052fdf36038fef2074c88349e9912f4b979d8f7 /test/ExecutionEngine
parent3c5ce29cad9b8fab1a280ffd3bd1dbdb4b53ff5e (diff)
downloadexternal_llvm-19aa26dbb796e50272d7e07b771f6f8a3dd7d8b8.zip
external_llvm-19aa26dbb796e50272d7e07b771f6f8a3dd7d8b8.tar.gz
external_llvm-19aa26dbb796e50272d7e07b771f6f8a3dd7d8b8.tar.bz2
LLVM interpreter: added a test for insert- extract- value
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190600 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/ExecutionEngine')
-rw-r--r--test/ExecutionEngine/test-interp-vec-insertextractvalue.ll21
1 files changed, 21 insertions, 0 deletions
diff --git a/test/ExecutionEngine/test-interp-vec-insertextractvalue.ll b/test/ExecutionEngine/test-interp-vec-insertextractvalue.ll
new file mode 100644
index 0000000..09fbf6a
--- /dev/null
+++ b/test/ExecutionEngine/test-interp-vec-insertextractvalue.ll
@@ -0,0 +1,21 @@
+ ; RUN: %lli -force-interpreter=true %s > /dev/null
+
+define i32 @main() {
+
+ %s1 = insertvalue { i32, { float, double} } undef, i32 9, 0
+ %s2 = insertvalue { i32, { float, double} } %s1, float 3.0, 1, 0
+ %s3 = insertvalue { i32, { float, double} } %s2, double 5.0, 1, 1
+
+ %s4 = extractvalue { i32, { float, double} } %s3, 1
+
+ %a1 = extractvalue { i32, { float, double} } %s3, 0
+
+ %a2 = extractvalue { i32, { float, double} } %s3, 1, 0
+ %a3 = extractvalue { i32, { float, double} } %s3, 1, 1
+ %a4 = extractvalue { float, double} %s4, 0
+ %a5 = extractvalue { float, double} %s4, 1
+
+ %aa = fpext float %a4 to double
+
+ ret i32 0
+}