#
e2d3067f |
| 06-Jul-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Remove references to INSERT_SUBREG after de-SSA
llvm-svn: 107732
|
#
70ee3ecd |
| 06-Jul-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Convert INSERT_SUBREG to COPY in TwoAddressInstructionPass.
INSERT_SUBREG will now only appear in SSA machine instructions.
Fix the handling of partial redefs in ProcessImplicitDefs. This is now re
Convert INSERT_SUBREG to COPY in TwoAddressInstructionPass.
INSERT_SUBREG will now only appear in SSA machine instructions.
Fix the handling of partial redefs in ProcessImplicitDefs. This is now relevant since partial redef COPY instructions appear.
llvm-svn: 107726
show more ...
|
#
4c82a9e7 |
| 03-Jul-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Detect and handle COPY in many places.
This code is transitional, it will soon be possible to eliminate isExtractSubreg, isInsertSubreg, and isMoveInstr in most places.
llvm-svn: 107547
|
#
1ef06608 |
| 11-May-2010 |
Evan Cheng <evan.cheng@apple.com> |
It's not safe eliminate copies where src and dst have different sub-register indices.
llvm-svn: 103450
|
#
d6908dc4 |
| 10-May-2010 |
Evan Cheng <evan.cheng@apple.com> |
It's not safe to propagate implicit_def that defines part of a register.
llvm-svn: 103436
|
Revision tags: llvmorg-2.7.0 |
|
#
2988d573 |
| 15-Feb-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Fix PR6300.
A virtual register can be used before it is defined in the same MBB if the MBB is part of a loop. Teach the implicit-def pass about this case.
llvm-svn: 96279
|
#
b06015aa |
| 09-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
move target-independent opcodes out of TargetInstrInfo into TargetOpcodes.h. #include the new TargetOpcodes.h into MachineInstr. Add new inline accessors (like isPHI()) to MachineInstr, and start u
move target-independent opcodes out of TargetInstrInfo into TargetOpcodes.h. #include the new TargetOpcodes.h into MachineInstr. Add new inline accessors (like isPHI()) to MachineInstr, and start using them throughout the codebase.
llvm-svn: 95687
show more ...
|
#
c7c89b83 |
| 04-Feb-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Fix small bug in handling instructions with more than one implicitly defined operand.
ProcessImplicitDefs would only mark one operand per instruction with <undef>. This fixed PR6086.
llvm-svn: 95319
|
#
d7c266bb |
| 05-Jan-2010 |
David Greene <greened@obbligato.org> |
Change errs() to dbgs().
llvm-svn: 92567
|
#
595a1630 |
| 26-Nov-2009 |
Evan Cheng <evan.cheng@apple.com> |
When all defs of a vr are implicit_def, delete all of the defs.
llvm-svn: 89905
|
#
44df27e9 |
| 25-Nov-2009 |
Evan Cheng <evan.cheng@apple.com> |
ProcessImplicitDefs should watch out for invalidated iterator and extra implicit operands on copies.
llvm-svn: 89880
|
#
11bf4493 |
| 16-Nov-2009 |
Evan Cheng <evan.cheng@apple.com> |
For some targets, a copy can use a register multiple times, e.g. ppc.
llvm-svn: 88895
|
#
01f31c0a |
| 16-Nov-2009 |
Lang Hames <lhames@gmail.com> |
Fixes the bug exposed by Anton's test case in PR 5495: Make sure when ProcessImplicitDefs removes a copy which kills its source reg that it removes the copy from said reg's Kills list.
llvm-svn: 888
Fixes the bug exposed by Anton's test case in PR 5495: Make sure when ProcessImplicitDefs removes a copy which kills its source reg that it removes the copy from said reg's Kills list.
llvm-svn: 88881
show more ...
|
#
05fb9637 |
| 03-Nov-2009 |
Lang Hames <lhames@gmail.com> |
The Indexes Patch.
This introduces a new pass, SlotIndexes, which is responsible for numbering instructions for register allocation (and other clients). SlotIndexes numbering is designed to match th
The Indexes Patch.
This introduces a new pass, SlotIndexes, which is responsible for numbering instructions for register allocation (and other clients). SlotIndexes numbering is designed to match the existing scheme, so this patch should not cause any changes in the generated code.
For consistency, and to avoid naming confusion, LiveIndex has been renamed SlotIndex.
The processImplicitDefs method of the LiveIntervals analysis has been moved into its own pass so that it can be run prior to SlotIndexes. This was necessary to match the existing numbering scheme.
llvm-svn: 85979
show more ...
|