Configuration for the instrumentor pass.
Declared in <llvm/Transforms/IPO/Instrumentor.h>
struct InstrumentationConfig;
It holds the information for each instrumented opportunity, including the base configuration options. Another class may inherit from this one to modify the default behavior.
| Name | Description |
|---|---|
InstrumentationConfig [constructor] | Construct an instrumentation configuration with the base options. |
~InstrumentationConfig [destructor] [virtual] | Destroy the instrumentation configuration. |
addBaseChoice | Add a base configuration option into the list of base options. |
addChoice | Register an instrumentation opportunity. |
getBasePointerInfo | Return the base pointer info for a value. |
getGlobalString | Return a global string constant for S, creating it if needed. |
getRTName | getRTName overloads |
init | Initialize the config to a clean base state without losing cached values. |
populate [virtual] | Populate the instrumentation opportunities. |
| Name | Description |
|---|---|
allocate | Allocate an object of type Ty using a bump allocator. |
| Name | Description |
|---|---|
BaseConfigurationOptions | The list of enabled base configuration options. |
BasePointerInfoMap | Map to remember base pointer info for values in a specific function. |
ConstantGlobalsCache | Mapping from constants to globals with the constant as initializer. |
DemangleFunctionNames | Whether function names passed to the runtime are demangled. |
FunctionRegex | Regex matched against function names to select instrumentation. |
GPUEnabled | Whether GPU targets are instrumented. |
GlobalStringsMap | Mapping to remember global strings passed to the runtime. |
HostEnabled | Whether non-GPU (host) targets are instrumented. |
IChoices | Registered instrumentation opportunities by location and name. |
InlineRuntimeEagerly | Whether runtime calls should be inlined eagerly. |
RuntimeBitcode | Path to runtime bitcode to link, if any. |
RuntimePrefix | The base configuration options. |
RuntimeStubsFile | File path where runtime stub declarations should be written. |
SS | String saver backed by StringAllocator. |
StringAllocator | Allocator used for configuration and opportunity strings. |
TargetRegex | Regex matched against the module target triple. |
UnderlyingObjsMap | Map to remember underlying objects for pointers. |
| Name | Description |
|---|---|
printRuntimeHeader | Print the runtime header file that provides helper structures and functions for reading data generated by the Instrumentor pass. |
printRuntimeStub | Print a runtime stub file with the implementation of the instrumentation runtime functions corresponding to the instrumentation opportunities enabled. |
readConfigFromJSON | Read the configuration from the file with path InputFile into IConf. |
writeConfigToJSON | Write the configuration in IConf to the file with path OutputFile. |