| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
MachineMemOperands. The pools are owned by MachineFunctions.
This drastically reduces the number of calls to malloc/free made
during the "Emit" phase of scheduling, as well as later phases
in CodeGen. Combined with other changes, this speeds up the
"instruction selection" phase of CodeGen by 10% in some cases.
llvm-svn: 53212
|
|
|
|
|
|
|
|
| |
propagate kill / dead markers as new instructions are constructed in foldMemoryOperand, convertToThressAddress, etc.
- Also remove LiveVariables::instructionChanged, etc. Replace all calls with cheaper calls which update VarInfo kill list.
llvm-svn: 53097
|
|
|
|
| |
llvm-svn: 52479
|
|
|
|
|
|
|
|
|
|
|
| |
address of the PassInfo directly instead of calling getPassInfo.
This eliminates a bunch of dynamic initializations of static data.
Also, fold RegisterPassBase into PassInfo, make a bunch of its
data members const, and rearrange some code to initialize data
members in constructors instead of using setter member functions.
llvm-svn: 51022
|
|
|
|
|
|
|
| |
several things that were neither in an anonymous namespace nor static
but not intended to be global.
llvm-svn: 51017
|
|
|
|
|
|
| |
changes that don't change functionality.
llvm-svn: 51004
|
|
|
|
|
|
| |
implicit_def instead of a copy.
llvm-svn: 50927
|
|
|
|
|
|
| |
implicit_def instead of a copy.
llvm-svn: 49543
|
|
|
|
|
|
| |
(performace) issues.
llvm-svn: 49198
|
|
|
|
|
|
|
|
| |
rather than copying it.
- Be (slightly) smarter about where to place the copies.
llvm-svn: 49165
|
|
|
|
| |
llvm-svn: 49099
|
|
|
|
|
|
| |
findRegisterUseOperandIdx, findRegisterDefOperandIndx. Fix some naming inconsistencies.
llvm-svn: 47927
|
|
|
|
| |
llvm-svn: 46930
|
|
|
|
|
|
| |
MachineRegisterInfo instead.
llvm-svn: 46016
|
|
|
|
|
|
| |
preserved.
llvm-svn: 45596
|
|
|
|
|
|
| |
Machine-level API cleanup instigated by Chris.
llvm-svn: 45470
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
that "machine" classes are used to represent the current state of
the code being compiled. Given this expanded name, we can start
moving other stuff into it. For now, move the UsedPhysRegs and
LiveIn/LoveOuts vectors from MachineFunction into it.
Update all the clients to match.
This also reduces some needless #includes, such as MachineModuleInfo
from MachineFunction.
llvm-svn: 45467
|
|
|
|
|
|
|
|
|
|
|
|
| |
e.g. MO.isMBB() instead of MO.isMachineBasicBlock(). I don't plan on
switching everything over, so new clients should just start using the
shorter names.
Remove old long accessors, switching everything over to use the short
accessor: getMachineBasicBlock() -> getMBB(),
getConstantPoolIndex() -> getIndex(), setMachineBasicBlock -> setMBB(), etc.
llvm-svn: 45464
|
|
|
|
| |
llvm-svn: 45418
|
|
|
|
| |
llvm-svn: 43866
|
|
|
|
|
|
| |
Tested with "make check"!
llvm-svn: 42346
|
|
|
|
| |
llvm-svn: 36873
|
|
|
|
| |
llvm-svn: 36662
|
|
|
|
|
|
|
| |
Due to darwin gcc bug, one version of darwin linker coalesces
static const int, which defauts PassID based pass identification.
llvm-svn: 36652
|
|
|
|
| |
llvm-svn: 36632
|
|
|
|
| |
llvm-svn: 36250
|
|
|
|
| |
llvm-svn: 36233
|
|
|
|
| |
llvm-svn: 35140
|
|
|
|
| |
llvm-svn: 33749
|
|
|
|
| |
llvm-svn: 32698
|
|
|
|
|
|
| |
is 'unsigned'.
llvm-svn: 32279
|
|
|
|
|
|
|
|
|
|
| |
with our English dead."
No! Really! Serious this time...It was how the vreg uses were being
adjusted that was causing hte Olden tests to fail. I corrected this and
the Olden and Regression tests all passed.
llvm-svn: 30644
|
|
|
|
|
|
| |
in olden among others.
llvm-svn: 30637
|
|
|
|
| |
llvm-svn: 30634
|
|
|
|
|
|
| |
has disappeared.
llvm-svn: 30633
|
|
|
|
| |
llvm-svn: 30628
|
|
|
|
|
|
|
|
| |
a function, do it up front in linear time (going through all of the
instructions once). We create a map out of them. Then it's no problem to
use the information in it during elimination...
llvm-svn: 30624
|
|
|
|
| |
llvm-svn: 29911
|
|
|
|
| |
llvm-svn: 29648
|
|
|
|
| |
llvm-svn: 29220
|
|
|
|
|
|
| |
dropped. This shrinks libllvmgcc.dylib another 67K
llvm-svn: 28975
|
|
|
|
|
|
|
|
|
| |
use virtual registers. We now allow the first instruction in a block of
terminators to use virtual registers, and update phi elimination to correctly
update livevar when eliminating phi's. This fixes a problem on a testcase
Andrew sent me.
llvm-svn: 25083
|
|
|
|
|
|
| |
don't help anyone)
llvm-svn: 25081
|
|
|
|
| |
llvm-svn: 23609
|
|
|
|
| |
llvm-svn: 23606
|
|
|
|
| |
llvm-svn: 22992
|
|
|
|
|
|
| |
* Remove commented-out debug printouts
llvm-svn: 21707
|
|
|
|
| |
llvm-svn: 21439
|
|
|
|
| |
llvm-svn: 21420
|
|
|
|
|
|
|
|
| |
Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.
llvm-svn: 16137
|