[llvm-commits] CVS: llvm/test/Regression/Transforms/SimplifyCFG/switch_formation.ll

Chris Lattner lattner at cs.uiuc.edu
Sat Feb 28 15:31:01 PST 2004


Changes in directory llvm/test/Regression/Transforms/SimplifyCFG:

switch_formation.ll added (r1.1)

---
Log message:

Add a testcase for switch instruction induction


---
Diffs of the changes:  (+36 -0)

Index: llvm/test/Regression/Transforms/SimplifyCFG/switch_formation.ll
diff -c /dev/null llvm/test/Regression/Transforms/SimplifyCFG/switch_formation.ll:1.1
*** /dev/null	Sat Feb 28 15:30:50 2004
--- llvm/test/Regression/Transforms/SimplifyCFG/switch_formation.ll	Sat Feb 28 15:30:39 2004
***************
*** 0 ****
--- 1,36 ----
+ ; RUN: llvm-as < %s | opt -simplifycfg | llvm-dis | not grep 'br'
+ 
+ bool %_ZN4llvm11SetCondInst7classofEPKNS_11InstructionE({uint, uint}* %I) {
+ entry:
+ 	%tmp.1.i = getelementptr {uint, uint}* %I, long 0, ubyte 1
+ 	%tmp.2.i = load uint* %tmp.1.i
+ 	%tmp.2 = seteq uint %tmp.2.i, 14
+ 	br bool %tmp.2, label %shortcirc_done.4, label %shortcirc_next.0
+ 
+ shortcirc_next.0:		; preds = %entry
+ 	%tmp.6 = seteq uint %tmp.2.i, 15		; <bool> [#uses=1]
+ 	br bool %tmp.6, label %shortcirc_done.4, label %shortcirc_next.1
+ 
+ shortcirc_next.1:		; preds = %shortcirc_next.0
+ 	%tmp.11 = seteq uint %tmp.2.i, 16		; <bool> [#uses=1]
+ 	br bool %tmp.11, label %shortcirc_done.4, label %shortcirc_next.2
+ 
+ shortcirc_next.2:		; preds = %shortcirc_next.1
+ 	%tmp.16 = seteq uint %tmp.2.i, 17		; <bool> [#uses=1]
+ 	br bool %tmp.16, label %shortcirc_done.4, label %shortcirc_next.3
+ 
+ shortcirc_next.3:		; preds = %shortcirc_next.2
+ 	%tmp.21 = seteq uint %tmp.2.i, 18		; <bool> [#uses=1]
+ 	br bool %tmp.21, label %shortcirc_done.4, label %shortcirc_next.4
+ 
+ shortcirc_next.4:		; preds = %shortcirc_next.3
+ 	%tmp.26 = seteq uint %tmp.2.i, 19		; <bool> [#uses=1]
+ 	br label %UnifiedReturnBlock
+ 
+ shortcirc_done.4:		; preds = %entry, %shortcirc_next.0, %shortcirc_next.1, %shortcirc_next.2, %shortcirc_next.3
+ 	br label %UnifiedReturnBlock
+ 
+ UnifiedReturnBlock:		; preds = %shortcirc_next.4, %shortcirc_done.4
+ 	%UnifiedRetVal = phi bool [ %tmp.26, %shortcirc_next.4 ], [ true, %shortcirc_done.4 ]		; <bool> [#uses=1]
+ 	ret bool %UnifiedRetVal
+ }





More information about the llvm-commits mailing list