aboutsummaryrefslogtreecommitdiffstats
path: root/test/CodeGen/X86/2009-05-28-DAGCombineCrash.ll
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2009-05-28 23:52:18 +0000
committerEvan Cheng <evan.cheng@apple.com>2009-05-28 23:52:18 +0000
commitd3c76bb6fc3c066286850e91b8bf03484ea2a56e (patch)
treeddc9f96ae7a0778351a62a3c122511d14e8d304c /test/CodeGen/X86/2009-05-28-DAGCombineCrash.ll
parent2265ba071762b461ed1e65ebd73f596a98208f60 (diff)
downloadexternal_llvm-d3c76bb6fc3c066286850e91b8bf03484ea2a56e.zip
external_llvm-d3c76bb6fc3c066286850e91b8bf03484ea2a56e.tar.gz
external_llvm-d3c76bb6fc3c066286850e91b8bf03484ea2a56e.tar.bz2
Do not try to create a MVT type of width 0.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72557 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/2009-05-28-DAGCombineCrash.ll')
-rw-r--r--test/CodeGen/X86/2009-05-28-DAGCombineCrash.ll38
1 files changed, 38 insertions, 0 deletions
diff --git a/test/CodeGen/X86/2009-05-28-DAGCombineCrash.ll b/test/CodeGen/X86/2009-05-28-DAGCombineCrash.ll
new file mode 100644
index 0000000..7bdfcb3
--- /dev/null
+++ b/test/CodeGen/X86/2009-05-28-DAGCombineCrash.ll
@@ -0,0 +1,38 @@
+; RUN: llvm-as < %s | llc -march=x86-64
+
+ %struct.tempsym_t = type { i8*, i8*, i8*, i8*, i32, i32, i32, i32, i32 }
+
+define fastcc signext i8 @S_next_symbol(%struct.tempsym_t* %symptr) nounwind ssp {
+entry:
+ br label %bb116
+
+bb: ; preds = %bb116
+ switch i8 undef, label %bb14 [
+ i8 9, label %bb116
+ i8 32, label %bb116
+ i8 10, label %bb116
+ i8 13, label %bb116
+ i8 12, label %bb116
+ ]
+
+bb14: ; preds = %bb
+ br i1 undef, label %bb75, label %bb115
+
+bb75: ; preds = %bb14
+ %srcval16 = load i448* null, align 8 ; <i448> [#uses=1]
+ %tmp = zext i32 undef to i448 ; <i448> [#uses=1]
+ %tmp15 = shl i448 %tmp, 288 ; <i448> [#uses=1]
+ %mask = and i448 %srcval16, -2135987035423586845985235064014169866455883682256196619149693890381755748887481053010428711403521 ; <i448> [#uses=1]
+ %ins = or i448 %tmp15, %mask ; <i448> [#uses=1]
+ store i448 %ins, i448* null, align 8
+ ret i8 1
+
+bb115: ; preds = %bb14
+ ret i8 1
+
+bb116: ; preds = %bb, %bb, %bb, %bb, %bb, %entry
+ br i1 undef, label %bb, label %bb117
+
+bb117: ; preds = %bb116
+ ret i8 0
+}