testcase, ensure this never breaks.
authorChris Lattner <sabre@nondot.org>
Wed, 6 Sep 2006 21:54:59 +0000 (21:54 +0000)
committerChris Lattner <sabre@nondot.org>
Wed, 6 Sep 2006 21:54:59 +0000 (21:54 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30137 91177308-0d34-0410-b5e6-96231b3b80d8

test/CodeGen/X86/test-load-fold.ll [new file with mode: 0644]

diff --git a/test/CodeGen/X86/test-load-fold.ll b/test/CodeGen/X86/test-load-fold.ll
new file mode 100644 (file)
index 0000000..5d2d286
--- /dev/null
@@ -0,0 +1,29 @@
+; RUN: llvm-as < %s | llc
+       %struct._obstack_chunk = type { sbyte*, %struct._obstack_chunk*, [4 x sbyte] }
+       %struct.obstack = type { int, %struct._obstack_chunk*, sbyte*, sbyte*, sbyte*, int, int, %struct._obstack_chunk* (...)*, void (...)*, sbyte*, ubyte }
+%stmt_obstack = external global %struct.obstack                ; <%struct.obstack*> [#uses=1]
+
+implementation   ; Functions:
+
+void %expand_start_bindings() {
+entry:
+       br bool false, label %cond_true, label %cond_next
+
+cond_true:             ; preds = %entry
+       %new_size.0.i = select bool false, int 0, int 0         ; <int> [#uses=1]
+       %tmp.i = load uint* cast (ubyte* getelementptr (%struct.obstack* %stmt_obstack, int 0, uint 10) to uint*)               ; <uint> [#uses=1]
+       %tmp.i = cast uint %tmp.i to ubyte              ; <ubyte> [#uses=1]
+       %tmp21.i = and ubyte %tmp.i, 1          ; <ubyte> [#uses=1]
+       %tmp22.i = seteq ubyte %tmp21.i, 0              ; <bool> [#uses=1]
+       br bool %tmp22.i, label %cond_false30.i, label %cond_true23.i
+
+cond_true23.i:         ; preds = %cond_true
+       ret void
+
+cond_false30.i:                ; preds = %cond_true
+       %tmp35.i = tail call %struct._obstack_chunk* null( int %new_size.0.i )          ; <%struct._obstack_chunk*> [#uses=0]
+       ret void
+
+cond_next:             ; preds = %entry
+       ret void
+}