[llvm-commits] CVS: llvm/test/Regression/Transforms/LoopUnswitch/2006-06-27-DeadSwitchCase.ll

Owen Anderson resistor at mac.com
Tue Jun 27 15:25:11 PDT 2006



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

2006-06-27-DeadSwitchCase.ll added (r1.1)
---
Log message:

Testcase that Nate found where LoopUnswitch chokes on eliminating a dead case
from a switch instruction.


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

 2006-06-27-DeadSwitchCase.ll |   31 +++++++++++++++++++++++++++++++
 1 files changed, 31 insertions(+)


Index: llvm/test/Regression/Transforms/LoopUnswitch/2006-06-27-DeadSwitchCase.ll
diff -c /dev/null llvm/test/Regression/Transforms/LoopUnswitch/2006-06-27-DeadSwitchCase.ll:1.1
*** /dev/null	Tue Jun 27 17:25:09 2006
--- llvm/test/Regression/Transforms/LoopUnswitch/2006-06-27-DeadSwitchCase.ll	Tue Jun 27 17:24:59 2006
***************
*** 0 ****
--- 1,31 ----
+ ; RUN: llvm-as < %s | opt -loop-unswitch -disable-output
+ implementation   ; Functions:
+ 
+ void %init_caller_save() {
+ entry:
+ 	br label %cond_true78
+ 
+ cond_next20:		; preds = %cond_true64
+ 	br label %bb31
+ 
+ bb31:		; preds = %cond_true64, %cond_true64, %cond_next20
+ 	%iftmp.29.1 = phi uint [ 0, %cond_next20 ], [ 0, %cond_true64 ], [ 0, %cond_true64 ]		; <uint> [#uses=0]
+ 	br label %bb54
+ 
+ bb54:		; preds = %cond_true78, %bb31
+ 	br bool false, label %bb75, label %cond_true64
+ 
+ cond_true64:		; preds = %bb54
+ 	switch int %i.0.0, label %cond_next20 [
+ 		 int 17, label %bb31
+ 		 int 18, label %bb31
+ 	]
+ 
+ bb75:		; preds = %bb54
+ 	%tmp74.0 = add int %i.0.0, 1		; <int> [#uses=1]
+ 	br label %cond_true78
+ 
+ cond_true78:		; preds = %bb75, %entry
+ 	%i.0.0 = phi int [ 0, %entry ], [ %tmp74.0, %bb75 ]		; <int> [#uses=2]
+ 	br label %bb54
+ }






More information about the llvm-commits mailing list