[llvm-commits] CVS: llvm/test/Regression/Transforms/GlobalOpt/integer-bool.ll

Chris Lattner lattner at cs.uiuc.edu
Sat Dec 11 21:52:27 PST 2004



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

integer-bool.ll added (r1.1)
---
Log message:

New testcase.  Shrinking the variable to a bool allows instcombine to delete
the condition.


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

Index: llvm/test/Regression/Transforms/GlobalOpt/integer-bool.ll
diff -c /dev/null llvm/test/Regression/Transforms/GlobalOpt/integer-bool.ll:1.1
*** /dev/null	Sat Dec 11 23:52:22 2004
--- llvm/test/Regression/Transforms/GlobalOpt/integer-bool.ll	Sat Dec 11 23:52:12 2004
***************
*** 0 ****
--- 1,22 ----
+ ; RUN: llvm-as < %s | opt -globalopt -instcombine | llvm-dis | grep 'ret bool true'
+ 
+ ;; check that global opt turns integers that only hold 0 or 1 into bools.
+ 
+ %G = internal global int 0    ;; This only holds 0 or 1.
+ 
+ implementation
+ 
+ void %set1() {
+ 	store int 0, int* %G
+ 	ret void
+ }
+ void %set2() {
+ 	store int 1, int* %G
+ 	ret void
+ }
+ 
+ bool %get() {
+ 	%A = load int* %G
+ 	%C = setlt int %A, 2  ;; always true
+ 	ret bool %C
+ }






More information about the llvm-commits mailing list