[llvm-commits] CVS: llvm/test/Regression/CodeGen/X86/2006-10-10-FindModifiedNodeSlotBug.ll

Evan Cheng evan.cheng at apple.com
Wed Oct 11 00:01:51 PDT 2006



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

2006-10-10-FindModifiedNodeSlotBug.ll added (r1.1)
---
Log message:

Test case for the recently fixed FindModifiedNodeSlot bug.

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

 2006-10-10-FindModifiedNodeSlotBug.ll |   31 +++++++++++++++++++++++++++++++
 1 files changed, 31 insertions(+)


Index: llvm/test/Regression/CodeGen/X86/2006-10-10-FindModifiedNodeSlotBug.ll
diff -c /dev/null llvm/test/Regression/CodeGen/X86/2006-10-10-FindModifiedNodeSlotBug.ll:1.1
*** /dev/null	Wed Oct 11 02:01:47 2006
--- llvm/test/Regression/CodeGen/X86/2006-10-10-FindModifiedNodeSlotBug.ll	Wed Oct 11 02:01:37 2006
***************
*** 0 ****
--- 1,31 ----
+ ; RUN: llvm-as < %s | llc -march=x86 | grep shrl
+ ; Bug in FindModifiedNodeSlot cause tmp14 load to become a zextload and shr 31
+ ; is then optimized away.
+ 
+ %tree_code_type = external global [0 x uint]
+ 
+ void %copy_if_shared_r() {
+ 	%tmp = load uint* null
+ 	%tmp56 = and uint %tmp, 255
+ 	%tmp8 = getelementptr [0 x uint]* %tree_code_type, int 0, uint %tmp56
+ 	%tmp9 = load uint* %tmp8
+ 	%tmp10 = add uint %tmp9, 4294967295
+ 	%tmp = setgt uint %tmp10, 2
+ 	%tmp14 = load uint* null
+ 	%tmp15 = shr uint %tmp14, ubyte 31
+ 	%tmp15 = cast uint %tmp15 to ubyte
+ 	%tmp16 = setne ubyte %tmp15, 0
+ 	br bool %tmp, label %cond_false25, label %cond_true
+ 
+ cond_true:
+ 	br bool %tmp16, label %cond_true17, label %cond_false
+ 
+ cond_true17:
+ 	ret void
+ 
+ cond_false:
+ 	ret void
+ 
+ cond_false25:
+ 	ret void
+ }






More information about the llvm-commits mailing list