#
3fcd946c |
| 04-Mar-2008 |
Bill Wendling <isanbard@gmail.com> |
Removed spurious EnablePPCRS check.
llvm-svn: 47918
|
#
1af20ad3 |
| 04-Mar-2008 |
Bill Wendling <isanbard@gmail.com> |
Use a command-line option to turn register scavenging on/off for PPC.
llvm-svn: 47915
|
#
632ea650 |
| 03-Mar-2008 |
Bill Wendling <isanbard@gmail.com> |
This is the initial check-in for adding register scavenging to PPC. (Currently, PPC-64 doesn't work.) This also lowers the spilling of the CR registers so that it uses a register other than the defau
This is the initial check-in for adding register scavenging to PPC. (Currently, PPC-64 doesn't work.) This also lowers the spilling of the CR registers so that it uses a register other than the default R0 register (the scavenger scrounges for one). A significant part of this patch fixes how kill information is handled.
llvm-svn: 47863
show more ...
|
#
d973e836 |
| 13-Feb-2008 |
Chris Lattner <sabre@nondot.org> |
Fix the PPC JIT regressions by encoding zeroreg as 0 for BLR.
llvm-svn: 47067
|
Revision tags: llvmorg-2.2.0 |
|
#
3a4be0fd |
| 10-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Rename MRegisterInfo to TargetRegisterInfo.
llvm-svn: 46930
|
#
d6e44ab5 |
| 01-Feb-2008 |
Evan Cheng <evan.cheng@apple.com> |
Remove the nasty LABEL hack with a much less evil one. Now llvm.dbg.func.start implies a stoppoint is set. SelectionDAGISel records a new source line but does not create a ISD::LABEL node for this sp
Remove the nasty LABEL hack with a much less evil one. Now llvm.dbg.func.start implies a stoppoint is set. SelectionDAGISel records a new source line but does not create a ISD::LABEL node for this special stoppoint. Asm printer will magically print this label. This ensures nothing is emitted before.
llvm-svn: 46635
show more ...
|
#
1c6c16ea |
| 31-Jan-2008 |
Evan Cheng <evan.cheng@apple.com> |
Add an extra operand to LABEL nodes which distinguishes between debug, EH, or misc labels. This fixes the EH breakage. However I am not convinced this is *the* solution.
llvm-svn: 46609
|
#
3c0486fb |
| 31-Jan-2008 |
Evan Cheng <evan.cheng@apple.com> |
Makes the same change in ppc backend: avoid inserting prologue before debug labels.
llvm-svn: 46596
|
#
59687511 |
| 11-Jan-2008 |
Chris Lattner <sabre@nondot.org> |
rename MachineInstr::setInstrDescriptor -> setDesc
llvm-svn: 45871
|
#
03ad8850 |
| 07-Jan-2008 |
Chris Lattner <sabre@nondot.org> |
rename TargetInstrDescriptor -> TargetInstrDesc. Make MachineInstr::getDesc return a reference instead of a pointer, since it can never be null.
llvm-svn: 45695
|
#
b0d06b43 |
| 07-Jan-2008 |
Chris Lattner <sabre@nondot.org> |
Move a bunch more accessors from TargetInstrInfo to TargetInstrDescriptor
llvm-svn: 45680
|
#
2a3be7bb |
| 07-Jan-2008 |
Owen Anderson <resistor@mac.com> |
Move even more functionality from MRegisterInfo into TargetInstrInfo.
Some day I'll get it all moved over...
llvm-svn: 45672
|
#
eee14601 |
| 01-Jan-2008 |
Owen Anderson <resistor@mac.com> |
Move some more instruction creation methods from RegisterInfo into InstrInfo.
llvm-svn: 45484
|
#
7a73ae9a |
| 31-Dec-2007 |
Owen Anderson <resistor@mac.com> |
Move copyRegToReg from MRegisterInfo to TargetInstrInfo. This is part of the Machine-level API cleanup instigated by Chris.
llvm-svn: 45470
|
#
a10fff51 |
| 31-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
Rename SSARegMap -> MachineRegisterInfo in keeping with the idea that "machine" classes are used to represent the current state of the code being compiled. Given this expanded name, we can start m
Rename SSARegMap -> MachineRegisterInfo in keeping with the idea 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
show more ...
|
#
a5bb370a |
| 30-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
Add new shorter predicates for testing machine operands for various types: e.g. MO.isMBB() instead of MO.isMachineBasicBlock(). I don't plan on switching everything over, so new clients should jus
Add new shorter predicates for testing machine operands for various types: 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
show more ...
|
#
5c463781 |
| 30-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
Use MachineOperand::getImm instead of MachineOperand::getImmedValue. Likewise setImmedValue -> setImm
llvm-svn: 45453
|
#
f3ebc3f3 |
| 29-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
Remove attribution from file headers, per discussion on llvmdev.
llvm-svn: 45418
|
#
f47015bc |
| 08-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
Fix a significant code quality regression I introduced on PPC64 quite a while ago. We now produce:
_foo: mflr r0 std r0, 16(r1) ld r2, 16(r1) std r2, 0(r3) ld r0, 16(r1) mtlr r0 blr
inste
Fix a significant code quality regression I introduced on PPC64 quite a while ago. We now produce:
_foo: mflr r0 std r0, 16(r1) ld r2, 16(r1) std r2, 0(r3) ld r0, 16(r1) mtlr r0 blr
instead of:
_foo: mflr r0 std r0, 16(r1) lis r0, 0 ori r0, r0, 16 ldx r2, r1, r0 std r2, 0(r3) ld r0, 16(r1) mtlr r0 blr
for:
void foo(void **X) { *X = __builtin_return_address(0); }
on ppc64.
llvm-svn: 44701
show more ...
|
#
f6a8156e |
| 08-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
implement __builtin_return_addr(0) on ppc.
llvm-svn: 44700
|
#
a6c8297e |
| 08-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
refactor some code to avoid overloading the name 'usesLR' in different places to mean different things. Document what the one in PPCFunctionInfo means and when it is valid.
llvm-svn: 44699
|
#
ab87e735 |
| 08-Dec-2007 |
Evan Cheng <evan.cheng@apple.com> |
Fix a compilation warning.
llvm-svn: 44691
|
#
3b8a6744 |
| 05-Dec-2007 |
Evan Cheng <evan.cheng@apple.com> |
Added canFoldMemoryOperand for PPC.
llvm-svn: 44623
|
#
bb263018 |
| 05-Dec-2007 |
Evan Cheng <evan.cheng@apple.com> |
Add a argument to storeRegToStackSlot and storeRegToAddr to specify whether the stored register is killed.
llvm-svn: 44600
|
#
f45a1d62 |
| 02-Dec-2007 |
Evan Cheng <evan.cheng@apple.com> |
Remove redundant foldMemoryOperand variants and other code clean up.
llvm-svn: 44517
|