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
Michael Liao d21f701c76 [MIRPrinter] Add machine metadata support.
- Distinct metadata needs generating in the codegen to attach correct
  AAInfo on the loads/stores after lowering, merging, and other relevant
  transformations.
- This patch adds 'MachhineModuleSlotTracker' to help assign slot
  numbers to these newly generated unnamed metadata nodes.
- To help 'MachhineModuleSlotTracker' track machine metadata, the
  original 'SlotTracker' is rebased from 'AbstractSlotTrackerStorage',
  which provides basic interfaces to create/retrive metadata slots. In
  addition, once LLVM IR is processsed, additional hooks are also
  introduced to help collect machine metadata and assign them slot
  numbers.
- Finally, if there is any such machine metadata, 'MIRPrinter' outputs
  an additional 'machineMetadataNodes' field containing all the
  definition of those nodes.

Reviewed By: arsenm

Differential Revision: https://reviews.llvm.org/D103205
2021-06-19 12:48:08 -04:00
..
GlobalISel [GISel] Eliminate redundant bitmasking 2021-06-17 12:53:00 -07:00
MIRParser [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
PBQP [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
AccelTable.h [docs] Fix doxygen comments wrongly attached to the llvm namespace 2021-04-07 01:20:18 +02:00
Analysis.h
AntiDepBreaker.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
AsmPrinter.h Support GCC's -fstack-usage flag 2021-05-15 10:22:49 -07:00
AsmPrinterHandler.h
AtomicExpandUtils.h Copy syncscope when expanding atomicrmw into cmpxchg loop 2021-04-05 17:29:38 -07:00
BasicBlockSectionUtils.h
BasicTTIImpl.h [CostModel] Return Invalid cost in getArithmeticCost instead of crashing for scalable vectors. 2021-06-07 17:26:23 +01:00
CalcSpillWeights.h [RegAlloc] Fix "ran out of regs" with uses in statepoint 2021-03-24 10:25:34 +07:00
CallingConvLower.h [llvm][NFC] Remove CallingConvLower deprecated alignment functions 2021-05-06 07:46:19 +00:00
CodeGenPassBuilder.h Fix build after 34a8a437b 2021-05-07 23:18:44 -07:00
CommandFlags.h [IR] make stack-protector-guard-* flags into module attrs 2021-05-21 15:53:30 -07:00
CostTable.h
CSEConfigBase.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
DAGCombine.h
DbgEntityHistoryCalculator.h Reland [DWARF] Location-less inlined variables should not have DW_TAG_variable 2021-02-10 15:40:47 +00:00
DebugHandlerBase.h
DFAPacketizer.h
DIE.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
DIEValue.def DebugInfo: Add a DWARF FORM extension for addrx+offset references to reduce relocations 2021-01-28 10:20:02 -08:00
DwarfStringPoolEntry.h
EdgeBundles.h [NFC] Fix comment describing what EdgeBundles is 2021-03-24 11:04:05 +07:00
ExecutionDomainFix.h
ExpandReductions.h
ExpandVectorPredication.h Recommit "[VP,Integer,#2] ExpandVectorPredication pass" 2021-05-04 11:47:52 +02:00
FastISel.h [FastISel] Remove kill tracking 2021-04-03 15:50:13 +02:00
FaultMaps.h [FaultsMaps][llvm-objdump] Move FaultMapParser to Object/. Remove CodeGen dependency from llvm-objdump 2021-01-27 10:39:59 -08:00
FunctionLoweringInfo.h
GCMetadata.h [GC][NFC] Move GCStrategy from CodeGen to IR 2021-05-13 12:31:59 +07:00
GCMetadataPrinter.h
IndirectThunks.h [ARM][AArch64] SLSHardening: make non-comdat thunks possible 2021-05-20 17:07:05 +02:00
IntrinsicLowering.h
ISDOpcodes.h Update @llvm.powi to handle different int sizes for the exponent 2021-06-17 09:38:28 +02:00
LatencyPriorityQueue.h
LazyMachineBlockFrequencyInfo.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
LexicalScopes.h
LinkAllAsmWriterComponents.h [GC][NFC] Move GCStrategy from CodeGen to IR 2021-05-13 12:31:59 +07:00
LinkAllCodegenComponents.h [GC][NFC] Move GCStrategy from CodeGen to IR 2021-05-13 12:31:59 +07:00
LiveInterval.h
LiveIntervalCalc.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
LiveIntervals.h
LiveIntervalUnion.h [regalloc] Ensure Query::collectInterferringVregs is called before interval iteration 2021-04-01 08:33:28 -07:00
LivePhysRegs.h
LiveRangeCalc.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
LiveRangeEdit.h [NFC][Regalloc] Share the VirtRegAuxInfo object with LiveRangeEdit 2021-02-19 07:44:28 -08:00
LiveRegMatrix.h
LiveRegUnits.h
LiveStacks.h
LiveVariables.h
LoopTraversal.h
LowLevelType.h [docs] Fix doxygen comments wrongly attached to the llvm namespace 2021-04-07 01:20:18 +02:00
MachineBasicBlock.h [CSSPGO] Undoing the concept of dangling pseudo probe 2021-06-18 15:14:11 -07:00
MachineBlockFrequencyInfo.h
MachineBranchProbabilityInfo.h
MachineCombinerPattern.h Revert "[AArch64] Add Machine InstCombiner patterns for FMUL indexed variant" 2021-04-12 16:28:49 +03:00
MachineConstantPool.h
MachineDominanceFrontier.h
MachineDominators.h
MachineFrameInfo.h [llvm] fix typo in comment 2021-06-17 14:30:52 +00:00
MachineFunction.h CodeGen: Fix missing const 2021-06-11 13:45:24 -04:00
MachineFunctionPass.h
MachineInstr.h [DebugInstrRef][1/3] Track PHI values through register allocation 2021-05-26 20:24:00 +01:00
MachineInstrBuilder.h [llvm, clang] Remove stdlib includes from .h files without std:: 2021-04-27 12:41:39 -04:00
MachineInstrBundle.h
MachineInstrBundleIterator.h
MachineJumpTableInfo.h
MachineLoopInfo.h [ARM] Allow findLoopPreheader to return headers with multiple loop successors 2021-05-24 12:22:15 +01:00
MachineLoopUtils.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
MachineMemOperand.h [AArch64][RISCV] Make sure isel correctly honors failure orderings. 2021-05-28 12:47:40 -07:00
MachineModuleInfo.h Revert "[AsmPrinter] Delete dead takeDeletedSymbsForFunction()" 2021-04-07 11:40:44 -07:00
MachineModuleInfoImpls.h
MachineModuleSlotTracker.h [MIRPrinter] Add machine metadata support. 2021-06-19 12:48:08 -04:00
MachineOperand.h [MachineFunction] Make comment for TracksLiveness more clearer 2021-04-30 12:10:36 -07:00
MachineOptimizationRemarkEmitter.h
MachineOutliner.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
MachinePassManager.h [NewPM] Hide pass manager debug logging behind -debug-pass-manager-verbose 2021-05-07 21:51:47 -07:00
MachinePassRegistry.def Recommit "[VP,Integer,#2] ExpandVectorPredication pass" 2021-05-04 11:47:52 +02:00
MachinePassRegistry.h
MachinePipeliner.h [Pipeliner] Fixed optimization remarks and debug dumps Initiation 2021-02-17 12:28:37 -05:00
MachinePostDominators.h
MachineRegionInfo.h
MachineRegisterInfo.h [AIX][XCOFF] emit vector info of traceback table. 2021-06-14 11:15:22 -04:00
MachineScheduler.h [CodeGen] Use ProcResGroup information in SchedBoundary 2021-04-19 21:27:45 +01:00
MachineSizeOpts.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
MachineSSAUpdater.h
MachineStableHash.h
MachineTraceMetrics.h
MachORelocation.h
MacroFusion.h
MBFIWrapper.h [NFC] Add missing includes for LLVM_ENABLE_MODULES builds 2021-06-03 23:29:03 +02:00
MIRFormatter.h
MIRFSDiscriminator.h [SampleFDO] New hierarchical discriminator for FS SampleFDO (ProfileData part) 2021-06-02 10:32:52 -07:00
MIRPrinter.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
MIRYamlMapping.h [MIRPrinter] Add machine metadata support. 2021-06-19 12:48:08 -04:00
ModuloSchedule.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
MultiHazardRecognizer.h
NonRelocatableStringpool.h
ParallelCG.h [LTO] Update splitCodeGen to take a reference to the module. (NFC) 2021-01-29 11:53:11 +00:00
Passes.h [SampleFDO] New hierarchical discriminator for FS SampleFDO (ProfileData part) 2021-06-02 10:32:52 -07:00
PBQPRAConstraint.h
PreISelIntrinsicLowering.h
PseudoSourceValue.h
RDFGraph.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
RDFLiveness.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
RDFRegisters.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
ReachingDefAnalysis.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
RegAllocPBQP.h
RegAllocRegistry.h
Register.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
RegisterClassInfo.h [NFC] MCRegister fixes in RegisterClassInfo, and const-ed APIs 2021-02-26 08:53:57 -08:00
RegisterPressure.h
RegisterScavenging.h
RegisterUsageInfo.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
ReplaceWithVeclib.h [llvm] Fix header guards (NFC) 2021-02-14 08:36:18 -08:00
ResourcePriorityQueue.h
RuntimeLibcalls.h [CodeGen] Refactor libcall lookups for RTLIB::POWI_* 2021-06-02 11:40:34 +02:00
ScheduleDAG.h Replace uses of std::iterator with explicit using 2021-04-12 10:47:14 -07:00
ScheduleDAGInstrs.h
ScheduleDAGMutation.h
ScheduleDFS.h
ScheduleHazardRecognizer.h
SchedulerRegistry.h
ScoreboardHazardRecognizer.h
SDNodeProperties.td
SelectionDAG.h [SelectionDAG] Propagate scoped AA metadata when lowering mem intrinsics. 2021-05-25 14:42:26 -04:00
SelectionDAGAddressAnalysis.h
SelectionDAGISel.h [TableGen] Use sign rotated VBR for OPC_EmitInteger. 2021-05-02 12:40:44 -07:00
SelectionDAGNodes.h [PowerPC][AIX} FIx AIX bootstrap build. 2021-06-02 09:31:11 -04:00
SelectionDAGTargetInfo.h [AArch64][SVE] Add patterns to generate FMLA/FMLS/FNMLA/FNMLS/FMAD 2021-02-18 16:55:16 +00:00
SlotIndexes.h
Spiller.h [NFC][Regalloc] Share the VirtRegAuxInfo object with LiveRangeEdit 2021-02-19 07:44:28 -08:00
StableHashing.h
StackMaps.h
StackProtector.h
SwiftErrorValueTracking.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
SwitchLoweringUtils.h
TailDuplicator.h
TargetCallingConv.h IR+AArch64: add a "swiftasync" argument attribute. 2021-05-14 11:43:58 +01:00
TargetFrameLowering.h [CodeGen][NFC] Remove unused virtual function 2021-06-02 13:11:12 -07:00
TargetInstrInfo.h Revert "[X86FixupLEAs] Transform the sequence LEA/SUB to SUB/SUB" 2021-06-12 11:41:38 +01:00
TargetLowering.h [llvm][AArch64] Handle arrays of struct properly (from IR) 2021-06-16 13:56:01 +00:00
TargetLoweringObjectFileImpl.h [AIX] Add traceback ssp canary bit support 2021-06-10 02:40:02 +00:00
TargetOpcodes.h [GlobalISel] Add G_ASSERT_ZEXT 2021-01-28 13:58:37 -08:00
TargetPassConfig.h [X86] Support AMX fast register allocation 2021-05-08 14:21:11 +08:00
TargetRegisterInfo.h Retire TargetRegisterInfo::getSpillAlignment 2021-05-07 15:16:22 +02:00
TargetSchedule.h
TargetSubtargetInfo.h
TileShapeInfo.h [llvm, clang] Remove stdlib includes from .h files without std:: 2021-04-27 12:41:39 -04:00
UnreachableBlockElim.h [llvm] Fix header guards (NFC) 2021-02-05 21:02:06 -08:00
ValueTypes.h Revert "Implementation of global.get/set for reftypes in LLVM IR" 2021-06-10 10:11:17 +00:00
ValueTypes.td [ValueTypes] Define MVTs for v6i32, v6f32, v7i32, v7f32 2021-06-11 08:58:16 +09:00
VirtRegMap.h [NFC] Const-ed 2 APIs in VirtRegMap 2021-02-26 09:32:42 -08:00
WasmEHFuncInfo.h [WebAssembly] Rename event to tag 2021-06-17 20:34:19 -07:00
WinEHFuncInfo.h