llvm-6502/lib/Target
Chris Lattner 986618ebc7 Only insert FP_REG_KILL instructions in MachineBasicBlocks that actually
use FP instructions.  This reduces the number of instructions inserted in
176.gcc (for example) from 58074 to 101 (it doesn't use much FP, which
is typical).  This reduction speeds up the entire code generator.  In the
case of 176.gcc, llc went from taking 31.38s to 24.78s.  The passes that
sped up the most are the register allocator and the 2 live variable analysis
passes, which sped up 2.3, 1.3, and 1.5s respectively.  The asmprinter
pass also sped up because it doesn't print the instructions in comments :)

Note that this patch is likely to expose latent bugs in machine code passes,
because now basicblock can be empty, where they were never empty before.  I
cleaned out regalloclocal, but who knows about linscan :)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11717 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-22 19:47:26 +00:00
..
CBackend It is totally unacceptable to print out (literally) millions of zeros when 2004-02-20 05:49:22 +00:00
PowerPC Add back machine code deleter pass until we get a MachineCode pass 2004-02-15 00:03:15 +00:00
SparcV9 Move MOTy::UseType enum into MachineOperand. This eliminates the 2004-02-22 19:23:26 +00:00
X86 Only insert FP_REG_KILL instructions in MachineBasicBlocks that actually 2004-02-22 19:47:26 +00:00
Makefile CBackend now lives here 2004-02-13 23:29:20 +00:00
MRegisterInfo.cpp
Target.td Expose the "Other" value type to tablegen targets 2004-02-11 03:08:45 +00:00
TargetData.cpp Adjust to the changed StructType interface. In particular, getElementTypes() is gone. 2004-02-09 04:37:31 +00:00
TargetInstrInfo.cpp
TargetMachine.cpp
TargetSchedInfo.cpp