LLVM: include/llvm/Transforms/Coroutines/CoroSplit.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15#ifndef LLVM_TRANSFORMS_COROUTINES_COROSPLIT_H
16#define LLVM_TRANSFORMS_COROUTINES_COROSPLIT_H
17
23
24namespace llvm {
25
26namespace coro {
29}
30
34
36
39
43
48
52
54
55
57
58
60};
61}
62
63#endif
This header provides classes for managing passes over SCCs of the call graph.
This header defines various interfaces for pass management in LLVM.
Implements a lazy call graph analysis and related passes for the new pass manager.
An SCC of the call graph.
A lazily constructed view of the call graph of a module.
A set of analyses that are preserved following a run of a transformation pass.
This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small.
@ C
The default llvm calling convention, compatible with C.
This is an optimization pass for GlobalISel generic memory operations.
AnalysisManager< LazyCallGraph::SCC, LazyCallGraph & > CGSCCAnalysisManager
The CGSCC analysis manager.
Support structure for SCC passes to communicate updates the call graph back to the CGSCC pass manager...
LLVM_ABI PreservedAnalyses run(LazyCallGraph::SCC &C, CGSCCAnalysisManager &AM, LazyCallGraph &CG, CGSCCUpdateResult &UR)
LLVM_ABI CoroSplitPass(bool OptimizeFrame=false)
BaseABITy CreateAndInitABI
Definition CoroSplit.h:56
static bool isRequired()
Definition CoroSplit.h:53
std::function< std::unique_ptr< coro::BaseABI >(Function &, coro::Shape &)> BaseABITy
Definition CoroSplit.h:32
bool OptimizeFrame
Definition CoroSplit.h:59
A CRTP mix-in to automatically provide informational APIs needed for passes.