Home
last modified time | relevance | path

Searched refs:CodeExtractor (Results 1 – 21 of 21) sorted by relevance

/llvm-project/llvm/unittests/Transforms/Utils/
H A DCodeExtractorTest.cpp1 //===- CodeExtractor.cpp - Unit tests for CodeExtractor -------------------===//
9 #include "llvm/Transforms/Utils/CodeExtractor.h"
41 TEST(CodeExtractor, ExitStub) { in TEST()
71 CodeExtractor CE(Candidates); in TEST()
89 TEST(CodeExtractor, InputOutputMonitoring) { in TEST()
119 CodeExtractor CE(Candidates); in TEST()
147 TEST(CodeExtractor, ExitBlockOrderingPhis) { in TEST()
179 CodeExtractor CE(Candidates); in TEST()
205 TEST(CodeExtractor, ExitBlockOrderin in TEST()
33 TEST(CodeExtractor,ExitStub) TEST() argument
81 TEST(CodeExtractor,InputOutputMonitoring) TEST() argument
139 TEST(CodeExtractor,ExitBlockOrderingPhis) TEST() argument
197 TEST(CodeExtractor,ExitBlockOrdering) TEST() argument
254 TEST(CodeExtractor,ExitPHIOnePredFromRegion) TEST() argument
305 TEST(CodeExtractor,StoreOutputInvokeResultAfterEHPad) TEST() argument
372 TEST(CodeExtractor,StoreOutputInvokeResultInExitStub) TEST() argument
407 TEST(CodeExtractor,ExtractAndInvalidateAssumptionCache) TEST() argument
460 TEST(CodeExtractor,RemoveBitcastUsesFromOuterLifetimeMarkers) TEST() argument
509 TEST(CodeExtractor,PartialAggregateArgs) TEST() argument
559 TEST(CodeExtractor,OpenMPAggregateArgs) TEST() argument
[all...]
/llvm-project/llvm/include/llvm/Transforms/IPO/
H A DHotColdSplitting.h28 class CodeExtractor; variable
53 bool isSplittingBeneficial(CodeExtractor &CE, const BlockSequence &Region,
55 Function *extractColdRegion(BasicBlock &EntryPoint, CodeExtractor &CE,
H A DIROutliner.h120 CodeExtractor *CE = nullptr;
343 SpecificBumpPtrAllocator<CodeExtractor> ExtractorAllocator;
/llvm-project/llvm/lib/Transforms/Utils/
H A DCodeExtractor.cpp1 //===- CodeExtractor.cpp - Pull code region into a new function -----------===//
15 #include "llvm/Transforms/Utils/CodeExtractor.h"
243 CodeExtractor::CodeExtractor(ArrayRef<BasicBlock *> BBs, DominatorTree *DT,
361 bool CodeExtractor::isLegalToShrinkwrapLifetimeMarkers( in findSideEffectInfoForBlock()
375 CodeExtractor::findOrCreateBlockForHoisting(BasicBlock *CommonExitBlock) { in isLegalToShrinkwrapLifetimeMarkers()
431 CodeExtractor::LifetimeMarkerInfo in findOrCreateBlockForHoisting()
432 CodeExtractor::getLifetimeMarkers(const CodeExtractorAnalysisCache &CEAC, in findOrCreateBlockForHoisting()
481 void CodeExtractor::findAllocas(const CodeExtractorAnalysisCache &CEAC, in getLifetimeMarkers()
606 bool CodeExtractor in findAllocas()
244 CodeExtractor::CodeExtractor(ArrayRef<BasicBlock *> BBs, DominatorTree *DT, CodeExtractor() function in CodeExtractor
256 CodeExtractor::CodeExtractor(DominatorTree &DT, Loop &L, bool AggregateArgs, CodeExtractor() function in CodeExtractor
[all...]
H A DCMakeLists.txt16 CodeExtractor.cpp
/llvm-project/llvm/include/llvm/Transforms/Utils/
H A DCodeExtractor.h1 //===- Transform/Utils/CodeExtractor.h - Code extraction util ---*- C++ -*-===//
40 /// A cache for the CodeExtractor analysis. The operation \ref
41 /// CodeExtractor::extractCodeRegion is guaranteed not to invalidate this
64 /// due to \ref CodeExtractor::extractCodeRegion.
85 class CodeExtractor {
151 CodeExtractor(ArrayRef<BasicBlock *> BBs, DominatorTree *DT = nullptr,
161 /// Returns zero when called on a CodeExtractor instance where isEligible
168 /// \param CEAC - Cache to speed up operations for the CodeExtractor when
174 /// \returns zero when called on a CodeExtractor instance where isEligible
/llvm-project/llvm/lib/Transforms/IPO/
H A DHotColdSplitting.cpp55 #include "llvm/Transforms/Utils/CodeExtractor.h"
166 // follows that invoke instructions cannot be extracted, because CodeExtractor in mayExtractBlock()
331 // and new outputs are created to supply the split phis. CodeExtractor can't in getOutliningPenalty()
390 bool HotColdSplitting::isSplittingBeneficial(CodeExtractor &CE,
413 BasicBlock &EntryPoint, CodeExtractor &CE, in extractColdRegion()
651 SmallVector<std::pair<BasicBlock *, CodeExtractor>, 2> OutliningWorklist; in outlineColdRegions()
720 CodeExtractor CE( in outlineColdRegions()
764 // Cache and recycle the CodeExtractor analysis to avoid O(n^2) compile-time. in run()
H A DBlockExtractor.cpp172 Function *F = CodeExtractor(BlocksToExtractVec).extractCodeRegion(CEAC); in runOnModule()
H A DLoopExtractor.cpp28 #include "llvm/Transforms/Utils/CodeExtractor.h"
244 CodeExtractor Extractor(L->getBlocks(), &DT, false, nullptr, nullptr, AC); in extractLoop()
H A DPartialInlining.cpp52 #include "llvm/Transforms/Utils/CodeExtractor.h"
1095 // The CodeExtractor needs a dominator tree. in doMultiRegionFunctionOutlining()
1104 // Cache and recycle the CodeExtractor analysis to avoid O(n^2) compile-time. in doMultiRegionFunctionOutlining()
1113 CodeExtractor CE(RegionInfo.Region, &DT, /*AggregateArgs*/ false, in doMultiRegionFunctionOutlining()
1167 // The CodeExtractor needs a dominator tree. in doSingleRegionFunctionOutlining()
1195 CodeExtractor(ToExtract, &DT, /*AggregateArgs*/ false, in doSingleRegionFunctionOutlining()
H A DIROutliner.cpp796 /// Find the GVN for the inputs that have been found by the CodeExtractor. in findConstants()
801 /// CodeExtractor.
861 /// \param [out] Outputs - The set of values extracted by the CodeExtractor
869 // OverallInputs are the inputs to the region found by the CodeExtractor, in getCodeExtractorArguments()
870 // SinkCands and HoistCands are used by the CodeExtractor to find sunken in getCodeExtractorArguments()
873 // CodeExtractor, removing conditions such as sunken allocas, but that in getCodeExtractorArguments()
883 CodeExtractor *CE = Region.CE; in getCodeExtractorArguments()
1081 /// value has been marked by the CodeExtractor as an output.
1411 // Map the inputs found by the CodeExtractor to the arguments found for in findAddInputsOutputs()
1415 // Map the outputs found by the CodeExtractor t in findAddInputsOutputs()
[all...]
/llvm-project/llvm/test/Transforms/CodeExtractor/
H A DMultipleExitBranchProb.ll3 ; This test checks to make sure that CodeExtractor updates
H A DExtractedFnEntryCount.ll3 ; This test checks to make sure that the CodeExtractor
H A DPartialInlineEntryPHICost.ll4 ; the outlined region entry (BB4) are moved outside the region by CodeExtractor.
/llvm-project/llvm/test/Transforms/IROutliner/
H A Dillegal-allocas.ll5 ; inconsistencies with the CodeExtractor's algorithm.
H A Dillegal-assumes.ll5 ; in the CodeExtractor's algorithm for llvm.assumes, so we ignore it for now.
/llvm-project/llvm/utils/gn/secondary/llvm/lib/Transforms/Utils/
H A DBUILD.gn24 "CodeExtractor.cpp",
/llvm-project/llvm/test/Transforms/CodeExtractor/X86/
H A DInheritTargetAttributes.ll3 ; This testcase checks to see if CodeExtractor properly inherits
/llvm-project/llvm/test/Transforms/HotColdSplit/
H A Dupdate-split-loop-metadata.ll3 ; Check that llvm.loop metadata extracted by CodeExtractor is updated so that
H A Dlifetime-markers-on-inputs-1.ll37 ; merging of stack slots. CodeExtractor must replicate the effects of
/llvm-project/llvm/lib/Frontend/OpenMP/
H A DOMPIRBuilder.cpp56 #include "llvm/Transforms/Utils/CodeExtractor.h"
723 // CodeExtractor generates correct code for extracted functions in finalize()
726 CodeExtractor Extractor(Blocks, /* DominatorTree */ nullptr, in finalize()
773 // basic block of the parallel region. CodeExtractor generates in finalize()
1608 CodeExtractor Extractor(Blocks, /* DominatorTree */ nullptr, in createParallel()
4572 CodeExtractor Extractor(Blocks, in applyDynamicWorkshareLoop()