llvm-6502/lib
Chris Lattner 8d96964e29 Generalize not and neg comparison testers to allow constant to be considered not'able and neg'able. This
allows optimization of this:
int %test4(int %A, int %B) {
        %a = xor int %A, -1
        %c = and int %a, 5    ; 5 = ~c2
        %d = xor int %c, -1
        ret int %d
}

into this:
int %test4(int %A, int %B) {            ; No predecessors!
        %c.demorgan = or int %A, -6             ; <int> [#uses=1]
        ret int %c.demorgan
}


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5736 91177308-0d34-0410-b5e6-96231b3b80d8
2003-03-10 23:06:50 +00:00
..
Analysis Remove unneccesary forward decl 2003-03-06 16:37:29 +00:00
AsmParser Fix bug: Assembler/2003-03-03-DuplicateConstant.ll 2003-03-03 23:28:55 +00:00
Bytecode Infrastructure for more compact bytecode files and REAL support for versioning 2003-03-06 17:55:45 +00:00
CodeGen Print machine frame objects with the frame offset intrinsic to the machine 2003-01-16 18:35:57 +00:00
ExecutionEngine Fix typeo 2003-02-25 21:14:59 +00:00
Linker * Fix linking of opaque types and their non-opaque versions 2003-01-30 20:53:43 +00:00
Support Make more compatible with GCC 2.96 2003-02-13 16:25:28 +00:00
Target Rename -no-* to -disable-* 2003-02-26 20:00:41 +00:00
Transforms Generalize not and neg comparison testers to allow constant to be considered not'able and neg'able. This 2003-03-10 23:06:50 +00:00
VMCore Fix ConstantUInt::isAllOnesValue 2003-03-10 22:39:02 +00:00
Makefile Compile sub-directories in parallel, because they don't have interdependencies 2002-09-18 03:25:58 +00:00