- Oct 23, 2009
-
-
David Goodwin authored
Allow the target to select the level of anti-dependence breaking that should be performed by the post-RA scheduler. The default is none. llvm-svn: 84911
-
- Oct 21, 2009
-
-
Dan Gohman authored
llvm-svn: 84727
-
David Goodwin authored
Respect src register allocation requirements when breaking anti-dependencies. Remove some dead code. llvm-svn: 84691
-
- Oct 20, 2009
-
-
David Goodwin authored
llvm-svn: 84658
-
- Oct 16, 2009
-
-
Evan Cheng authored
llvm-svn: 84273
-
Evan Cheng authored
llvm-svn: 84248
-
- Oct 13, 2009
-
-
David Goodwin authored
llvm-svn: 84011
-
- Oct 10, 2009
-
-
Dan Gohman authored
llvm-svn: 83695
-
Dan Gohman authored
is trivially rematerializable and integrate it into TargetInstrInfo::isTriviallyReMaterializable. This way, all places that need to know whether an instruction is rematerializable will get the same answer. This enables the useful parts of the aggressive-remat option by default -- using AliasAnalysis to determine whether a memory location is invariant, and removes the questionable parts -- rematting operations with virtual register inputs that may not be live everywhere. llvm-svn: 83687
-
- Oct 02, 2009
-
-
Benjamin Kramer authored
MI->addOperand invalidates references to it's operands, avoid touching the operand after a new one was added. llvm-svn: 83249
-
David Goodwin authored
llvm-svn: 83223
-
David Goodwin authored
Remove neonfp attribute and instead set default based on CPU string. Add -arm-use-neon-fp to override the default. llvm-svn: 83218
-
- Oct 01, 2009
-
-
David Goodwin authored
Restore the -post-RA-scheduler flag as an override for the target specification. Remove -mattr for setting PostRAScheduler enable and instead use CPU string. llvm-svn: 83215
-
David Goodwin authored
Use MachineFrameInfo.getPristineRegs() to determine which callee-saved registers are available for anti-dependency breaking. Some cleanup. llvm-svn: 83208
-
Evan Cheng authored
operands of instructions with these properties while breaking anti-dep. llvm-svn: 83198
-
- Sep 30, 2009
-
-
Reid Kleckner authored
basic blocks that are so long that their size overflows a short. Also assert that overflow does not happen in the future, as requested by Evan. This fixes PR4401. llvm-svn: 83159
-
David Goodwin authored
Remove -post-RA-schedule flag and add a TargetSubtarget method to enable post-register-allocation scheduling. By default it is off. For ARM, enable/disable with -mattr=+/-postrasched. Enable by default for cortex-a8. llvm-svn: 83122
-
- Sep 28, 2009
-
-
Jakob Stoklund Olesen authored
llvm-svn: 83007
-
- Sep 23, 2009
-
-
David Goodwin authored
Fix bug in kill flag updating for post-register-allocation scheduling. When the kill flag of a superreg needs to be cleared because there are one or more subregs live, we instead add implicit-defs of those subregs and leave the kill flag on the superreg. This allows us to end the live-range of the superreg without ending the live-ranges of the subregs. llvm-svn: 82629
-
- Sep 18, 2009
-
-
Evan Cheng authored
Enhance EmitInstrWithCustomInserter() so target can specify CFG changes that sdisel will use to properly complete phi nodes. Not functionality change yet. llvm-svn: 82273
-
- Sep 06, 2009
-
-
Benjamin Kramer authored
llvm-svn: 81112
-
- Sep 04, 2009
-
-
David Goodwin authored
Create our own block initializer for kill fixups as the scheduling one wasn't doing the right thing. llvm-svn: 80958
-
- Sep 01, 2009
-
-
David Goodwin authored
llvm-svn: 80702
-
- Aug 31, 2009
-
-
David Goodwin authored
llvm-svn: 80621
-
- Aug 29, 2009
-
-
David Goodwin authored
llvm-svn: 80410
-
- Aug 25, 2009
-
-
David Goodwin authored
llvm-svn: 80002
-
- Aug 23, 2009
-
-
Chris Lattner authored
llvm-svn: 79836
-
- Aug 12, 2009
-
-
David Goodwin authored
llvm-svn: 78843
-
Dan Gohman authored
llvm-svn: 78773
-
Dan Gohman authored
in breaking an anti-dependence into a separate function. llvm-svn: 78767
-
- Aug 11, 2009
-
-
David Goodwin authored
llvm-svn: 78694
-
David Goodwin authored
llvm-svn: 78687
-
David Goodwin authored
llvm-svn: 78634
-
- Aug 10, 2009
-
-
David Goodwin authored
Post RA scheduler changes. Introduce a hazard recognizer that uses the target schedule information to accurately model the pipeline. Update the scheduler to correctly handle multi-issue targets. llvm-svn: 78563
-
- Aug 01, 2009
-
-
Dan Gohman authored
llvm-svn: 77754
-
- Jul 29, 2009
-
-
Chris Lattner authored
now that TargetOperandInfo does the heavy lifting. llvm-svn: 77508
-
- Jul 14, 2009
-
-
Torok Edwin authored
This adds location info for all llvm_unreachable calls (which is a macro now) in !NDEBUG builds. In NDEBUG builds location info and the message is off (it only prints "UREACHABLE executed"). llvm-svn: 75640
-
- Jul 11, 2009
-
-
Torok Edwin authored
Make llvm_unreachable take an optional string, thus moving the cerr<< out of line. LLVM_UNREACHABLE is now a simple wrapper that makes the message go away for NDEBUG builds. llvm-svn: 75379
-
- May 05, 2009
-
-
Evan Cheng authored
llvm-svn: 70950
-
- Apr 09, 2009
-
-
Bob Wilson authored
register destinations that are tied to source operands. The TargetInstrDescr::findTiedToSrcOperand method silently fails for inline assembly. The existing MachineInstr::isRegReDefinedByTwoAddr was very close to doing what is needed, so this revision makes a few changes to that method and also renames it to isRegTiedToUseOperand (for consistency with the very similar isRegTiedToDefOperand and because it handles both two-address instructions and inline assembly with tied registers). llvm-svn: 68714
-