summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2011-06-06 05:46:34 +0000
committerEli Friedman <eli.friedman@gmail.com>2011-06-06 05:46:34 +0000
commit0b4d96baecf3fe6af0fd45ba815bacf91a017f97 (patch)
treeb1eb694fffdd084e178212177a32984e46e54bb3 /test
parenta2898673acd918c766ed94293c77eed29998bee7 (diff)
downloadllvm-0b4d96baecf3fe6af0fd45ba815bacf91a017f97.tar.gz
llvm-0b4d96baecf3fe6af0fd45ba815bacf91a017f97.tar.bz2
llvm-0b4d96baecf3fe6af0fd45ba815bacf91a017f97.tar.xz
PR10077: fix fast-isel of extractvalue of aggregate constants.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132676 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/CodeGen/X86/fast-isel-agg-constant.ll11
1 files changed, 11 insertions, 0 deletions
diff --git a/test/CodeGen/X86/fast-isel-agg-constant.ll b/test/CodeGen/X86/fast-isel-agg-constant.ll
new file mode 100644
index 0000000000..ce0dff75cf
--- /dev/null
+++ b/test/CodeGen/X86/fast-isel-agg-constant.ll
@@ -0,0 +1,11 @@
+; RUN: llc < %s -march=x86-64 -O0 | FileCheck %s
+; Make sure fast-isel doesn't screw up aggregate constants.
+; (Failing out is okay, as long as we don't miscompile.)
+
+%bar = type { i32 }
+
+define i32 @foo() {
+ %tmp = extractvalue %bar { i32 3 }, 0
+ ret i32 %tmp
+; CHECK: movl $3, %eax
+}