arcadia-devtools 094638589d intermediate changes 3 years ago
..
.yandex_meta 6a43bb89fc intermediate changes 3 years ago
AsmPrinter 094638589d intermediate changes 3 years ago
GlobalISel 094638589d intermediate changes 3 years ago
LiveDebugValues e9656aae26 Restoring authorship annotation for <shadchin@yandex-team.ru>. Commit 2 of 2. 3 years ago
MIRParser 094638589d intermediate changes 3 years ago
SelectionDAG 094638589d intermediate changes 3 years ago
AggressiveAntiDepBreaker.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
AggressiveAntiDepBreaker.h 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
AllocationOrder.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
AllocationOrder.h 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
Analysis.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
AtomicExpandPass.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
BasicBlockSections.cpp e9656aae26 Restoring authorship annotation for <shadchin@yandex-team.ru>. Commit 2 of 2. 3 years ago
BasicTargetTransformInfo.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
BranchFolding.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
BranchFolding.h 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
BranchRelaxation.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
BreakFalseDeps.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
BuiltinGCs.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
CFGuardLongjmp.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
CFIInstrInserter.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
CMakeLists.txt e28946633f Improve SystemCommand check in YDB CLI, KIKIMR-14321 3 years ago
CalcSpillWeights.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
CallingConvLower.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
CodeGen.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
CodeGenPassBuilder.cpp e9656aae26 Restoring authorship annotation for <shadchin@yandex-team.ru>. Commit 2 of 2. 3 years ago
CodeGenPrepare.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
CommandFlags.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
CriticalAntiDepBreaker.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
CriticalAntiDepBreaker.h 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
DFAPacketizer.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
DeadMachineInstructionElim.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
DetectDeadLanes.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
DwarfEHPrepare.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
EarlyIfConversion.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
EdgeBundles.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
ExecutionDomainFix.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
ExpandMemCmp.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
ExpandPostRAPseudos.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
ExpandReductions.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
FEntryInserter.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
FaultMaps.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
FinalizeISel.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
FixupStatepointCallerSaved.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
FuncletLayout.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
GCMetadata.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
GCMetadataPrinter.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
GCRootLowering.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
GCStrategy.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
GlobalMerge.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
HardwareLoops.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
IfConversion.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
ImplicitNullChecks.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
IndirectBrExpandPass.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
InlineSpiller.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
InterferenceCache.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
InterferenceCache.h 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
InterleavedAccessPass.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
InterleavedLoadCombinePass.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
IntrinsicLowering.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LLVMTargetMachine.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LatencyPriorityQueue.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LazyMachineBlockFrequencyInfo.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LexicalScopes.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LiveDebugVariables.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LiveDebugVariables.h 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LiveInterval.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LiveIntervalCalc.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LiveIntervalUnion.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LiveIntervals.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LivePhysRegs.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LiveRangeCalc.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LiveRangeEdit.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LiveRangeShrink.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LiveRangeUtils.h 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LiveRegMatrix.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LiveRegUnits.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LiveStacks.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LiveVariables.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LocalStackSlotAllocation.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LoopTraversal.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LowLevelType.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
LowerEmuTLS.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MBFIWrapper.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MIRCanonicalizerPass.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MIRNamerPass.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MIRPrinter.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MIRPrintingPass.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MIRVRegNamerUtils.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MIRVRegNamerUtils.h 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineBasicBlock.cpp 238dcee060 intermediate changes 3 years ago
MachineBlockFrequencyInfo.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineBlockPlacement.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineBranchProbabilityInfo.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineCSE.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineCheckDebugify.cpp e9656aae26 Restoring authorship annotation for <shadchin@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineCombiner.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineCopyPropagation.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineDebugify.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineDominanceFrontier.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineDominators.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineFrameInfo.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineFunction.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineFunctionPass.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineFunctionPrinterPass.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineFunctionSplitter.cpp e9656aae26 Restoring authorship annotation for <shadchin@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineInstr.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineInstrBundle.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineLICM.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineLoopInfo.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineLoopUtils.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineModuleInfo.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineModuleInfoImpls.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineOperand.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineOptimizationRemarkEmitter.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineOutliner.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachinePassManager.cpp e9656aae26 Restoring authorship annotation for <shadchin@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachinePipeliner.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachinePostDominators.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineRegionInfo.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineRegisterInfo.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineSSAUpdater.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineScheduler.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineSink.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineSizeOpts.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineStableHash.cpp e9656aae26 Restoring authorship annotation for <shadchin@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineStripDebug.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineTraceMetrics.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MachineVerifier.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MacroFusion.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
ModuloSchedule.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
MultiHazardRecognizer.cpp e9656aae26 Restoring authorship annotation for <shadchin@yandex-team.ru>. Commit 2 of 2. 3 years ago
NonRelocatableStringpool.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
OptimizePHIs.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
PHIElimination.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
PHIEliminationUtils.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
PHIEliminationUtils.h 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
ParallelCG.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
PatchableFunction.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
PeepholeOptimizer.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
PostRAHazardRecognizer.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
PostRASchedulerList.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
PreISelIntrinsicLowering.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
ProcessImplicitDefs.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
PrologEpilogInserter.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
PseudoProbeInserter.cpp e9656aae26 Restoring authorship annotation for <shadchin@yandex-team.ru>. Commit 2 of 2. 3 years ago
PseudoSourceValue.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
RDFGraph.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
RDFLiveness.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
RDFRegisters.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
README.txt 81eddc8c0b Restoring authorship annotation for <heretic@yandex-team.ru>. Commit 2 of 2. 3 years ago
ReachingDefAnalysis.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
RegAllocBase.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
RegAllocBase.h 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
RegAllocBasic.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
RegAllocFast.cpp 238dcee060 intermediate changes 3 years ago
RegAllocGreedy.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
RegAllocPBQP.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
RegUsageInfoCollector.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
RegUsageInfoPropagate.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
RegisterClassInfo.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
RegisterCoalescer.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
RegisterCoalescer.h 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
RegisterPressure.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
RegisterScavenging.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
RegisterUsageInfo.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
RenameIndependentSubregs.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
ResetMachineFunctionPass.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
SafeStack.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
SafeStackLayout.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
SafeStackLayout.h 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
ScheduleDAG.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
ScheduleDAGInstrs.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
ScheduleDAGPrinter.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
ScoreboardHazardRecognizer.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
ShadowStackGCLowering.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
ShrinkWrap.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
SjLjEHPrepare.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
SlotIndexes.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
SpillPlacement.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
SpillPlacement.h 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
SplitKit.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
SplitKit.h 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
StackColoring.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
StackMapLivenessAnalysis.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
StackMaps.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
StackProtector.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
StackSlotColoring.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
SwiftErrorValueTracking.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
SwitchLoweringUtils.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
TailDuplication.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
TailDuplicator.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
TargetFrameLoweringImpl.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
TargetInstrInfo.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
TargetLoweringBase.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
TargetLoweringObjectFileImpl.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
TargetOptionsImpl.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
TargetPassConfig.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
TargetRegisterInfo.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
TargetSchedule.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
TargetSubtargetInfo.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
TwoAddressInstructionPass.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
TypePromotion.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
UnreachableBlockElim.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
ValueTypes.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
VirtRegMap.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
WasmEHPrepare.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
WinEHPrepare.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago
XRayInstrumentation.cpp 2d37894b1b Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2. 3 years ago

README.txt

//===---------------------------------------------------------------------===//

Common register allocation / spilling problem:

mul lr, r4, lr
str lr, [sp, #+52]
ldr lr, [r1, #+32]
sxth r3, r3
ldr r4, [sp, #+52]
mla r4, r3, lr, r4

can be:

mul lr, r4, lr
mov r4, lr
str lr, [sp, #+52]
ldr lr, [r1, #+32]
sxth r3, r3
mla r4, r3, lr, r4

and then "merge" mul and mov:

mul r4, r4, lr
str r4, [sp, #+52]
ldr lr, [r1, #+32]
sxth r3, r3
mla r4, r3, lr, r4

It also increase the likelihood the store may become dead.

//===---------------------------------------------------------------------===//

bb27 ...
...
%reg1037 = ADDri %reg1039, 1
%reg1038 = ADDrs %reg1032, %reg1039, %noreg, 10
Successors according to CFG: 0x8b03bf0 (#5)

bb76 (0x8b03bf0, LLVM BB @0x8b032d0, ID#5):
Predecessors according to CFG: 0x8b0c5f0 (#3) 0x8b0a7c0 (#4)
%reg1039 = PHI %reg1070, mbb, %reg1037, mbb

Note ADDri is not a two-address instruction. However, its result %reg1037 is an
operand of the PHI node in bb76 and its operand %reg1039 is the result of the
PHI node. We should treat it as a two-address code and make sure the ADDri is
scheduled after any node that reads %reg1039.

//===---------------------------------------------------------------------===//

Use local info (i.e. register scavenger) to assign it a free register to allow
reuse:
ldr r3, [sp, #+4]
add r3, r3, #3
ldr r2, [sp, #+8]
add r2, r2, #2
ldr r1, [sp, #+4] <==
add r1, r1, #1
ldr r0, [sp, #+4]
add r0, r0, #2

//===---------------------------------------------------------------------===//

LLVM aggressively lift CSE out of loop. Sometimes this can be negative side-
effects:

R1 = X + 4
R2 = X + 7
R3 = X + 15

loop:
load [i + R1]
...
load [i + R2]
...
load [i + R3]

Suppose there is high register pressure, R1, R2, R3, can be spilled. We need
to implement proper re-materialization to handle this:

R1 = X + 4
R2 = X + 7
R3 = X + 15

loop:
R1 = X + 4 @ re-materialized
load [i + R1]
...
R2 = X + 7 @ re-materialized
load [i + R2]
...
R3 = X + 15 @ re-materialized
load [i + R3]

Furthermore, with re-association, we can enable sharing:

R1 = X + 4
R2 = X + 7
R3 = X + 15

loop:
T = i + X
load [T + 4]
...
load [T + 7]
...
load [T + 15]
//===---------------------------------------------------------------------===//

It's not always a good idea to choose rematerialization over spilling. If all
the load / store instructions would be folded then spilling is cheaper because
it won't require new live intervals / registers. See 2003-05-31-LongShifts for
an example.

//===---------------------------------------------------------------------===//

With a copying garbage collector, derived pointers must not be retained across
collector safe points; the collector could move the objects and invalidate the
derived pointer. This is bad enough in the first place, but safe points can
crop up unpredictably. Consider:

%array = load { i32, [0 x %obj] }** %array_addr
%nth_el = getelementptr { i32, [0 x %obj] }* %array, i32 0, i32 %n
%old = load %obj** %nth_el
%z = div i64 %x, %y
store %obj* %new, %obj** %nth_el

If the i64 division is lowered to a libcall, then a safe point will (must)
appear for the call site. If a collection occurs, %array and %nth_el no longer
point into the correct object.

The fix for this is to copy address calculations so that dependent pointers
are never live across safe point boundaries. But the loads cannot be copied
like this if there was an intervening store, so may be hard to get right.

Only a concurrent mutator can trigger a collection at the libcall safe point.
So single-threaded programs do not have this requirement, even with a copying
collector. Still, LLVM optimizations would probably undo a front-end's careful
work.

//===---------------------------------------------------------------------===//

The ocaml frametable structure supports liveness information. It would be good
to support it.

//===---------------------------------------------------------------------===//

The FIXME in ComputeCommonTailLength in BranchFolding.cpp needs to be
revisited. The check is there to work around a misuse of directives in inline
assembly.

//===---------------------------------------------------------------------===//

It would be good to detect collector/target compatibility instead of silently
doing the wrong thing.

//===---------------------------------------------------------------------===//

It would be really nice to be able to write patterns in .td files for copies,
which would eliminate a bunch of explicit predicates on them (e.g. no side
effects). Once this is in place, it would be even better to have tblgen
synthesize the various copy insertion/inspection methods in TargetInstrInfo.

//===---------------------------------------------------------------------===//

Stack coloring improvements:

1. Do proper LiveStacks analysis on all stack objects including those which are
not spill slots.
2. Reorder objects to fill in gaps between objects.
e.g. 4, 1, , 4, 1, 1, 1, , 4 => 4, 1, 1, 1, 1, 4, 4

//===---------------------------------------------------------------------===//

The scheduler should be able to sort nearby instructions by their address. For
example, in an expanded memset sequence it's not uncommon to see code like this:

movl $0, 4(%rdi)
movl $0, 8(%rdi)
movl $0, 12(%rdi)
movl $0, 0(%rdi)

Each of the stores is independent, and the scheduler is currently making an
arbitrary decision about the order.

//===---------------------------------------------------------------------===//

Another opportunitiy in this code is that the $0 could be moved to a register:

movl $0, 4(%rdi)
movl $0, 8(%rdi)
movl $0, 12(%rdi)
movl $0, 0(%rdi)

This would save substantial code size, especially for longer sequences like
this. It would be easy to have a rule telling isel to avoid matching MOV32mi
if the immediate has more than some fixed number of uses. It's more involved
to teach the register allocator how to do late folding to recover from
excessive register pressure.