1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-26 04:32:44 +01:00
llvm-mirror/include/llvm/CodeGen
Bob Wilson 98c9fb94ab Record CodeGen optimization level in the BranchFolding pass so that we can
use it to control tail merging when there is a tradeoff between performance
and code size.  When there is only 1 instruction in the common tail, we have
been merging.  That can be good for code size but is a definite loss for
performance.  Now we will avoid tail merging in that case when the
optimization level is "Aggressive", i.e., "-O3".  Radar 7338114.

Since the IfConversion pass invokes BranchFolding, it too needs to know
the optimization level.  Note that I removed the RegisterPass instantiation
for IfConversion because it required a default constructor.  If someone
wants to keep that for some reason, we can add a default constructor with
a hard-wired optimization level.

llvm-svn: 85346
2009-10-27 23:49:38 +00:00
..
AntiDepBreaker.h Allow the aggressive anti-dep breaker to process the same region multiple times. This is necessary because new anti-dependencies are exposed when "current" ones are broken. 2009-10-26 22:31:16 +00:00
AsmPrinter.h Update processDebugLoc() so that it can be used to process debug info before and after printing an instruction. 2009-10-06 02:19:11 +00:00
BinaryObject.h Move DataTypes.h to include/llvm/System, update all users. This breaks the last 2009-10-26 01:35:46 +00:00
BreakCriticalMachineEdge.h
CallingConvLower.h Retype from unsigned to CallingConv::ID accordingly. Approved by Bob Wilson. 2009-09-02 08:44:58 +00:00
DAGISelHeader.h
DwarfWriter.h Add support to handle debug info attached to an instruction. 2009-10-06 18:37:31 +00:00
ELFRelocation.h Move DataTypes.h to include/llvm/System, update all users. This breaks the last 2009-10-26 01:35:46 +00:00
FastISel.h Fix a name in a comment. 2009-10-05 15:23:17 +00:00
FileWriters.h
GCMetadata.h
GCMetadataPrinter.h rename TAI -> MAI, being careful not to make MAILJMP instructions :) 2009-08-22 21:43:10 +00:00
GCs.h
GCStrategy.h
IntrinsicLowering.h
JITCodeEmitter.h Move DataTypes.h to include/llvm/System, update all users. This breaks the last 2009-10-26 01:35:46 +00:00
LatencyPriorityQueue.h
LinkAllAsmWriterComponents.h
LinkAllCodegenComponents.h Remove simple regalloc. It has bit rotted. 2009-09-17 05:48:07 +00:00
LiveInterval.h Renamed MachineInstrIndex to LiveIndex. 2009-10-03 04:21:37 +00:00
LiveIntervalAnalysis.h Indentation. 2009-10-09 00:57:38 +00:00
LiveStackAnalysis.h Change Pass::print to take a raw ostream instead of std::ostream, 2009-08-23 06:03:38 +00:00
LiveVariables.h Clean up LiveVariables and change how it deals with partial updates and kills. This also eliminate the horrible check which scan forward to the end of the basic block. It should be faster and more accurate. 2009-09-24 02:15:22 +00:00
MachineBasicBlock.h Revert r82214 completely to fix build. 2009-09-18 09:50:00 +00:00
MachineCodeEmitter.h Move DataTypes.h to include/llvm/System, update all users. This breaks the last 2009-10-26 01:35:46 +00:00
MachineCodeInfo.h
MachineConstantPool.h Mark more constants unsigned, as warned about by icc (#68). 2009-09-06 12:56:52 +00:00
MachineDominators.h Change Pass::print to take a raw ostream instead of std::ostream, 2009-08-23 06:03:38 +00:00
MachineFrameInfo.h Move DataTypes.h to include/llvm/System, update all users. This breaks the last 2009-10-26 01:35:46 +00:00
MachineFunction.h Add a splice member function which accepts a range instead of a 2009-10-17 00:28:24 +00:00
MachineFunctionAnalysis.h
MachineFunctionPass.h
MachineInstr.h Factor out LiveIntervalAnalysis' code to determine whether an instruction 2009-10-09 23:27:56 +00:00
MachineInstrBuilder.h Improve MachineMemOperand handling. 2009-09-25 20:36:54 +00:00
MachineJumpTableInfo.h convert some stuff to work on raw_ostreams instead of std::ostream. 2009-08-23 01:12:47 +00:00
MachineLocation.h
MachineLoopInfo.h Add getTopBlock and getBottomBlock member functions to MachineLoopInfo. 2009-10-20 04:16:37 +00:00
MachineMemOperand.h Move MachineMemOperand::getAlignment out of line, to avoid needing 2009-09-25 23:33:20 +00:00
MachineModuleInfo.h Move DataTypes.h to include/llvm/System, update all users. This breaks the last 2009-10-26 01:35:46 +00:00
MachineModuleInfoImpls.h move FnStubs/GVSTubs/HiddenGVStub handling out of the X86 asmprinter 2009-09-16 06:25:03 +00:00
MachineOperand.h Move DataTypes.h to include/llvm/System, update all users. This breaks the last 2009-10-26 01:35:46 +00:00
MachinePassRegistry.h
MachineRegisterInfo.h eliminate all 80-col violations that I have introduced in my recent checkins (and some others more) 2009-08-27 23:44:33 +00:00
MachineRelocation.h Move DataTypes.h to include/llvm/System, update all users. This breaks the last 2009-10-26 01:35:46 +00:00
MachORelocation.h
ObjectCodeEmitter.h
Passes.h Record CodeGen optimization level in the BranchFolding pass so that we can 2009-10-27 23:49:38 +00:00
PseudoSourceValue.h Spill slots cannot alias. 2009-10-18 19:58:47 +00:00
RegAllocRegistry.h
RegisterCoalescer.h
RegisterScavenging.h Add register-reuse to frame-index register scavenging. When a target uses 2009-10-07 17:12:56 +00:00
RuntimeLibcalls.h
ScheduleDAG.h Delete bogus semicolons. 2009-10-14 20:39:01 +00:00
ScheduleHazardRecognizer.h
SchedulerRegistry.h
SelectionDAG.h Introduce new convenience methods for sign extending or 2009-10-13 21:04:12 +00:00
SelectionDAGISel.h
SelectionDAGNodes.h Move DataTypes.h to include/llvm/System, update all users. This breaks the last 2009-10-26 01:35:46 +00:00
ValueTypes.h Move DataTypes.h to include/llvm/System, update all users. This breaks the last 2009-10-26 01:35:46 +00:00
ValueTypes.td