mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 19:52:54 +01:00
00f3778923
(1) An int CC live range must be spilled if there are any interferences, even if no other "neighbour" in the interf. graph has been allocated that reg. yet. This is actually true of any class with only one reg! (2) SparcIntCCRegClass::colorIGNode sets the color even if the LR must be spilled so that the machine-independent spill code doesn't have to make the machine-dependent decision of which CC name to use based on operand type: %xcc or %icc. (These are two halves of the same register.) (3) LR->isMarkedForSpill() is no longer the same as LR->hasColor(). These should never have been the same, and this is necessary now for #2. (4) All RDCCR and WRCCR instructions are directly generated with the phony number for %ccr so that EmitAssembly/EmitBinary doesn't have to deal with this. llvm-svn: 7152 |
||
---|---|---|
.. | ||
InstrSched | ||
InstrSelection | ||
Mapping | ||
ModuloScheduling | ||
PostOpts | ||
PreOpts | ||
RegAlloc | ||
LiveVariables.cpp | ||
MachineCodeEmitter.cpp | ||
MachineCodeForInstruction.cpp | ||
MachineFunction.cpp | ||
MachineInstr.cpp | ||
MachineInstrAnnot.cpp | ||
Makefile | ||
PHIElimination.cpp | ||
PrologEpilogInserter.cpp | ||
RegAllocLocal.cpp | ||
RegAllocSimple.cpp |