- Feb 23, 2004
-
-
Alkis Evlogimenos authored
block into MachineBasicBlock::getFirstTerminator(). This also fixes a bug in the implementation of the above in both RegAllocLocal and InstrSched, where instructions where added after the terminator if the basic block's only instruction was a terminator (it shouldn't matter for RegAllocLocal since this case never occurs in practice). llvm-svn: 11748
-
Chris Lattner authored
block we are in might be empty llvm-svn: 11744
-
Chris Lattner authored
eventually get an assignment due to elimination of PHIs. llvm-svn: 11743
-
Chris Lattner authored
llvm-svn: 11742
-
Chris Lattner authored
llvm-svn: 11741
-
Chris Lattner authored
whether this is the sign bit or not, so check unsigned comparisons as well. llvm-svn: 11740
-
Chris Lattner authored
llvm-svn: 11739
-
Alkis Evlogimenos authored
Improved PhysRegTracker interface. RegAlloc lazily allocates the register tracker using a std::auto_ptr llvm-svn: 11738
-
Chris Lattner authored
llvm-svn: 11737
-
Chris Lattner authored
llvm-svn: 11736
-
Chris Lattner authored
llvm-svn: 11735
-
Chris Lattner authored
with "predication" llvm-svn: 11734
-
Chris Lattner authored
llvm-svn: 11733
-
Alkis Evlogimenos authored
Simplify iterator usage now that we have next(). Also don't pass iterators by reference now that MachineInstr* are in an ilist llvm-svn: 11732
-
Chris Lattner authored
llvm-svn: 11731
-
Chris Lattner authored
llvm-svn: 11730
-
Chris Lattner authored
llvm-svn: 11729
-
Chris Lattner authored
llvm-svn: 11728
-
Chris Lattner authored
llvm-svn: 11727
-
Chris Lattner authored
Implement cast Type::ULongTy -> double llvm-svn: 11726
-
Alkis Evlogimenos authored
llvm-svn: 11724
-
Alkis Evlogimenos authored
Fix comments in PhysRegTracker and rename isPhysRegAvail to isRegAvail to be consistent with the other two llvm-svn: 11723
-
Chris Lattner authored
llvm-svn: 11722
-
Alkis Evlogimenos authored
llvm-svn: 11721
-
Alkis Evlogimenos authored
llvm-svn: 11720
-
Alkis Evlogimenos authored
llvm-svn: 11719
-
- Feb 22, 2004
-
-
Chris Lattner authored
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 :) llvm-svn: 11717
-
Chris Lattner authored
llvm-svn: 11716
-
Alkis Evlogimenos authored
switch statements in the constructors and simplifies the implementation of the getUseType() member function. You will have to specify defs using MachineOperand::Def instead of MOTy::Def though (similarly for Use and UseAndDef). llvm-svn: 11715
-
Chris Lattner authored
one terminator instruction in each basic block. llvm-svn: 11714
-
Chris Lattner authored
Also, make an assertion actually fireable! llvm-svn: 11713
-
Chris Lattner authored
AFTER the GEP that was emitted. :( llvm-svn: 11712
-
Alkis Evlogimenos authored
llvm-svn: 11711
-
Chris Lattner authored
(minor) benefits right now: 1. An extra dummy MOVrr32 is gone. This move would often be coallesced by both allocators anyway. 2. The code now uses the gep_type_iterator to walk the gep, which should future proof it a bit. It still assumes that array indexes are Longs though. These don't really justify rewriting the code. The big benefit will come later though. llvm-svn: 11710
-
Alkis Evlogimenos authored
leave register operands with the same use/def flags as the original instruction. llvm-svn: 11709
-
Chris Lattner authored
llvm-svn: 11708
-
Chris Lattner authored
llvm-svn: 11707
-
Chris Lattner authored
llvm-svn: 11706
-
Chris Lattner authored
this should be folded into it. llvm-svn: 11705
-
Alkis Evlogimenos authored
llvm-svn: 11704
-