1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 03:53:04 +02:00
llvm-mirror/include/llvm/CodeGen
Matthias Braun b910f14b0f RegisterPressure: Expose RegisterOperands API
Previously the RegisterOperands have only been used internally in
RegisterPressure.cpp. However this datastructure can be useful for other
tasks as well and allows refactoring of PDiff initialisation out of
RPTracker::recede().

This patch:
- Exposes RegisterOperands as public API
- Splits RPTracker::recede() into a part that skips DebugValues and
  maintains the region borders, and the core that changes register
  pressure when given a set of RegisterOperands.
- This allows to move the PDiff initialisation out recede() into a
  method of the PressureDiffs class.
- The upcoming subregister scheduling code will also use
  RegisterOperands to avoid pushing more unrelated functionality into
  recede()/advance().

Differential Revision: http://reviews.llvm.org/D15473

llvm-svn: 257535
2016-01-12 22:57:35 +00:00
..
MIRParser Re-commit r247216: "Fix Clang-tidy misc-use-override warnings, other minor fixes" 2015-09-10 16:49:58 +00:00
PBQP Add more missing #includes, found by modules build. 2015-05-11 22:41:07 +00:00
Analysis.h [WinEH] Permit branch folding in the face of funclets 2015-10-04 02:22:52 +00:00
AsmPrinter.h [WebAssembly] Define WebAssembly-specific relocation codes. 2016-01-11 23:38:05 +00:00
AtomicExpandUtils.h Refactor AtomicExpand::expandAtomicRMWToCmpXchg into a standalone function. 2015-08-03 15:29:47 +00:00
BasicTTIImpl.h Implemented cost model for masked gather and scatter operations 2015-12-28 20:10:59 +00:00
CalcSpillWeights.h Trace copies when checking for rematerializability in spill weight calculation 2015-08-10 11:59:44 +00:00
CallingConvLower.h Replace uint16_t with the MCPhysReg typedef in many places. A lot of physical register arrays already use this typedef. 2015-12-05 07:13:35 +00:00
CommandFlags.h Set debugger tuning from TargetOptions (NFC) 2015-12-16 19:58:30 +00:00
DAGCombine.h
DFAPacketizer.h [Packetizer] Add a check whether an instruction should be packetized now 2015-12-16 16:38:16 +00:00
DIE.h Added support for macro emission in dwarf (supporting DWARF version 4). 2016-01-07 14:28:20 +00:00
DIEValue.def Reapply "AsmPrinter: Change DIEValue to be stored by value" 2015-05-27 22:14:58 +00:00
DwarfStringPoolEntry.h AsmPrinter: Avoid creating symbols in DwarfStringPool 2015-05-24 16:58:59 +00:00
EdgeBundles.h
FastISel.h FastISel needs to remove dead code when it bails out. 2015-12-14 18:33:18 +00:00
FaultMaps.h Revert "[FaultMaps] Move FaultMapParser to Object/" 2015-06-23 20:09:03 +00:00
FunctionLoweringInfo.h CXX_FAST_TLS calling convention: target independent portion. 2015-12-11 18:24:30 +00:00
GCMetadata.h Prune trailing whitespaces in comment lines. 2015-10-05 04:43:57 +00:00
GCMetadataPrinter.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
GCs.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
GCStrategy.h [GC] Make GCStrategy::isGCManagedPointer a type predicate not a value predicate [NFC] 2015-12-23 01:42:15 +00:00
IntrinsicLowering.h Reformat 3 files in llvm/include/llvm/CodeGen/. 2015-10-05 04:44:18 +00:00
ISDOpcodes.h Revert r248483, r242546, r242545, and r242409 - absdiff intrinsics 2015-12-11 23:11:52 +00:00
LatencyPriorityQueue.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
LexicalScopes.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
LinkAllAsmWriterComponents.h
LinkAllCodegenComponents.h Add a GCStrategy for CoreCLR 2015-05-20 01:07:23 +00:00
LiveInterval.h LiveInterval: Adapt commen to the LI->LR change. 2016-01-08 19:25:31 +00:00
LiveIntervalAnalysis.h TargetRegisterInfo: Add typedef unsigned LaneBitmask and use it where apropriate; NFC 2015-09-25 21:51:14 +00:00
LiveIntervalUnion.h RAGreedy: Keep track of allocated PhysRegs internally 2015-07-14 17:38:17 +00:00
LivePhysRegs.h LivePhysRegs: Fix live-outs of return blocks 2015-09-25 23:50:53 +00:00
LiveRangeEdit.h [PM/AA] Rebuild LLVM's alias analysis infrastructure in a way compatible 2015-09-09 17:55:00 +00:00
LiveRegMatrix.h MachineRegisterInfo: Remove UsedPhysReg infrastructure 2015-07-14 17:52:07 +00:00
LiveStackAnalysis.h Reformat 3 files in llvm/include/llvm/CodeGen/. 2015-10-05 04:44:18 +00:00
LiveVariables.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MachineBasicBlock.h Normalize MBB's successors' probabilities in several locations. 2015-12-13 09:26:17 +00:00
MachineBlockFrequencyInfo.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MachineBranchProbabilityInfo.h Use getEdgeProbability() instead of getEdgeWeight() in BFI and remove getEdgeWeight() interfaces from MBPI. 2015-12-18 21:53:24 +00:00
MachineCombinerPattern.h replace MachineCombinerPattern namespace and enum with enum class; NFCI 2015-11-05 19:34:57 +00:00
MachineConstantPool.h Drop prelink support. 2015-11-17 00:51:23 +00:00
MachineDominanceFrontier.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MachineDominators.h NFC. 2015-08-07 18:04:17 +00:00
MachineFrameInfo.h [Statepoints] Use Indirect operands for spill slots 2015-12-23 23:44:28 +00:00
MachineFunction.h [WinEH] Move WinEHFuncInfo from MachineModuleInfo to MachineFunction 2015-11-17 21:10:25 +00:00
MachineFunctionAnalysis.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MachineFunctionInitializer.h MIR Serialization: Connect the machine function analysis pass to the MIR parser. 2015-06-15 20:30:22 +00:00
MachineFunctionPass.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MachineInstr.h Extract helper function to merge MemoryOperand lists [NFC] 2016-01-06 04:39:03 +00:00
MachineInstrBuilder.h Extract helper function to merge MemoryOperand lists [NFC] 2016-01-06 04:39:03 +00:00
MachineInstrBundle.h Fix typo in comment 2016-01-05 00:45:31 +00:00
MachineJumpTableInfo.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MachineLoopInfo.h Remove macro guards for extern template instantiations. 2015-07-13 17:21:31 +00:00
MachineMemOperand.h PseudoSourceValue: Replace global manager with a manager in a machine function. 2015-08-11 23:09:45 +00:00
MachineModuleInfo.h [ptr-traits] Add a bunch of includes to provide complete types that are 2015-12-29 09:06:21 +00:00
MachineModuleInfoImpls.h Reformat 3 files in llvm/include/llvm/CodeGen/. 2015-10-05 04:44:18 +00:00
MachineOperand.h CodeGen: Push the ModuleSlotTracker through MachineOperands 2015-06-26 22:06:47 +00:00
MachinePassRegistry.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
MachinePostDominators.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
MachineRegionInfo.h Remove macro guards for extern template instantiations. 2015-07-13 17:21:31 +00:00
MachineRegisterInfo.h Use make_range to reduce mentions of iterator type. NFC 2015-12-06 05:08:07 +00:00
MachineScheduler.h ScheduleDAGInstrs: Move LiveIntervals field to ScheduleDAGMI 2015-12-04 19:54:24 +00:00
MachineSSAUpdater.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MachineTraceMetrics.h
MachineValueType.h Add new vector types for 512-, 1024- and 2048-bit vectors 2015-11-24 13:07:35 +00:00
MachORelocation.h
MIRYamlMapping.h MIR Serialization: Serialize MMI's variable debug information. 2015-08-19 00:13:25 +00:00
ParallelCG.h [LTO] Add option to emit assembly from LTOCodeGenerator 2015-11-19 23:59:24 +00:00
Passes.h Recommit LiveDebugValues pass after fixing a couple of minor issues. 2015-12-16 11:09:48 +00:00
PBQPRAConstraint.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
PseudoSourceValue.h MIR Serialization: Serialize the external symbol call entry pseudo source 2015-08-14 21:14:50 +00:00
RegAllocPBQP.h Fix some comment typos. 2015-08-08 18:27:36 +00:00
RegAllocRegistry.h Reformat partially. 2015-10-05 04:46:30 +00:00
RegisterClassInfo.h
RegisterPressure.h RegisterPressure: Expose RegisterOperands API 2016-01-12 22:57:35 +00:00
RegisterScavenging.h [PowerPC] Remove wild call to RegScavenger::initRegState(). 2015-12-02 21:25:28 +00:00
ResourcePriorityQueue.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
RuntimeLibcalls.h Do not try to use i8 and i16 versions of FP_TO_U/SINT soft float library calls 2015-12-15 12:55:50 +00:00
ScheduleDAG.h [ptr-traits] Sink several in-body method definitions to be out-of-line 2015-12-29 09:24:42 +00:00
ScheduleDAGInstrs.h ScheduleDAGInstrs: Move LiveIntervals field to ScheduleDAGMI 2015-12-04 19:54:24 +00:00
ScheduleDFS.h
ScheduleHazardRecognizer.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
SchedulerRegistry.h Move the Target way of overriding DAG Scheduler to a target hook 2015-07-28 06:18:04 +00:00
ScoreboardHazardRecognizer.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
SelectionDAG.h Use make_range to reduce mentions of iterator type. NFC 2015-12-06 05:08:07 +00:00
SelectionDAGISel.h [SEH] Fix llvm.eh.exceptioncode fast register allocation assertion 2015-10-09 00:15:13 +00:00
SelectionDAGNodes.h Type legalizer for masked gather and scatter intrinsics. 2015-12-15 08:40:41 +00:00
SlotIndexes.h CodeGen: Let the BumpPtrAllocator free the elements of indexList 2015-12-05 00:39:14 +00:00
StackMaps.h [ptr-traits] Add a bunch of includes to provide complete types that are 2015-12-29 09:06:21 +00:00
StackProtector.h
TargetLoweringObjectFileImpl.h CodeGen, Target: Move Mach-O-specific symbol name logic to Mach-O lowering. 2015-11-03 23:40:03 +00:00
TargetSchedule.h [MachineCombiner] Work with itineraries 2015-07-15 08:22:23 +00:00
ValueTypes.h Add new vector types for 512-, 1024- and 2048-bit vectors 2015-11-24 13:07:35 +00:00
ValueTypes.td Add new vector types for 512-, 1024- and 2048-bit vectors 2015-11-24 13:07:35 +00:00
VirtRegMap.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
WinEHFuncInfo.h [WinEH] Remove calculateCatchReturnSuccessorColors 2016-01-06 19:26:30 +00:00