diff test/Analysis/BasicAA/2003-05-21-GEP-Problem.ll @ 0:95c75e76d11b LLVM3.4

LLVM 3.4
author Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
date Thu, 12 Dec 2013 13:56:28 +0900
parents
children afa8332a0e37
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/Analysis/BasicAA/2003-05-21-GEP-Problem.ll	Thu Dec 12 13:56:28 2013 +0900
@@ -0,0 +1,21 @@
+; RUN: opt < %s -basicaa -licm -disable-output
+	%struct..apr_array_header_t = type { i32*, i32, i32, i32, i8* }
+	%struct..apr_table_t = type { %struct..apr_array_header_t, i32, [32 x i32], [32 x i32] }
+
+define void @table_reindex(%struct..apr_table_t* %t.1) {		; No predecessors!
+	br label %loopentry
+
+loopentry:		; preds = %0, %no_exit
+	%tmp.101 = getelementptr %struct..apr_table_t* %t.1, i64 0, i32 0, i32 2
+	%tmp.11 = load i32* %tmp.101		; <i32> [#uses=0]
+	br i1 false, label %no_exit, label %UnifiedExitNode
+
+no_exit:		; preds = %loopentry
+	%tmp.25 = sext i32 0 to i64		; <i64> [#uses=1]
+	%tmp.261 = getelementptr %struct..apr_table_t* %t.1, i64 0, i32 3, i64 %tmp.25		; <i32*> [#uses=1]
+	store i32 0, i32* %tmp.261
+	br label %loopentry
+
+UnifiedExitNode:		; preds = %loopentry
+	ret void
+}