summaryrefslogtreecommitdiffstats
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
commitc2293fc7f276d8e237ef82f164016e7be7a0a6cd (patch)
treef53c1a2d77164e7174931e8d1a9b9f99b1e2cb53
parent8e97f0164d40d45039745efd58eaa82452ec8439 (diff)
downloadbcm5719-llvm-c2293fc7f276d8e237ef82f164016e7be7a0a6cd.tar.gz
bcm5719-llvm-c2293fc7f276d8e237ef82f164016e7be7a0a6cd.zip
LLVM interpreter: added a test for insert- extract- value
llvm-svn: 190600
-rw-r--r--llvm/test/ExecutionEngine/test-interp-vec-insertextractvalue.ll21
1 files changed, 21 insertions, 0 deletions
diff --git a/llvm/test/ExecutionEngine/test-interp-vec-insertextractvalue.ll b/llvm/test/ExecutionEngine/test-interp-vec-insertextractvalue.ll
new file mode 100644
index 00000000000..09fbf6abc3f
--- /dev/null
+++ b/llvm/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
+}
OpenPOWER on IntegriCloud