[llvm-commits] CVS: llvm/test/Regression/Transforms/Inline/casts.ll

Reid Spencer reid at x10sys.com
Sun Nov 26 17:06:25 PST 2006



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

casts.ll added (r1.1)
---
Log message:

For PR950: http://llvm.org/PR950 :
The long awaited CAST patch. This introduces 12 new instructions into LLVM
to replace the cast instruction. Corresponding changes throughout LLVM are
provided. This passes llvm-test, llvm/test, and SPEC CPUINT2000 with the
exception of 175.vpr which fails only on a slight floating point output
difference.


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

 casts.ll |   20 ++++++++++++++++++++
 1 files changed, 20 insertions(+)


Index: llvm/test/Regression/Transforms/Inline/casts.ll
diff -c /dev/null llvm/test/Regression/Transforms/Inline/casts.ll:1.1
*** /dev/null	Sun Nov 26 19:05:21 2006
--- llvm/test/Regression/Transforms/Inline/casts.ll	Sun Nov 26 19:05:10 2006
***************
*** 0 ****
--- 1,20 ----
+ ; RUN: llvm-as < %s | opt -inline | llvm-dis | grep 'ret int 1'
+ ; ModuleID = 'short.opt.bc'
+ 
+ implementation   ; Functions:
+ 
+ int %testBool(bool %X) {
+ 	%tmp = zext bool %X to int		; <int> [#uses=1]
+ 	ret int %tmp
+ }
+ 
+ int %testByte(sbyte %X) {
+ 	%tmp = setne sbyte %X, 0		; <bool> [#uses=1]
+ 	%tmp.i = zext bool %tmp to int		; <int> [#uses=1]
+ 	ret int %tmp.i
+ }
+ 
+ int %main() {
+         %rslt = call int %testByte( sbyte 123)
+ 	ret int %rslt
+ }






More information about the llvm-commits mailing list