#
35f4ae26 |
| 13-Jan-2011 |
Devang Patel <dpatel@apple.com> |
Speculatively revert r123384 to make llvm-gcc-i386-linux-selfhost buildbot happy.
llvm-svn: 123389
|
#
0e233ae1 |
| 13-Jan-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Teach MachineBasicBlock::getFirstTerminator to ignore debug values.
It will still return an iterator that points to the first terminator or end(), but there may be DBG_VALUE instructions following t
Teach MachineBasicBlock::getFirstTerminator to ignore debug values.
It will still return an iterator that points to the first terminator or end(), but there may be DBG_VALUE instructions following the first terminator.
llvm-svn: 123384
show more ...
|
#
9472847b |
| 13-Jan-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add missing space in debug output
llvm-svn: 123351
|
#
1331a15b |
| 09-Jan-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Replace TargetRegisterInfo::printReg with a PrintReg class that also works without a TRI instance.
Print virtual registers numbered from 0 instead of the arbitrary FirstVirtualRegister. The first vi
Replace TargetRegisterInfo::printReg with a PrintReg class that also works without a TRI instance.
Print virtual registers numbered from 0 instead of the arbitrary FirstVirtualRegister. The first virtual register is printed as %vreg0. TRI::NoRegister is printed as %noreg.
llvm-svn: 123107
show more ...
|
#
ea263191 |
| 02-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Don't try to split weird critical edges that really aren't:
BB#1: derived from LLVM BB %bb.nph28 Live Ins: %AL Predecessors according to CFG: BB#0 TEST8rr %reg16384<kill>, %reg16384, %EFLAG
Don't try to split weird critical edges that really aren't:
BB#1: derived from LLVM BB %bb.nph28 Live Ins: %AL Predecessors according to CFG: BB#0 TEST8rr %reg16384<kill>, %reg16384, %EFLAGS<imp-def>; GR8:%reg16384 JNE_4 <BB#2>, %EFLAGS<imp-use,kill> JMP_4 <BB#2> Successors according to CFG: BB#2 BB#2
These double CFG edges only ever occur in bugpoint-generated code, so there is no need to attempt something clever.
llvm-svn: 117992
show more ...
|
#
ef541857 |
| 30-Oct-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add SkipPHIsAndLabels from PHIElimination to MachineBasicBlock. It is needed elsewhere.
llvm-svn: 117763
|
#
b7050233 |
| 26-Oct-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Teach MachineBasicBlock::print() to annotate instructions and blocks with SlotIndexes when available.
llvm-svn: 117392
|
Revision tags: llvmorg-2.8.0, llvmorg-2.8.0-rc3, llvmorg-2.8.0-rc2, llvmorg-2.8.0-rc1, llvmorg-2.8.0-rc0 |
|
#
63a86845 |
| 19-Aug-2010 |
Evan Cheng <evan.cheng@apple.com> |
Properly update MachineDominators when splitting critical edge.
llvm-svn: 111574
|
#
647c5591 |
| 17-Aug-2010 |
Evan Cheng <evan.cheng@apple.com> |
Move the decision logic whether it's a good idea to split a critical edge to clients. Also fixed an erroneous check. An edge is only a back edge when the from and to blocks are in the same loop.
llv
Move the decision logic whether it's a good idea to split a critical edge to clients. Also fixed an erroneous check. An edge is only a back edge when the from and to blocks are in the same loop.
llvm-svn: 111256
show more ...
|
#
a6848249 |
| 17-Aug-2010 |
Evan Cheng <evan.cheng@apple.com> |
Fix debug message.
llvm-svn: 111250
|
#
f259efde |
| 17-Aug-2010 |
Evan Cheng <evan.cheng@apple.com> |
PHI elimination should not break back edge. It can cause some significant code placement issues. rdar://8263994
good: LBB0_2: mov r2, r0 . . . mov r1, r2 bne LBB0_2
bad: LBB0_2:
PHI elimination should not break back edge. It can cause some significant code placement issues. rdar://8263994
good: LBB0_2: mov r2, r0 . . . mov r1, r2 bne LBB0_2
bad: LBB0_2: mov r2, r0 . . . @ BB#3: mov r1, r2 b LBB0_2
llvm-svn: 111221
show more ...
|
#
88c547ed |
| 07-Jul-2010 |
Dan Gohman <gohman@apple.com> |
Add a getFirstNonPHI utility function.
llvm-svn: 107778
|
#
34396292 |
| 06-Jul-2010 |
Dan Gohman <gohman@apple.com> |
Reapply r107655 with fixes; insert the pseudo instruction into the block before calling the expansion hook. And don't put EFLAGS in a mbb's live-in list twice.
llvm-svn: 107691
|
#
f4f04107 |
| 06-Jul-2010 |
Dan Gohman <gohman@apple.com> |
Revert r107655.
llvm-svn: 107668
|
#
12205645 |
| 06-Jul-2010 |
Dan Gohman <gohman@apple.com> |
Fix a bunch of custom-inserter functions to handle the case where the pseudo instruction is not at the end of the block.
llvm-svn: 107655
|
#
3570f81b |
| 22-Jun-2010 |
Dan Gohman <gohman@apple.com> |
Move PHIElimination's SplitCriticalEdge for MachineBasicBlocks out into a utility routine, teach it how to update MachineLoopInfo, and make use of it in MachineLICM to split critical edges on demand.
Move PHIElimination's SplitCriticalEdge for MachineBasicBlocks out into a utility routine, teach it how to update MachineLoopInfo, and make use of it in MachineLICM to split critical edges on demand.
llvm-svn: 106555
show more ...
|
#
0125b641 |
| 17-Jun-2010 |
Stuart Hastings <stuart@apple.com> |
Add a DebugLoc parameter to TargetInstrInfo::InsertBranch(). This addresses a longstanding deficiency noted in many FIXMEs scattered across all the targets.
This effectively moves the problem up on
Add a DebugLoc parameter to TargetInstrInfo::InsertBranch(). This addresses a longstanding deficiency noted in many FIXMEs scattered across all the targets.
This effectively moves the problem up one level, replacing eleven FIXMEs in the targets with eight FIXMEs in CodeGen, plus one path through FastISel where we actually supply a DebugLoc, fixing Radar 7421831.
llvm-svn: 106243
show more ...
|
Revision tags: llvmorg-2.7.0 |
|
#
9d2d053e |
| 13-Apr-2010 |
Dan Gohman <gohman@apple.com> |
Eliminate MachineBasicBlock::const_livein_iterator and make MachineBasicBlock::livein_iterator a const_iterator, because clients shouldn't ever be using the iterator interface to mutate the livein se
Eliminate MachineBasicBlock::const_livein_iterator and make MachineBasicBlock::livein_iterator a const_iterator, because clients shouldn't ever be using the iterator interface to mutate the livein set.
llvm-svn: 101147
show more ...
|
#
95643404 |
| 01-Apr-2010 |
Bill Wendling <isanbard@gmail.com> |
Reapply r100056. It doesn't look like it's the one that's causing a failure.
llvm-svn: 100065
|
#
fa9810de |
| 31-Mar-2010 |
Bill Wendling <isanbard@gmail.com> |
Revert r100056. It was causing a failure on MSVC.
llvm-svn: 100062
|
#
506b3047 |
| 31-Mar-2010 |
Bill Wendling <isanbard@gmail.com> |
Rewrite CorrectExtraCFGEdges() to make it more understandable.
* Set the "DestA" and "DestB" according to how they're understood by the method. I.e., if one or both of them should point to the "fa
Rewrite CorrectExtraCFGEdges() to make it more understandable.
* Set the "DestA" and "DestB" according to how they're understood by the method. I.e., if one or both of them should point to the "fall through" block, then point to the fall through block.
* Improve the loop that removes superfluous edges to be more understandable.
llvm-svn: 100056
show more ...
|
#
98970439 |
| 30-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
Rip out the 'is temporary' nonsense from the MCContext interface to create symbols. It is extremely error prone and a source of a lot of the remaining integrated assembler bugs on x86-64.
This fixe
Rip out the 'is temporary' nonsense from the MCContext interface to create symbols. It is extremely error prone and a source of a lot of the remaining integrated assembler bugs on x86-64.
This fixes rdar://7807601.
llvm-svn: 99902
show more ...
|
#
29bdac49 |
| 13-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
eliminate the now-unneeded context argument of MBB::getSymbol()
llvm-svn: 98451
|
#
ac2361a9 |
| 10-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
set the temporary bit on MCSymbols correctly.
llvm-svn: 98124
|
#
1fa9c2cc |
| 17-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
move isOnlyReachableByFallthrough out of MachineBasicBlock into AsmPrinter, and add a sparc implementation that knows about delay slots. Patch by Nathan Keynes!
llvm-svn: 96492
|