[llvm-commits] CVS: llvm/test/Regression/Transforms/DeadArgElim/deadretval.ll deadretval2.ll

Chris Lattner lattner at cs.uiuc.edu
Wed Oct 22 17:35:01 PDT 2003


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

deadretval.ll added (r1.1)
deadretval2.ll added (r1.1)

---
Log message:

New testcase for the deadreturnvalue deletion extension to -deadargelim


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

Index: llvm/test/Regression/Transforms/DeadArgElim/deadretval.ll
diff -c /dev/null llvm/test/Regression/Transforms/DeadArgElim/deadretval.ll:1.1
*** /dev/null	Wed Oct 22 17:34:10 2003
--- llvm/test/Regression/Transforms/DeadArgElim/deadretval.ll	Wed Oct 22 17:33:59 2003
***************
*** 0 ****
--- 1,19 ----
+ ; RUN: llvm-as < %s | opt -deadargelim | llvm-dis | not grep DEAD
+ 
+ implementation
+ 
+ internal int %test(int %DEADARG) {  ; Dead arg only used by dead retval
+ 	ret int %DEADARG
+ }
+ 
+ int %test2(int %A) {
+ 	%DEAD = call int %test(int %A)
+ 	ret int 123
+ }
+ 
+ int %test3() {
+ 	%X = call int %test2(int 3232)
+ 	%Y = add int %X, -123
+ 	ret int %Y
+ }
+ 


Index: llvm/test/Regression/Transforms/DeadArgElim/deadretval2.ll
diff -c /dev/null llvm/test/Regression/Transforms/DeadArgElim/deadretval2.ll:1.1
*** /dev/null	Wed Oct 22 17:34:10 2003
--- llvm/test/Regression/Transforms/DeadArgElim/deadretval2.ll	Wed Oct 22 17:33:59 2003
***************
*** 0 ****
--- 1,36 ----
+ ; RUN: llvm-as < %s | opt -deadargelim -die | llvm-dis | not grep DEAD
+ 
+ %P = external global int 
+ 
+ implementation
+ 
+ 
+ internal int %test(int %DEADARG) {  ; Dead arg only used by dead retval
+         ret int %DEADARG
+ }
+ 
+ internal int %test2(int %DEADARG) {
+ 	%DEADRETVAL = call int %test(int %DEADARG)
+ 	ret int %DEADRETVAL
+ }
+ 
+ void %test3(int %X) {
+ 	%DEADRETVAL = call int %test2(int %X)
+ 	ret void
+ }
+ 
+ internal int %foo() {
+ 	%DEAD = load int* %P
+ 	ret int %DEAD
+ }
+ 
+ internal int %id(int %X) {
+ 	ret int %X
+ }
+ 
+ void %test4() {
+ 	%DEAD = call int %foo()
+ 	%DEAD2 = call int %id(int %DEAD)
+ 	ret void
+ }
+ 	





More information about the llvm-commits mailing list