LLVM 20.0.0git
CodeGen Directory Reference
Directory dependency graph for CodeGen:
lib/CodeGen

Directories

directory  AsmPrinter
 
directory  GlobalISel
 
directory  LiveDebugValues
 
directory  MIRParser
 
directory  SelectionDAG
 

Files

file  AggressiveAntiDepBreaker.cpp [code]
 
file  AggressiveAntiDepBreaker.h [code]
 
file  AllocationOrder.cpp [code]
 
file  AllocationOrder.h [code]
 
file  Analysis.cpp [code]
 
file  AssignmentTrackingAnalysis.cpp [code]
 
file  AtomicExpandPass.cpp [code]
 
file  BasicBlockPathCloning.cpp [code]
 BasicBlockPathCloning implementation.
 
file  BasicBlockSections.cpp [code]
 
file  BasicBlockSectionsProfileReader.cpp [code]
 
file  BasicTargetTransformInfo.cpp [code]
 This file provides the implementation of a basic TargetTransformInfo pass predicated on the target abstractions present in the target independent code generator.
 
file  BranchFolding.cpp [code]
 
file  BranchFolding.h [code]
 
file  BranchRelaxation.cpp [code]
 
file  BreakFalseDeps.cpp [code]
 
file  CalcSpillWeights.cpp [code]
 
file  CallBrPrepare.cpp [code]
 
file  CallingConvLower.cpp [code]
 
file  CFGuardLongjmp.cpp [code]
 This file contains a machine function pass to insert a symbol after each call to _setjmp and store this in the MachineFunction's LongjmpTargets vector.
 
file  CFIFixup.cpp [code]
 
file  CFIInstrInserter.cpp [code]
 
file  CodeGen.cpp [code]
 
file  CodeGenCommonISel.cpp [code]
 
file  CodeGenPrepare.cpp [code]
 
file  CodeGenTargetMachineImpl.cpp [code]
 
file  CommandFlags.cpp [code]
 
file  ComplexDeinterleavingPass.cpp [code]
 
file  CriticalAntiDepBreaker.cpp [code]
 
file  CriticalAntiDepBreaker.h [code]
 
file  DeadMachineInstructionElim.cpp [code]
 
file  DetectDeadLanes.cpp [code]
 Analysis that tracks defined/used subregister lanes across COPY instructions and instructions that get lowered to a COPY (PHI, REG_SEQUENCE, INSERT_SUBREG, EXTRACT_SUBREG).
 
file  DFAPacketizer.cpp [code]
 
file  DwarfEHPrepare.cpp [code]
 
file  EarlyIfConversion.cpp [code]
 
file  EdgeBundles.cpp [code]
 
file  EHContGuardCatchret.cpp [code]
 This file contains a machine function pass to insert a symbol before each valid catchret target and store this in the MachineFunction's CatchRetTargets vector.
 
file  ExecutionDomainFix.cpp [code]
 
file  ExpandLargeDivRem.cpp [code]
 
file  ExpandLargeFpConvert.cpp [code]
 
file  ExpandMemCmp.cpp [code]
 
file  ExpandPostRAPseudos.cpp [code]
 
file  ExpandReductions.cpp [code]
 
file  ExpandVectorPredication.cpp [code]
 
file  FaultMaps.cpp [code]
 
file  FEntryInserter.cpp [code]
 
file  FinalizeISel.cpp [code]
 
file  FixupStatepointCallerSaved.cpp [code]
 Statepoint instruction in deopt parameters contains values which are meaningful to the runtime and should be able to be read at the moment the call returns.
 
file  FuncletLayout.cpp [code]
 
file  GCEmptyBasicBlocks.cpp [code]
 This file contains the implementation of empty blocks garbage collection pass.
 
file  GCMetadata.cpp [code]
 
file  GCMetadataPrinter.cpp [code]
 
file  GCRootLowering.cpp [code]
 
file  GlobalMerge.cpp [code]
 
file  GlobalMergeFunctions.cpp [code]
 
file  HardwareLoops.cpp [code]
 Insert hardware loop intrinsics into loops which are deemed profitable by the target, by querying TargetTransformInfo.
 
file  IfConversion.cpp [code]
 
file  ImplicitNullChecks.cpp [code]
 
file  IndirectBrExpandPass.cpp [code]
 Implements an expansion pass to turn indirectbr instructions in the IR into switch instructions.
 
file  InitUndef.cpp [code]
 
file  InlineSpiller.cpp [code]
 
file  InterferenceCache.cpp [code]
 
file  InterferenceCache.h [code]
 
file  InterleavedAccessPass.cpp [code]
 
file  InterleavedLoadCombinePass.cpp [code]
 
file  IntrinsicLowering.cpp [code]
 
file  JMCInstrumenter.cpp [code]
 
file  KCFI.cpp [code]
 
file  LatencyPriorityQueue.cpp [code]
 
file  LazyMachineBlockFrequencyInfo.cpp [code]
 ===- LazyMachineBlockFrequencyInfo.cpp - Lazy Machine Block Frequency –===//
 
file  LexicalScopes.cpp [code]
 
file  LiveDebugVariables.cpp [code]
 
file  LiveInterval.cpp [code]
 
file  LiveIntervalCalc.cpp [code]
 
file  LiveIntervals.cpp [code]
 
file  LiveIntervalUnion.cpp [code]
 
file  LivePhysRegs.cpp [code]
 
file  LiveRangeCalc.cpp [code]
 
file  LiveRangeEdit.cpp [code]
 
file  LiveRangeShrink.cpp [code]
 ===------------------------------------------------------------------—===//
 
file  LiveRangeUtils.h [code]
 This file contains helper functions to modify live ranges.
 
file  LiveRegMatrix.cpp [code]
 
file  LiveRegUnits.cpp [code]
 
file  LiveStacks.cpp [code]
 
file  LiveVariables.cpp [code]
 
file  LocalStackSlotAllocation.cpp [code]
 
file  LoopTraversal.cpp [code]
 
file  LowerEmuTLS.cpp [code]
 
file  LowLevelTypeUtils.cpp [code]
 
file  MachineBasicBlock.cpp [code]
 
file  MachineBlockFrequencyInfo.cpp [code]
 
file  MachineBlockPlacement.cpp [code]
 
file  MachineBranchProbabilityInfo.cpp [code]
 
file  MachineCFGPrinter.cpp [code]
 
file  MachineCheckDebugify.cpp [code]
 
file  MachineCombiner.cpp [code]
 
file  MachineConvergenceVerifier.cpp [code]
 
file  MachineCopyPropagation.cpp [code]
 
file  MachineCSE.cpp [code]
 
file  MachineCycleAnalysis.cpp [code]
 
file  MachineDebugify.cpp [code]
 
file  MachineDominanceFrontier.cpp [code]
 
file  MachineDominators.cpp [code]
 
file  MachineDomTreeUpdater.cpp [code]
 
file  MachineFrameInfo.cpp [code]
 
file  MachineFunction.cpp [code]
 
file  MachineFunctionAnalysis.cpp [code]
 
file  MachineFunctionPass.cpp [code]
 
file  MachineFunctionPrinterPass.cpp [code]
 
file  MachineFunctionSplitter.cpp [code]
 
file  MachineInstr.cpp [code]
 
file  MachineInstrBundle.cpp [code]
 
file  MachineLateInstrsCleanup.cpp [code]
 
file  MachineLICM.cpp [code]
 
file  MachineLoopInfo.cpp [code]
 
file  MachineLoopUtils.cpp [code]
 
file  MachineModuleInfo.cpp [code]
 
file  MachineModuleInfoImpls.cpp [code]
 
file  MachineModuleSlotTracker.cpp [code]
 
file  MachineOperand.cpp [code]
 
file  MachineOptimizationRemarkEmitter.cpp [code]
 ===- MachineOptimizationRemarkEmitter.cpp - Opt Diagnostic -*- C++ -*—===//
 
file  MachineOutliner.cpp [code]
 Replaces repeated sequences of instructions with function calls.
 
file  MachinePassManager.cpp [code]
 
file  MachinePipeliner.cpp [code]
 
file  MachinePostDominators.cpp [code]
 
file  MachineRegionInfo.cpp [code]
 
file  MachineRegisterInfo.cpp [code]
 
file  MachineScheduler.cpp [code]
 
file  MachineSink.cpp [code]
 
file  MachineSizeOpts.cpp [code]
 
file  MachineSSAContext.cpp [code]
 This file defines a specialization of the GenericSSAContext<X> template class for Machine IR.
 
file  MachineSSAUpdater.cpp [code]
 
file  MachineStableHash.cpp [code]
 
file  MachineStripDebug.cpp [code]
 
file  MachineTraceMetrics.cpp [code]
 
file  MachineUniformityAnalysis.cpp [code]
 
file  MachineVerifier.cpp [code]
 
file  MacroFusion.cpp [code]
 
file  MBFIWrapper.cpp [code]
 
file  MIRCanonicalizerPass.cpp [code]
 
file  MIRFSDiscriminator.cpp [code]
 
file  MIRNamerPass.cpp [code]
 
file  MIRPrinter.cpp [code]
 
file  MIRPrintingPass.cpp [code]
 
file  MIRSampleProfile.cpp [code]
 
file  MIRVRegNamerUtils.cpp [code]
 
file  MIRVRegNamerUtils.h [code]
 
file  MIRYamlMapping.cpp [code]
 
file  MLRegAllocEvictAdvisor.cpp [code]
 
file  MLRegAllocEvictAdvisor.h [code]
 
file  MLRegAllocPriorityAdvisor.cpp [code]
 
file  ModuloSchedule.cpp [code]
 
file  MultiHazardRecognizer.cpp [code]
 
file  NonRelocatableStringpool.cpp [code]
 
file  OptimizePHIs.cpp [code]
 
file  PatchableFunction.cpp [code]
 
file  PeepholeOptimizer.cpp [code]
 
file  PHIElimination.cpp [code]
 
file  PHIEliminationUtils.cpp [code]
 
file  PHIEliminationUtils.h [code]
 
file  PostRAHazardRecognizer.cpp [code]
 This runs the hazard recognizer and emits noops when necessary.
 
file  PostRASchedulerList.cpp [code]
 
file  PreISelIntrinsicLowering.cpp [code]
 
file  ProcessImplicitDefs.cpp [code]
 
file  PrologEpilogInserter.cpp [code]
 
file  PseudoProbeInserter.cpp [code]
 
file  PseudoSourceValue.cpp [code]
 
file  RDFGraph.cpp [code]
 
file  RDFLiveness.cpp [code]
 
file  RDFRegisters.cpp [code]
 
file  ReachingDefAnalysis.cpp [code]
 
file  RegAllocBase.cpp [code]
 
file  RegAllocBase.h [code]
 
file  RegAllocBasic.cpp [code]
 
file  RegAllocEvictionAdvisor.cpp [code]
 
file  RegAllocEvictionAdvisor.h [code]
 
file  RegAllocFast.cpp [code]
 
file  RegAllocGreedy.cpp [code]
 
file  RegAllocGreedy.h [code]
 
file  RegAllocPBQP.cpp [code]
 
file  RegAllocPriorityAdvisor.cpp [code]
 
file  RegAllocPriorityAdvisor.h [code]
 
file  RegAllocScore.cpp [code]
 
file  RegAllocScore.h [code]
 
file  RegisterBank.cpp [code]
 This file implements the RegisterBank class.
 
file  RegisterBankInfo.cpp [code]
 This file implements the RegisterBankInfo class.
 
file  RegisterClassInfo.cpp [code]
 
file  RegisterCoalescer.cpp [code]
 
file  RegisterCoalescer.h [code]
 
file  RegisterPressure.cpp [code]
 
file  RegisterScavenging.cpp [code]
 This file implements the machine register scavenger.
 
file  RegisterUsageInfo.cpp [code]
 
file  RegUsageInfoCollector.cpp [code]
 
file  RegUsageInfoPropagate.cpp [code]
 
file  RemoveLoadsIntoFakeUses.cpp [code]
 The FAKE_USE instruction is used to preserve certain values through optimizations for the sake of debugging.
 
file  RemoveRedundantDebugValues.cpp [code]
 The RemoveRedundantDebugValues pass removes redundant DBG_VALUEs that appear in MIR after the register allocator.
 
file  RenameIndependentSubregs.cpp [code]
 
file  ReplaceWithVeclib.cpp [code]
 
file  ResetMachineFunctionPass.cpp [code]
 This file implements a pass that will conditionally reset a machine function as if it was just created.
 
file  SafeStack.cpp [code]
 
file  SafeStackLayout.cpp [code]
 
file  SafeStackLayout.h [code]
 
file  SanitizerBinaryMetadata.cpp [code]
 
file  ScheduleDAG.cpp [code]
 
file  ScheduleDAGInstrs.cpp [code]
 
file  ScheduleDAGPrinter.cpp [code]
 
file  ScoreboardHazardRecognizer.cpp [code]
 
file  SelectOptimize.cpp [code]
 
file  ShadowStackGCLowering.cpp [code]
 
file  ShrinkWrap.cpp [code]
 
file  SjLjEHPrepare.cpp [code]
 
file  SlotIndexes.cpp [code]
 
file  SpillPlacement.cpp [code]
 
file  SplitKit.cpp [code]
 
file  SplitKit.h [code]
 
file  StackColoring.cpp [code]
 
file  StackFrameLayoutAnalysisPass.cpp [code]
 
file  StackMapLivenessAnalysis.cpp [code]
 
file  StackMaps.cpp [code]
 
file  StackProtector.cpp [code]
 
file  StackSlotColoring.cpp [code]
 
file  SwiftErrorValueTracking.cpp [code]
 
file  SwitchLoweringUtils.cpp [code]
 
file  TailDuplication.cpp [code]
 
file  TailDuplicator.cpp [code]
 
file  TargetFrameLoweringImpl.cpp [code]
 
file  TargetInstrInfo.cpp [code]
 
file  TargetLoweringBase.cpp [code]
 
file  TargetLoweringObjectFileImpl.cpp [code]
 
file  TargetOptionsImpl.cpp [code]
 
file  TargetPassConfig.cpp [code]
 
file  TargetRegisterInfo.cpp [code]
 
file  TargetSchedule.cpp [code]
 
file  TargetSubtargetInfo.cpp [code]
 
file  TwoAddressInstructionPass.cpp [code]
 
file  TypePromotion.cpp [code]
 This is an opcode based type promotion pass for small types that would otherwise be promoted during legalisation.
 
file  UnreachableBlockElim.cpp [code]
 
file  ValueTypes.cpp [code]
 
file  VirtRegMap.cpp [code]
 
file  VLIWMachineScheduler.cpp [code]
 
file  WasmEHPrepare.cpp [code]
 
file  WindowScheduler.cpp [code]
 
file  WinEHPrepare.cpp [code]
 
file  XRayInstrumentation.cpp [code]