llvm-6502/lib
Chris Lattner f523d06816 Be more careful about the order we put stuff onto the worklist. This allow us to
collapse this:
bool %le(int %A, int %B) {
        %c1 = setgt int %A, %B
        %tmp = select bool %c1, int 1, int 0
        %c2 = setlt int %A, %B
        %result = select bool %c2, int -1, int %tmp
        %c3 = setle int %result, 0
        ret bool %c3
}

into:

bool %le(int %A, int %B) {
        %c3 = setle int %A, %B          ; <bool> [#uses=1]
        ret bool %c3
}

which is handy, because the Java FE makes these sequences all over the place.

This is tested as: test/Regression/Transforms/InstCombine/JavaCompare.ll


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14086 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 05:08:07 +00:00
..
Analysis Don't grab the condition of unconditional branches! 2004-06-08 21:50:30 +00:00
Archive Use the new FileUtilities.h API for mapping a file into an address 2004-05-28 00:24:41 +00:00
AsmParser Remove some more dead code resulting from adding setTypeName(). 2004-05-28 00:21:06 +00:00
Bytecode Cleaned up a dead header file to prevent duplicate definition warnings 2004-06-09 04:38:34 +00:00
CodeGen Remove an unused variable. 2004-06-05 01:05:19 +00:00
Debugger
ExecutionEngine Implement PR315: abort, don't warn, when missing external functions encountered 2004-06-01 21:49:00 +00:00
Linker Move some functions out of gccld.cpp to GenerateCode.cpp. This allows us 2004-06-02 00:22:24 +00:00
Support Make all of this functionality work directly on win32. Properly conditionalize 2004-06-07 19:37:24 +00:00
Target Fix a minor bug in the map - since this pass adds a global symbol, it must be 2004-06-08 20:08:30 +00:00
Transforms Be more careful about the order we put stuff onto the worklist. This allow us to 2004-06-09 05:08:07 +00:00
VMCore Workaround or a VS miscompilation bug 2004-06-08 23:21:39 +00:00
Makefile