llvm-6502/lib/Transforms
Chris Lattner 2249a0b1bd Teach jump threading to duplicate small blocks when the branch
condition is a xor with a phi node.  This eliminates nonsense
like this from 176.gcc in several places:

 LBB166_84:
        testl   %eax, %eax
-       setne   %al
-       xorb    %cl, %al
-       notb    %al
-       testb   $1, %al
-       je      LBB166_85
+       je      LBB166_69
+       jmp     LBB166_85

This is rdar://7391699



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93221 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-12 02:07:17 +00:00
..
Hello Fix a bunch of little errors that Clang complains about when its being pedantic 2009-12-19 07:05:23 +00:00
InstCombine reenable the piece that turns trunc(zext(x)) -> x even if zext has multiple uses, 2010-01-11 22:49:40 +00:00
Instrumentation Move remaining stuff to the isInteger predicate. 2010-01-05 21:05:54 +00:00
IPO Be less stingy as to how many selects and phi nodes we 2010-01-07 05:48:42 +00:00
Scalar Teach jump threading to duplicate small blocks when the branch 2010-01-12 02:07:17 +00:00
Utils Fix nondeterministic behavior. 2010-01-10 01:07:22 +00:00
Makefile move instcombine to its own library, it's past time. 2010-01-04 06:23:24 +00:00