llvm-6502/lib
Chris Lattner e7f96c515e Substantially improve the code generated by non-folded setcc instructions.
In particular, instead of compiling this:

bool %test(int %A, int %B) {
  %C = setlt int %A, %B
  ret bool %C
}

to this:

test:
        save %sp, -96, %sp
        subcc %i0, %i1, %g0
        bl .LBBtest_1   !
        nop
        ba .LBBtest_2   !
        nop
.LBBtest_1:     !
        or %g0, 1, %i0
        ba .LBBtest_3   !
        nop
.LBBtest_2:     !
        or %g0, 0, %i0
        ba .LBBtest_3   !
        nop
.LBBtest_3:     !
        restore %g0, %g0, %g0
        retl
        nop

We now compile it to this:

test:
        save %sp, -96, %sp
        subcc %i0, %i1, %g0
        or %g0, 1, %i0
        bl .LBBtest_2   !
        nop
.LBBtest_1:     !
        or %g0, %g0, %i0
.LBBtest_2:     !
        restore %g0, %g0, %g0
        retl
        nop


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19213 91177308-0d34-0410-b5e6-96231b3b80d8
2005-01-01 16:06:57 +00:00
..
Analysis Wrap at 80 cols 2004-12-23 21:17:41 +00:00
Archive Remove potential platform portability issue with size of "int". 2004-12-29 01:20:24 +00:00
AsmParser Do not allow empty label names. 2004-12-10 05:40:19 +00:00
Bytecode Remove potential platform portability issue with size of "int". 2004-12-29 01:20:24 +00:00
CodeGen Move virtual method call out of loop 2004-12-15 07:04:32 +00:00
Debugger Correct the comments and file header. 2004-12-23 21:16:46 +00:00
ExecutionEngine Be double sure about including sys/stat.h by wrapping the inclusion in 2004-12-20 06:34:02 +00:00
Linker Remove un-needed #includes. 2004-12-20 04:15:44 +00:00
Support Fix a bug that made the nightly tester *really* slow. During changes for 2004-12-27 08:03:04 +00:00
System Where do these tabs keep coming from??? 2004-12-31 19:03:31 +00:00
Target Substantially improve the code generated by non-folded setcc instructions. 2005-01-01 16:06:57 +00:00
Transforms Implement SimplifyCFG/DeadSetCC.ll 2005-01-01 16:02:12 +00:00
VMCore Allow getZeroExtend and getSignExtend to work with boolean inputs. 2005-01-01 15:59:57 +00:00
Makefile Add the Linker library 2004-11-14 21:54:41 +00:00