[llvm-commits] CVS: llvm/test/Regression/CodeGen/X86/2006-05-08-InstrSched.ll

Evan Cheng evan.cheng at apple.com
Tue May 9 00:20:36 PDT 2006



Changes in directory llvm/test/Regression/CodeGen/X86:

2006-05-08-InstrSched.ll added (r1.1)
---
Log message:

Another instruction scheduling test case

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

 2006-05-08-InstrSched.ll |   22 ++++++++++++++++++++++
 1 files changed, 22 insertions(+)


Index: llvm/test/Regression/CodeGen/X86/2006-05-08-InstrSched.ll
diff -c /dev/null llvm/test/Regression/CodeGen/X86/2006-05-08-InstrSched.ll:1.1
*** /dev/null	Tue May  9 02:20:34 2006
--- llvm/test/Regression/CodeGen/X86/2006-05-08-InstrSched.ll	Tue May  9 02:20:24 2006
***************
*** 0 ****
--- 1,22 ----
+ ; RUN: llvm-as < %s | llc -march=x86 -relocation-model=static -sched-lower-defnuse | not grep 'xorb $16, %cl'
+ 
+ %A = external global ushort*
+ %B = external global uint
+ %C = external global uint
+ 
+ void %test() {
+ 	%tmp = load ushort** %A
+ 	%tmp1 = getelementptr ushort* %tmp, int 1
+ 	%tmp = load ushort* %tmp1
+ 	%tmp3 = cast ushort %tmp to uint
+ 	%tmp = load uint* %B
+ 	%tmp4 = and uint %tmp, 16
+ 	%tmp5 = load uint* %C
+ 	%tmp6 = cast uint %tmp4 to ubyte
+ 	%tmp7 = shl uint %tmp5, ubyte %tmp6
+ 	%tmp9 = xor ubyte %tmp6, 16
+ 	%tmp11 = shr uint %tmp3, ubyte %tmp9
+ 	%tmp12 = or uint %tmp11, %tmp7
+ 	store uint %tmp12, uint* %C
+ 	ret void
+ }






More information about the llvm-commits mailing list