| /llvm-project-15.0.7/llvm/test/Other/ |
| H A D | new-pass-manager.ll | 15 ; RUN: | FileCheck %s --check-prefix=CHECK-CGSCC-PASS 18 ; RUN: | FileCheck %s --check-prefix=CHECK-CGSCC-PASS 21 ; CHECK-CGSCC-PASS-NEXT: Running analysis: LazyCallGraphAnalysis 22 ; CHECK-CGSCC-PASS-NEXT: Running analysis: TargetLibraryAnalysis 23 ; CHECK-CGSCC-PASS-NEXT: Running analysis: FunctionAnalysisManagerCGSCCProxy 25 ; CHECK-CGSCC-PASS-NEXT: Running pass: NoOpCGSCCPass 312 ; RUN: | FileCheck %s --check-prefix=CHECK-REPEAT-CGSCC-PASS 319 ; CHECK-REPEAT-CGSCC-PASS-NEXT: Running pass: RepeatedPass 320 ; CHECK-REPEAT-CGSCC-PASS-NEXT: Running pass: NoOpCGSCCPass 321 ; CHECK-REPEAT-CGSCC-PASS-NEXT: Running pass: NoOpCGSCCPass [all …]
|
| H A D | opt-bisect-new-pass-manager.ll | 57 ; RUN: | FileCheck %s --check-prefix=CHECK-CGSCC-PASS 58 ; CHECK-CGSCC-PASS: BISECT: running pass (1) PostOrderFunctionAttrsPass on (f1) 59 ; CHECK-CGSCC-PASS: BISECT: running pass (2) PostOrderFunctionAttrsPass on (f2) 60 ; CHECK-CGSCC-PASS: BISECT: running pass (3) PostOrderFunctionAttrsPass on (f3) 61 ; CHECK-CGSCC-PASS: BISECT: running pass (4) PostOrderFunctionAttrsPass on (f4) 65 ; RUN: | FileCheck %s --check-prefix=CHECK-LIMIT-CGSCC-PASS 66 ; CHECK-LIMIT-CGSCC-PASS: BISECT: running pass (1) PostOrderFunctionAttrsPass on (f1) 67 ; CHECK-LIMIT-CGSCC-PASS: BISECT: running pass (2) PostOrderFunctionAttrsPass on (f2) 68 ; CHECK-LIMIT-CGSCC-PASS: BISECT: running pass (3) PostOrderFunctionAttrsPass on (f3) 69 ; CHECK-LIMIT-CGSCC-PASS: BISECT: NOT running pass (4) PostOrderFunctionAttrsPass on (f4)
|
| H A D | print-passes.ll | 9 ; CHECK: CGSCC passes: 11 ; CHECK: CGSCC analyses:
|
| H A D | pass-pipeline-parsing.ll | 179 ; RUN: | FileCheck %s --check-prefix=CHECK-PRINT-IN-CGSCC 180 ; CHECK-PRINT-IN-CGSCC: Running pass: PrintFunctionPass 181 ; CHECK-PRINT-IN-CGSCC: Running pass: VerifierPass 200 ; RUN: | FileCheck %s --check-prefix=CHECK-PIPELINE-ON-CGSCC-PASS 201 ; CHECK-PIPELINE-ON-CGSCC-PASS: invalid use of 'no-op-cgscc' pass as cgscc pipeline 227 ; RUN: /dev/null -disable-output 2>&1 | FileCheck %s -check-prefix=CHECK-UNKNOWN-CGSCC 228 ; CHECK-UNKNOWN-CGSCC: unknown cgscc pass 'bad'
|
| H A D | cgscc-libcall-update.ll | 1 ; Make sure that the CGSCC pass manager can handle when instcombine simplifies 7 ; that can trigger infinite CGSCC refinement if not handled correctly.
|
| H A D | cgscc-observe-devirt.ll | 2 ; the CGSCC pass manager correctly observes and re-visits SCCs that change 9 ; Also check that adding an extra CGSCC pass after the function update but
|
| H A D | cgscc-iterate-function-mutation.ll | 9 ; and the RefSCCs that those functions are in, we re-run the CGSCC passes to
|
| H A D | cgscc-devirt-iteration.ll | 1 ; The CGSCC pass manager includes an SCC iteration utility that tracks indirect
|
| H A D | new-pm-defaults.ll | 48 …ck %s --check-prefixes=CHECK-O,CHECK-DEFAULT,CHECK-O3,%llvmcheckext,CHECK-EP-CGSCC-LATE,CHECK-O23SZ 146 ; CHECK-EP-CGSCC-LATE-NEXT: Running pass: NoOpCGSCCPass
|
| /llvm-project-15.0.7/llvm/include/llvm/Transforms/Utils/ |
| H A D | CallGraphUpdater.h | 44 CallGraphSCC *CGSCC = nullptr; variable 65 this->CGSCC = &SCC; in initialize()
|
| /llvm-project-15.0.7/llvm/lib/Transforms/Utils/ |
| H A D | CallGraphUpdater.cpp | 121 CGSCC->DeleteNode(DeadCGN); in removeFunction() 136 CGSCC->ReplaceNode(OldCGN, NewCGN); in replaceFunctionWith()
|
| /llvm-project-15.0.7/llvm/test/Transforms/InstCombine/ |
| H A D | no_cgscc_assert.ll | 5 ; it should not cause a problem in CGSCC.
|
| /llvm-project-15.0.7/llvm/test/Transforms/InstSimplify/ |
| H A D | remove-dead-call.ll | 6 ; being made (when a call is removed CGSCC must be updated).
|
| /llvm-project-15.0.7/llvm/test/Analysis/LazyCallGraph/ |
| H A D | alias.ll | 3 ; Aliased function should be reachable in CGSCC.
|
| /llvm-project-15.0.7/llvm/test/Transforms/Coroutines/ |
| H A D | smoketest.ll | 18 ; a coroutine, it won't be put back into the CGSCC, and hence won't trigger a CoroElidePass
|
| /llvm-project-15.0.7/llvm/docs/ |
| H A D | NewPassManager.rst | 73 The IR hierarchy in terms of the new PM is Module -> (CGSCC ->) Function -> 74 Loop, where going through a CGSCC is optional. 114 Generally you want to group CGSCC/function/loop passes together in a pass 242 example parallelizing function passes over different functions in a CGSCC or 273 is deleted, or a CGSCC has become invalid due to call graph changes. 456 The nesting is: module (-> cgscc) -> function -> loop, where the CGSCC nesting is optional. 481 CGSCC, function, loop) they operate on, run
|
| /llvm-project-15.0.7/llvm/test/Transforms/Inline/ML/ |
| H A D | scc-dead-accounting.ll | 9 ; In this example if loop-unroll is ran after a mandatory inlining CGSCC pass,
|
| H A D | state-tracking-scc-splits.ll | 14 ; and the RefSCCs that those functions are in, we re-run the CGSCC passes to
|
| /llvm-project-15.0.7/llvm/lib/Transforms/IPO/ |
| H A D | PassManagerBuilder.cpp | 161 clEnumValN(AttributorRunOption::CGSCC, "cgscc", 659 if (AttributorRun & AttributorRunOption::CGSCC) in populateModulePassManager()
|
| H A D | OpenMPOpt.cpp | 185 BumpPtrAllocator &Allocator, SetVector<Function *> &CGSCC, in OMPInformationCache() 187 : InformationCache(M, AG, Allocator, &CGSCC), OMPBuilder(M), in OMPInformationCache() 5118 bool runOnSCC(CallGraphSCC &CGSCC) override { in runOnSCC() 5119 if (!containsOpenMP(CGSCC.getCallGraph().getModule())) in runOnSCC() 5121 if (DisableOpenMPOptimizations || skipSCC(CGSCC)) in runOnSCC() 5126 for (CallGraphNode *CGN : CGSCC) { in runOnSCC() 5136 Module &M = CGSCC.getCallGraph().getModule(); in runOnSCC() 5140 CGUpdater.initialize(CG, CGSCC); in runOnSCC()
|
| /llvm-project-15.0.7/llvm/test/Transforms/Inline/ |
| H A D | cgscc-invalidate.ll | 7 ; the verifier. We do the initial computation both *inside* the CGSCC walk and
|
| H A D | cgscc-update.ll | 3 ; that when the inliner mutates the call graph it correctly updates the CGSCC
|
| /llvm-project-15.0.7/llvm/lib/Target/AMDGPU/ |
| H A D | AMDGPUAttributor.cpp | 134 SetVector<Function *> *CGSCC, TargetMachine &TM) in AMDGPUInformationCache() argument 135 : InformationCache(M, AG, Allocator, CGSCC), TM(TM) {} in AMDGPUInformationCache()
|
| /llvm-project-15.0.7/llvm/include/llvm/Transforms/IPO/ |
| H A D | Attributor.h | 998 BumpPtrAllocator &Allocator, SetVector<Function *> *CGSCC) 1014 if (CGSCC) 1015 initializeModuleSlice(*CGSCC); 5142 CGSCC = 1 << 1, 5143 ALL = MODULE | CGSCC
|
| /llvm-project-15.0.7/llvm/lib/Passes/ |
| H A D | PassBuilderPipelines.cpp | 759 if (AttributorRun & AttributorRunOption::CGSCC) in buildInlinerPipeline()
|