summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2006-05-25 20:21:19 +0000
committerEvan Cheng <evan.cheng@apple.com>2006-05-25 20:21:19 +0000
commit392b821fa4c4435c3e35963e8114a0a203f76696 (patch)
tree6403fd2220e4f6f2faecd388c750801c64a4c648 /test
parent553ef1be94dffdedbc6e1fce9de91f77e5f12b95 (diff)
downloadllvm-392b821fa4c4435c3e35963e8114a0a203f76696.tar.gz
llvm-392b821fa4c4435c3e35963e8114a0a203f76696.tar.bz2
llvm-392b821fa4c4435c3e35963e8114a0a203f76696.tar.xz
New test case. x86 isel was creating a cycle in the DAG.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28477 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/CodeGen/X86/2006-05-25-CycleInDAG.ll21
1 files changed, 21 insertions, 0 deletions
diff --git a/test/CodeGen/X86/2006-05-25-CycleInDAG.ll b/test/CodeGen/X86/2006-05-25-CycleInDAG.ll
new file mode 100644
index 0000000000..44deaeb5bd
--- /dev/null
+++ b/test/CodeGen/X86/2006-05-25-CycleInDAG.ll
@@ -0,0 +1,21 @@
+; RUN: llvm-as < %s | llc -march=x86
+
+int %test() {
+ br bool false, label %cond_next33, label %cond_true12
+
+cond_true12:
+ ret int 0
+
+cond_next33:
+ %tmp44.i = call double %foo( double 0.000000e+00, int 32 )
+ %tmp61.i = load ubyte* null
+ %tmp61.i = cast ubyte %tmp61.i to int
+ %tmp58.i = or int 0, %tmp61.i
+ %tmp62.i = or int %tmp58.i, 0
+ %tmp62.i = cast int %tmp62.i to double
+ %tmp64.i = add double %tmp62.i, %tmp44.i
+ %tmp68.i = call double %foo( double %tmp64.i, int 0 )
+ ret int 0
+}
+
+declare double %foo(double, int)