struct AttributorConfig
Declaration
struct AttributorConfig { /* full declaration omitted */ };
Description
Configuration for the Attributor.
Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:1242
Member Variables
- public bool IsModulePass = true
- Is the user of the Attributor a module pass or not. This determines what IR we can look at and modify. If it is a module pass we might deduce facts outside the initial function set and modify functions outside that set, but only as part of the optimization of the functions in the initial function set. For CGSCC passes we can look at the IR of the module slice but never run any deduction, or perform any modification, outside the initial function set (which we assume is the SCC).
- public bool DeleteFns = true
- Flag to determine if we can delete functions or keep dead ones around.
- public bool RewriteSignatures = true
- Flag to determine if we rewrite function signatures.
- public bool DefaultInitializeLiveInternals = true
- Flag to determine if we want to initialize all default AAs for an internal function marked live. TODO: This should probably be a callback, or maybe identifyDefaultAbstractAttributes should be virtual, something to allow customizable lazy initialization for internal functions.
- public llvm::CallGraphUpdater& CGUpdater
- Helper to update an underlying call graph and to delete functions.
- public DenseSet<const char*>* Allowed = nullptr
- If not null, a set limiting the attribute opportunities.
- public Optional<unsigned int> MaxFixpointIterations = None
- Maximum number of iterations to run until fixpoint.
- public llvm::AttributorConfig::OptimizationRemarkGetter OREGetter = nullptr
- public const char* PassName = nullptr
- The name of the pass running the attributor, used to emit remarks.
Method Overview
- public AttributorConfig(llvm::CallGraphUpdater & CGUpdater)
Methods
ΒΆAttributorConfig(
llvm::CallGraphUpdater& CGUpdater)
AttributorConfig(
llvm::CallGraphUpdater& CGUpdater)
Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:1244
Parameters
- llvm::CallGraphUpdater& CGUpdater