|
Enzyme main
|
#include "CApi.h"#include "Utils.h"#include "SCEV/ScalarEvolution.h"#include "SCEV/ScalarEvolutionExpander.h"#include "DiffeGradientUtils.h"#include "DifferentialUseAnalysis.h"#include "EnzymeLogic.h"#include "GradientUtils.h"#include "LibraryFuncs.h"#include "SCEV/TargetLibraryInfo.h"#include "TraceInterface.h"#include "llvm/Analysis/CallGraph.h"#include "llvm/Analysis/GlobalsModRef.h"#include "llvm/IR/DIBuilder.h"#include "llvm/IR/MDBuilder.h"#include "llvm/Transforms/Utils/Cloning.h"#include "llvm/IR/LegacyPassManager.h"#include "llvm/Transforms/IPO/Attributor.h"
Go to the source code of this file.
Classes | |
| struct | MyAttributorLegacyPass |
Macros | |
| #define | addAttribute addAttributeAtIndex |
| #define | removeAttribute removeAttributeAtIndex |
| #define | getAttribute getAttributeAtIndex |
| #define | hasAttribute hasAttributeAtIndex |
Functions | |
| TargetLibraryInfo | eunwrap (LLVMTargetLibraryInfoRef P) |
| EnzymeLogic & | eunwrap (EnzymeLogicRef LR) |
| TraceInterface * | eunwrap (EnzymeTraceInterfaceRef Ref) |
| TypeAnalysis & | eunwrap (EnzymeTypeAnalysisRef TAR) |
| AugmentedReturn * | eunwrap (EnzymeAugmentedReturnPtr ARP) |
| EnzymeAugmentedReturnPtr | ewrap (const AugmentedReturn &AR) |
| ConcreteType | eunwrap (CConcreteType CDT, llvm::LLVMContext &ctx) |
| std::vector< int > | eunwrap (IntList IL) |
| std::set< int64_t > | eunwrap64 (IntList IL) |
| TypeTree | eunwrap (CTypeTreeRef CTT) |
| CConcreteType | ewrap (const ConcreteType &CT) |
| IntList | ewrap (const std::vector< int > &offsets) |
| CTypeTreeRef | ewrap (const TypeTree &TT) |
| FnTypeInfo | eunwrap (CFnTypeInfo CTI, llvm::Function *F) |
| void | EnzymeSetCLBool (void *ptr, uint8_t val) |
| uint8_t | EnzymeGetCLBool (void *ptr) |
| void | EnzymeSetCLInteger (void *ptr, int64_t val) |
| int64_t | EnzymeGetCLInteger (void *ptr) |
| void | EnzymeSetCLString (void *ptr, const char *val) |
| EnzymeLogicRef | CreateEnzymeLogic (uint8_t PostOpt) |
| void | EnzymeLogicSetExternalContext (EnzymeLogicRef Ref, void *ExternalContext) |
| void * | EnzymeLogicGetExternalContext (EnzymeLogicRef Ref) |
| EnzymeTraceInterfaceRef | FindEnzymeStaticTraceInterface (LLVMModuleRef M) |
| EnzymeTraceInterfaceRef | CreateEnzymeStaticTraceInterface (LLVMContextRef C, LLVMValueRef getTraceFunction, LLVMValueRef getChoiceFunction, LLVMValueRef insertCallFunction, LLVMValueRef insertChoiceFunction, LLVMValueRef insertArgumentFunction, LLVMValueRef insertReturnFunction, LLVMValueRef insertFunctionFunction, LLVMValueRef insertChoiceGradientFunction, LLVMValueRef insertArgumentGradientFunction, LLVMValueRef newTraceFunction, LLVMValueRef freeTraceFunction, LLVMValueRef hasCallFunction, LLVMValueRef hasChoiceFunction) |
| EnzymeTraceInterfaceRef | CreateEnzymeDynamicTraceInterface (LLVMValueRef interface, LLVMValueRef F) |
| void | ClearEnzymeLogic (EnzymeLogicRef Ref) |
| void | EnzymeLogicErasePreprocessedFunctions (EnzymeLogicRef Ref) |
| void | FreeEnzymeLogic (EnzymeLogicRef Ref) |
| void | FreeTraceInterface (EnzymeTraceInterfaceRef Ref) |
| EnzymeTypeAnalysisRef | CreateTypeAnalysis (EnzymeLogicRef Log, char **customRuleNames, CustomRuleType *customRules, size_t numRules) |
| void | ClearTypeAnalysis (EnzymeTypeAnalysisRef TAR) |
| void | FreeTypeAnalysis (EnzymeTypeAnalysisRef TAR) |
| EnzymeLogicRef | EnzymeTypeAnalysisGetLogic (EnzymeTypeAnalysisRef TAR) |
| void * | EnzymeAnalyzeTypes (EnzymeTypeAnalysisRef TAR, CFnTypeInfo CTI, LLVMValueRef F) |
| void * | EnzymeGradientUtilsTypeAnalyzer (GradientUtils *G) |
| EnzymeTypeAnalysisRef | EnzymeGetTypeAnalysisFromTypeAnalyzer (void *TAR) |
| void | EnzymeGradientUtilsErase (GradientUtils *G, LLVMValueRef I) |
| void | EnzymeGradientUtilsEraseWithPlaceholder (GradientUtils *G, LLVMValueRef I, LLVMValueRef orig, uint8_t erase) |
| void | EnzymeGradientUtilsReplaceAWithB (GradientUtils *G, LLVMValueRef A, LLVMValueRef B) |
| void | EnzymeRegisterAllocationHandler (char *Name, CustomShadowAlloc AHandle, CustomShadowFree FHandle) |
| void | EnzymeRegisterCallHandler (const char *Name, CustomAugmentedFunctionForward FwdHandle, CustomFunctionReverse RevHandle) |
| void | EnzymeRegisterFwdCallHandler (char *Name, CustomFunctionForward FwdHandle) |
| void | EnzymeRegisterDiffUseCallHandler (char *Name, CustomFunctionDiffUse Handle) |
| uint8_t | EnzymeGradientUtilsGetRuntimeActivity (GradientUtils *gutils) |
| void * | EnzymeGradientUtilsGetExternalContext (GradientUtils *gutils) |
| uint8_t | EnzymeGradientUtilsGetStrongZero (GradientUtils *gutils) |
| uint8_t | EnzymeGradientUtilsGetAtomicAdd (GradientUtils *gutils) |
| uint64_t | EnzymeGradientUtilsGetWidth (GradientUtils *gutils) |
| LLVMTypeRef | EnzymeGradientUtilsGetShadowType (GradientUtils *gutils, LLVMTypeRef T) |
| LLVMTypeRef | EnzymeGetShadowType (uint64_t width, LLVMTypeRef T) |
| LLVMValueRef | EnzymeGradientUtilsNewFromOriginal (GradientUtils *gutils, LLVMValueRef val) |
| void | EnzymeReplaceOriginalToNew (GradientUtils *gutils, LLVMValueRef origC, LLVMValueRef repC) |
| CDerivativeMode | EnzymeGradientUtilsGetMode (GradientUtils *gutils) |
| CDIFFE_TYPE | EnzymeGradientUtilsGetDiffeType (GradientUtils *G, LLVMValueRef oval, uint8_t foreignFunction) |
| CDIFFE_TYPE | EnzymeGradientUtilsGetReturnDiffeType (GradientUtils *G, LLVMValueRef oval, uint8_t *needsPrimal, uint8_t *needsShadow, CDerivativeMode mode) |
| void | EnzymeGradientUtilsSetDebugLocFromOriginal (GradientUtils *gutils, LLVMValueRef val, LLVMValueRef orig) |
| LLVMValueRef | EnzymeInsertValue (LLVMBuilderRef B, LLVMValueRef val, LLVMValueRef val2, unsigned *sz, int64_t length, const char *name) |
| LLVMValueRef | EnzymeGradientUtilsLookup (GradientUtils *gutils, LLVMValueRef val, LLVMBuilderRef B) |
| LLVMValueRef | EnzymeGradientUtilsInvertPointer (GradientUtils *gutils, LLVMValueRef val, LLVMBuilderRef B) |
| LLVMValueRef | EnzymeGradientUtilsDiffe (DiffeGradientUtils *gutils, LLVMValueRef val, LLVMBuilderRef B) |
| void | EnzymeGradientUtilsAddToDiffe (DiffeGradientUtils *gutils, LLVMValueRef val, LLVMValueRef diffe, LLVMBuilderRef B, LLVMTypeRef T) |
| void | EnzymeGradientUtilsAddToInvertedPointerDiffe (DiffeGradientUtils *gutils, LLVMValueRef orig, LLVMValueRef origVal, LLVMTypeRef addingType, unsigned start, unsigned size, LLVMValueRef origptr, LLVMValueRef dif, LLVMBuilderRef BuilderM, unsigned align, LLVMValueRef mask) |
| void | EnzymeGradientUtilsAddToInvertedPointerDiffeTT (DiffeGradientUtils *gutils, LLVMValueRef orig, LLVMValueRef origVal, CTypeTreeRef vd, unsigned LoadSize, LLVMValueRef origptr, LLVMValueRef prediff, LLVMBuilderRef BuilderM, unsigned align, LLVMValueRef premask) |
| void | EnzymeGradientUtilsSetDiffe (DiffeGradientUtils *gutils, LLVMValueRef val, LLVMValueRef diffe, LLVMBuilderRef B) |
| uint8_t | EnzymeGradientUtilsIsConstantValue (GradientUtils *gutils, LLVMValueRef val) |
| uint8_t | EnzymeGradientUtilsIsConstantInstruction (GradientUtils *gutils, LLVMValueRef val) |
| LLVMBasicBlockRef | EnzymeGradientUtilsAllocationBlock (GradientUtils *gutils) |
| uint8_t | EnzymeGradientUtilsGetUncacheableArgs (GradientUtils *gutils, LLVMValueRef orig, uint8_t *data, uint64_t size) |
| CTypeTreeRef | EnzymeGradientUtilsAllocAndGetTypeTree (GradientUtils *gutils, LLVMValueRef val) |
| void | EnzymeGradientUtilsDumpTypeResults (GradientUtils *gutils) |
| void | EnzymeGradientUtilsSubTransferHelper (GradientUtils *gutils, CDerivativeMode mode, LLVMTypeRef secretty, uint64_t intrinsic, uint64_t dstAlign, uint64_t srcAlign, uint64_t offset, uint8_t dstConstant, LLVMValueRef shadow_dst, uint8_t srcConstant, LLVMValueRef shadow_src, LLVMValueRef length, LLVMValueRef isVolatile, LLVMValueRef MTI, uint8_t allowForward, uint8_t shadowsLookedUp) |
| LLVMBasicBlockRef | EnzymeGradientUtilsAddReverseBlock (GradientUtils *gutils, LLVMBasicBlockRef block, const char *name, uint8_t forkCache, uint8_t push) |
| void | EnzymeGradientUtilsSetReverseBlock (GradientUtils *gutils, LLVMBasicBlockRef block) |
| LLVMValueRef | EnzymeCreateForwardDiff (EnzymeLogicRef Logic, LLVMValueRef request_req, LLVMBuilderRef request_ip, LLVMValueRef todiff, CDIFFE_TYPE retType, CDIFFE_TYPE *constant_args, size_t constant_args_size, EnzymeTypeAnalysisRef TA, uint8_t returnValue, CDerivativeMode mode, uint8_t freeMemory, uint8_t runtimeActivity, uint8_t strongZero, unsigned width, LLVMTypeRef additionalArg, CFnTypeInfo typeInfo, uint8_t subsequent_calls_may_write, uint8_t *_overwritten_args, size_t overwritten_args_size, EnzymeAugmentedReturnPtr augmented) |
| LLVMValueRef | EnzymeCreatePrimalAndGradient (EnzymeLogicRef Logic, LLVMValueRef request_req, LLVMBuilderRef request_ip, LLVMValueRef todiff, CDIFFE_TYPE retType, CDIFFE_TYPE *constant_args, size_t constant_args_size, EnzymeTypeAnalysisRef TA, uint8_t returnValue, uint8_t dretUsed, CDerivativeMode mode, uint8_t runtimeActivity, uint8_t strongZero, unsigned width, uint8_t freeMemory, LLVMTypeRef additionalArg, uint8_t forceAnonymousTape, CFnTypeInfo typeInfo, uint8_t subsequent_calls_may_write, uint8_t *_overwritten_args, size_t overwritten_args_size, EnzymeAugmentedReturnPtr augmented, uint8_t AtomicAdd) |
| EnzymeAugmentedReturnPtr | EnzymeCreateAugmentedPrimal (EnzymeLogicRef Logic, LLVMValueRef request_req, LLVMBuilderRef request_ip, LLVMValueRef todiff, CDIFFE_TYPE retType, CDIFFE_TYPE *constant_args, size_t constant_args_size, EnzymeTypeAnalysisRef TA, uint8_t returnUsed, uint8_t shadowReturnUsed, CFnTypeInfo typeInfo, uint8_t subsequent_calls_may_write, uint8_t *_overwritten_args, size_t overwritten_args_size, uint8_t forceAnonymousTape, uint8_t runtimeActivity, uint8_t strongZero, unsigned width, uint8_t AtomicAdd) |
| LLVMValueRef | EnzymeCreateBatch (EnzymeLogicRef Logic, LLVMValueRef request_req, LLVMBuilderRef request_ip, LLVMValueRef tobatch, unsigned width, CBATCH_TYPE *arg_types, size_t arg_types_size, CBATCH_TYPE retType) |
| LLVMValueRef | EnzymeCreateTrace (EnzymeLogicRef Logic, LLVMValueRef request_req, LLVMBuilderRef request_ip, LLVMValueRef totrace, LLVMValueRef *sample_functions, size_t sample_functions_size, LLVMValueRef *observe_functions, size_t observe_functions_size, const char *active_random_variables[], size_t active_random_variables_size, CProbProgMode mode, uint8_t autodiff, EnzymeTraceInterfaceRef interface) |
| LLVMValueRef | EnzymeExtractFunctionFromAugmentation (EnzymeAugmentedReturnPtr ret) |
| LLVMTypeRef | EnzymeExtractUnderlyingTapeTypeFromAugmentation (EnzymeAugmentedReturnPtr ret) |
| LLVMTypeRef | EnzymeExtractTapeTypeFromAugmentation (EnzymeAugmentedReturnPtr ret) |
| void | EnzymeExtractReturnInfo (EnzymeAugmentedReturnPtr ret, int64_t *data, uint8_t *existed, size_t len) |
| static MDNode * | extractMDNode (MetadataAsValue *MAV) |
| CTypeTreeRef | EnzymeTypeTreeFromMD (LLVMValueRef Val) |
| LLVMValueRef | EnzymeTypeTreeToMD (CTypeTreeRef CTR, LLVMContextRef ctx) |
| CTypeTreeRef | EnzymeNewTypeTree () |
| CTypeTreeRef | EnzymeNewTypeTreeCT (CConcreteType CT, LLVMContextRef ctx) |
| CTypeTreeRef | EnzymeNewTypeTreeTR (CTypeTreeRef CTR) |
| void | EnzymeFreeTypeTree (CTypeTreeRef CTT) |
| uint8_t | EnzymeSetTypeTree (CTypeTreeRef dst, CTypeTreeRef src) |
| uint8_t | EnzymeMergeTypeTree (CTypeTreeRef dst, CTypeTreeRef src) |
| uint8_t | EnzymeCheckedMergeTypeTree (CTypeTreeRef dst, CTypeTreeRef src, uint8_t *legalP) |
| void | EnzymeTypeTreeOnlyEq (CTypeTreeRef CTT, int64_t x) |
| void | EnzymeTypeTreeData0Eq (CTypeTreeRef CTT) |
| void | EnzymeTypeTreeLookupEq (CTypeTreeRef CTT, int64_t size, const char *dl) |
| void | EnzymeTypeTreeCanonicalizeInPlace (CTypeTreeRef CTT, int64_t size, const char *dl) |
| CConcreteType | EnzymeTypeTreeInner0 (CTypeTreeRef CTT) |
| void | EnzymeTypeTreeShiftIndiciesEq (CTypeTreeRef CTT, const char *datalayout, int64_t offset, int64_t maxSize, uint64_t addOffset) |
| void | EnzymeTypeTreeInsertEq (CTypeTreeRef CTT, const int64_t *indices, size_t len, CConcreteType ct, LLVMContextRef ctx) |
| const char * | EnzymeTypeTreeToString (CTypeTreeRef src) |
| void | EnzymeTypeTreeToStringFree (const char *cstr) |
| const char * | EnzymeTypeAnalyzerToString (void *src) |
| const char * | EnzymeGradientUtilsInvertedPointersToString (GradientUtils *gutils, void *src) |
| LLVMValueRef | EnzymeGradientUtilsCallWithInvertedBundles (GradientUtils *gutils, LLVMValueRef func, LLVMTypeRef funcTy, LLVMValueRef *args_vr, uint64_t args_size, LLVMValueRef orig_vr, CValueType *valTys, uint64_t valTys_size, LLVMBuilderRef B, uint8_t lookup) |
| void | EnzymeStringFree (const char *cstr) |
| void | EnzymeMoveBefore (LLVMValueRef inst1, LLVMValueRef inst2, LLVMBuilderRef B) |
| void | EnzymeSetStringMD (LLVMValueRef Inst, const char *Kind, LLVMValueRef Val) |
| LLVMValueRef | EnzymeGetStringMD (LLVMValueRef Inst, const char *Kind) |
| void | EnzymeSetMustCache (LLVMValueRef inst1) |
| uint8_t | EnzymeHasFromStack (LLVMValueRef inst1) |
| void | EnzymeCloneFunctionDISubprogramInto (LLVMValueRef NF, LLVMValueRef F) |
| void | EnzymeReplaceFunctionImplementation (LLVMModuleRef M) |
| void | EnzymeDetectReadonlyOrThrow (LLVMModuleRef M) |
| void | EnzymeDumpModuleRef (LLVMModuleRef M) |
| void | EnzymeDumpValueRef (LLVMValueRef M) |
| void | EnzymeDumpTypeRef (LLVMTypeRef M) |
| static bool | runAttributorOnFunctions (InformationCache &InfoCache, SetVector< Function * > &Functions, AnalysisGetter &AG, CallGraphUpdater &CGUpdater, bool DeleteFns, bool IsModulePass) |
| void | RunAttributorOnModule (LLVMModuleRef M0) |
| void | EnzymeAddAttributorLegacyPass (LLVMPassManagerRef PM) |
| LLVMMetadataRef | EnzymeMakeNonConstTBAA (LLVMMetadataRef MD) |
| void | EnzymeCopyMetadata (LLVMValueRef inst1, LLVMValueRef inst2) |
| void | EnzymeCopyAlignment (LLVMValueRef inst1, LLVMValueRef inst2) |
| void | EnzymeTakeName (LLVMValueRef inst1, LLVMValueRef inst2) |
| LLVMMetadataRef | EnzymeAnonymousAliasScopeDomain (const char *str, LLVMContextRef ctx) |
| LLVMMetadataRef | EnzymeAnonymousAliasScope (LLVMMetadataRef domain, const char *str) |
| uint8_t | EnzymeLowerSparsification (LLVMValueRef F, uint8_t replaceAll) |
| void | EnzymeAttributeKnownFunctions (LLVMValueRef FC) |
| void | EnzymeSetCalledFunction (LLVMValueRef C_CI, LLVMValueRef C_F, uint64_t *argrem, uint64_t num_argrem) |
| LLVMValueRef | EnzymeCloneFunctionWithoutReturnOrArgs (LLVMValueRef FC, uint8_t keepReturnU, uint64_t *argrem, uint64_t num_argrem) |
| LLVMTypeRef | EnzymeAllocaType (LLVMValueRef V) |
| LLVMValueRef | EnzymeComputeByteOffsetOfGEP (LLVMBuilderRef B_r, LLVMValueRef V_r, LLVMTypeRef T_r) |
| LLVMValueRef | EnzymeBuildExtractValue (LLVMBuilderRef B, LLVMValueRef AggVal, unsigned *Index, unsigned Size, const char *Name) |
| LLVMValueRef | EnzymeBuildInsertValue (LLVMBuilderRef B, LLVMValueRef AggVal, LLVMValueRef EltVal, unsigned *Index, unsigned Size, const char *Name) |
| void ClearEnzymeLogic | ( | EnzymeLogicRef | Ref | ) |
| void ClearTypeAnalysis | ( | EnzymeTypeAnalysisRef | TAR | ) |
Definition at line 312 of file CApi.cpp.
References TypeAnalysis::clear(), and eunwrap().
| EnzymeTraceInterfaceRef CreateEnzymeDynamicTraceInterface | ( | LLVMValueRef | interface, |
| LLVMValueRef | F ) |
| EnzymeLogicRef CreateEnzymeLogic | ( | uint8_t | PostOpt | ) |
| EnzymeTraceInterfaceRef CreateEnzymeStaticTraceInterface | ( | LLVMContextRef | C, |
| LLVMValueRef | getTraceFunction, | ||
| LLVMValueRef | getChoiceFunction, | ||
| LLVMValueRef | insertCallFunction, | ||
| LLVMValueRef | insertChoiceFunction, | ||
| LLVMValueRef | insertArgumentFunction, | ||
| LLVMValueRef | insertReturnFunction, | ||
| LLVMValueRef | insertFunctionFunction, | ||
| LLVMValueRef | insertChoiceGradientFunction, | ||
| LLVMValueRef | insertArgumentGradientFunction, | ||
| LLVMValueRef | newTraceFunction, | ||
| LLVMValueRef | freeTraceFunction, | ||
| LLVMValueRef | hasCallFunction, | ||
| LLVMValueRef | hasChoiceFunction ) |
| EnzymeTypeAnalysisRef CreateTypeAnalysis | ( | EnzymeLogicRef | Log, |
| char ** | customRuleNames, | ||
| CustomRuleType * | customRules, | ||
| size_t | numRules ) |
Definition at line 274 of file CApi.cpp.
References TypeAnalysis::CustomRules, IntList::data, eunwrap(), and IntList::size.
| void EnzymeAddAttributorLegacyPass | ( | LLVMPassManagerRef | PM | ) |
| void * EnzymeAnalyzeTypes | ( | EnzymeTypeAnalysisRef | TAR, |
| CFnTypeInfo | CTI, | ||
| LLVMValueRef | F ) |
| LLVMMetadataRef EnzymeAnonymousAliasScope | ( | LLVMMetadataRef | domain, |
| const char * | str ) |
| LLVMMetadataRef EnzymeAnonymousAliasScopeDomain | ( | const char * | str, |
| LLVMContextRef | ctx ) |
| void EnzymeAttributeKnownFunctions | ( | LLVMValueRef | FC | ) |
Definition at line 1186 of file CApi.cpp.
References attributeKnownFunctions().
| LLVMValueRef EnzymeBuildExtractValue | ( | LLVMBuilderRef | B, |
| LLVMValueRef | AggVal, | ||
| unsigned * | Index, | ||
| unsigned | Size, | ||
| const char * | Name ) |
| LLVMValueRef EnzymeBuildInsertValue | ( | LLVMBuilderRef | B, |
| LLVMValueRef | AggVal, | ||
| LLVMValueRef | EltVal, | ||
| unsigned * | Index, | ||
| unsigned | Size, | ||
| const char * | Name ) |
| uint8_t EnzymeCheckedMergeTypeTree | ( | CTypeTreeRef | dst, |
| CTypeTreeRef | src, | ||
| uint8_t * | legalP ) |
| void EnzymeCloneFunctionDISubprogramInto | ( | LLVMValueRef | NF, |
| LLVMValueRef | F ) |
| LLVMValueRef EnzymeCloneFunctionWithoutReturnOrArgs | ( | LLVMValueRef | FC, |
| uint8_t | keepReturnU, | ||
| uint64_t * | argrem, | ||
| uint64_t | num_argrem ) |
| LLVMValueRef EnzymeComputeByteOffsetOfGEP | ( | LLVMBuilderRef | B_r, |
| LLVMValueRef | V_r, | ||
| LLVMTypeRef | T_r ) |
Definition at line 1387 of file CApi.cpp.
References collectOffset().
| void EnzymeCopyAlignment | ( | LLVMValueRef | inst1, |
| LLVMValueRef | inst2 ) |
| void EnzymeCopyMetadata | ( | LLVMValueRef | inst1, |
| LLVMValueRef | inst2 ) |
| EnzymeAugmentedReturnPtr EnzymeCreateAugmentedPrimal | ( | EnzymeLogicRef | Logic, |
| LLVMValueRef | request_req, | ||
| LLVMBuilderRef | request_ip, | ||
| LLVMValueRef | todiff, | ||
| CDIFFE_TYPE | retType, | ||
| CDIFFE_TYPE * | constant_args, | ||
| size_t | constant_args_size, | ||
| EnzymeTypeAnalysisRef | TA, | ||
| uint8_t | returnUsed, | ||
| uint8_t | shadowReturnUsed, | ||
| CFnTypeInfo | typeInfo, | ||
| uint8_t | subsequent_calls_may_write, | ||
| uint8_t * | _overwritten_args, | ||
| size_t | overwritten_args_size, | ||
| uint8_t | forceAnonymousTape, | ||
| uint8_t | runtimeActivity, | ||
| uint8_t | strongZero, | ||
| unsigned | width, | ||
| uint8_t | AtomicAdd ) |
| LLVMValueRef EnzymeCreateBatch | ( | EnzymeLogicRef | Logic, |
| LLVMValueRef | request_req, | ||
| LLVMBuilderRef | request_ip, | ||
| LLVMValueRef | tobatch, | ||
| unsigned | width, | ||
| CBATCH_TYPE * | arg_types, | ||
| size_t | arg_types_size, | ||
| CBATCH_TYPE | retType ) |
| LLVMValueRef EnzymeCreateForwardDiff | ( | EnzymeLogicRef | Logic, |
| LLVMValueRef | request_req, | ||
| LLVMBuilderRef | request_ip, | ||
| LLVMValueRef | todiff, | ||
| CDIFFE_TYPE | retType, | ||
| CDIFFE_TYPE * | constant_args, | ||
| size_t | constant_args_size, | ||
| EnzymeTypeAnalysisRef | TA, | ||
| uint8_t | returnValue, | ||
| CDerivativeMode | mode, | ||
| uint8_t | freeMemory, | ||
| uint8_t | runtimeActivity, | ||
| uint8_t | strongZero, | ||
| unsigned | width, | ||
| LLVMTypeRef | additionalArg, | ||
| CFnTypeInfo | typeInfo, | ||
| uint8_t | subsequent_calls_may_write, | ||
| uint8_t * | _overwritten_args, | ||
| size_t | overwritten_args_size, | ||
| EnzymeAugmentedReturnPtr | augmented ) |
| LLVMValueRef EnzymeCreatePrimalAndGradient | ( | EnzymeLogicRef | Logic, |
| LLVMValueRef | request_req, | ||
| LLVMBuilderRef | request_ip, | ||
| LLVMValueRef | todiff, | ||
| CDIFFE_TYPE | retType, | ||
| CDIFFE_TYPE * | constant_args, | ||
| size_t | constant_args_size, | ||
| EnzymeTypeAnalysisRef | TA, | ||
| uint8_t | returnValue, | ||
| uint8_t | dretUsed, | ||
| CDerivativeMode | mode, | ||
| uint8_t | runtimeActivity, | ||
| uint8_t | strongZero, | ||
| unsigned | width, | ||
| uint8_t | freeMemory, | ||
| LLVMTypeRef | additionalArg, | ||
| uint8_t | forceAnonymousTape, | ||
| CFnTypeInfo | typeInfo, | ||
| uint8_t | subsequent_calls_may_write, | ||
| uint8_t * | _overwritten_args, | ||
| size_t | overwritten_args_size, | ||
| EnzymeAugmentedReturnPtr | augmented, | ||
| uint8_t | AtomicAdd ) |
| LLVMValueRef EnzymeCreateTrace | ( | EnzymeLogicRef | Logic, |
| LLVMValueRef | request_req, | ||
| LLVMBuilderRef | request_ip, | ||
| LLVMValueRef | totrace, | ||
| LLVMValueRef * | sample_functions, | ||
| size_t | sample_functions_size, | ||
| LLVMValueRef * | observe_functions, | ||
| size_t | observe_functions_size, | ||
| const char * | active_random_variables[], | ||
| size_t | active_random_variables_size, | ||
| CProbProgMode | mode, | ||
| uint8_t | autodiff, | ||
| EnzymeTraceInterfaceRef | interface ) |
| void EnzymeDetectReadonlyOrThrow | ( | LLVMModuleRef | M | ) |
Definition at line 1055 of file CApi.cpp.
References DetectReadonlyOrThrow().
| LLVMValueRef EnzymeExtractFunctionFromAugmentation | ( | EnzymeAugmentedReturnPtr | ret | ) |
| void EnzymeExtractReturnInfo | ( | EnzymeAugmentedReturnPtr | ret, |
| int64_t * | data, | ||
| uint8_t * | existed, | ||
| size_t | len ) |
Definition at line 825 of file CApi.cpp.
References DifferentialReturn, Return, and Tape.
| LLVMTypeRef EnzymeExtractTapeTypeFromAugmentation | ( | EnzymeAugmentedReturnPtr | ret | ) |
| LLVMTypeRef EnzymeExtractUnderlyingTapeTypeFromAugmentation | ( | EnzymeAugmentedReturnPtr | ret | ) |
| void EnzymeFreeTypeTree | ( | CTypeTreeRef | CTT | ) |
| LLVMTypeRef EnzymeGetShadowType | ( | uint64_t | width, |
| LLVMTypeRef | T ) |
Definition at line 444 of file CApi.cpp.
References GradientUtils::getShadowType().
| LLVMValueRef EnzymeGetStringMD | ( | LLVMValueRef | Inst, |
| const char * | Kind ) |
| EnzymeTypeAnalysisRef EnzymeGetTypeAnalysisFromTypeAnalyzer | ( | void * | TAR | ) |
Definition at line 333 of file CApi.cpp.
References TypeAnalyzer::interprocedural.
| LLVMBasicBlockRef EnzymeGradientUtilsAddReverseBlock | ( | GradientUtils * | gutils, |
| LLVMBasicBlockRef | block, | ||
| const char * | name, | ||
| uint8_t | forkCache, | ||
| uint8_t | push ) |
Definition at line 642 of file CApi.cpp.
References GradientUtils::addReverseBlock().
| void EnzymeGradientUtilsAddToDiffe | ( | DiffeGradientUtils * | gutils, |
| LLVMValueRef | val, | ||
| LLVMValueRef | diffe, | ||
| LLVMBuilderRef | B, | ||
| LLVMTypeRef | T ) |
Definition at line 522 of file CApi.cpp.
References DiffeGradientUtils::addToDiffe().
| void EnzymeGradientUtilsAddToInvertedPointerDiffe | ( | DiffeGradientUtils * | gutils, |
| LLVMValueRef | orig, | ||
| LLVMValueRef | origVal, | ||
| LLVMTypeRef | addingType, | ||
| unsigned | start, | ||
| unsigned | size, | ||
| LLVMValueRef | origptr, | ||
| LLVMValueRef | dif, | ||
| LLVMBuilderRef | BuilderM, | ||
| unsigned | align, | ||
| LLVMValueRef | mask ) |
Definition at line 528 of file CApi.cpp.
References DiffeGradientUtils::addToInvertedPtrDiffe().
| void EnzymeGradientUtilsAddToInvertedPointerDiffeTT | ( | DiffeGradientUtils * | gutils, |
| LLVMValueRef | orig, | ||
| LLVMValueRef | origVal, | ||
| CTypeTreeRef | vd, | ||
| unsigned | LoadSize, | ||
| LLVMValueRef | origptr, | ||
| LLVMValueRef | prediff, | ||
| LLVMBuilderRef | BuilderM, | ||
| unsigned | align, | ||
| LLVMValueRef | premask ) |
Definition at line 542 of file CApi.cpp.
References DiffeGradientUtils::addToInvertedPtrDiffe().
| CTypeTreeRef EnzymeGradientUtilsAllocAndGetTypeTree | ( | GradientUtils * | gutils, |
| LLVMValueRef | val ) |
Definition at line 614 of file CApi.cpp.
References TypeResults::query(), and GradientUtils::TR.
| LLVMBasicBlockRef EnzymeGradientUtilsAllocationBlock | ( | GradientUtils * | gutils | ) |
Definition at line 571 of file CApi.cpp.
References CacheUtility::inversionAllocs.
| LLVMValueRef EnzymeGradientUtilsCallWithInvertedBundles | ( | GradientUtils * | gutils, |
| LLVMValueRef | func, | ||
| LLVMTypeRef | funcTy, | ||
| LLVMValueRef * | args_vr, | ||
| uint64_t | args_size, | ||
| LLVMValueRef | orig_vr, | ||
| CValueType * | valTys, | ||
| uint64_t | valTys_size, | ||
| LLVMBuilderRef | B, | ||
| uint8_t | lookup ) |
Definition at line 959 of file CApi.cpp.
References GradientUtils::getInvertedBundles().
| LLVMValueRef EnzymeGradientUtilsDiffe | ( | DiffeGradientUtils * | gutils, |
| LLVMValueRef | val, | ||
| LLVMBuilderRef | B ) |
Definition at line 517 of file CApi.cpp.
References DiffeGradientUtils::diffe().
| void EnzymeGradientUtilsDumpTypeResults | ( | GradientUtils * | gutils | ) |
Definition at line 622 of file CApi.cpp.
References TypeResults::dump(), and GradientUtils::TR.
| void EnzymeGradientUtilsErase | ( | GradientUtils * | G, |
| LLVMValueRef | I ) |
Definition at line 337 of file CApi.cpp.
References GradientUtils::erase().
| void EnzymeGradientUtilsEraseWithPlaceholder | ( | GradientUtils * | G, |
| LLVMValueRef | I, | ||
| LLVMValueRef | orig, | ||
| uint8_t | erase ) |
Definition at line 340 of file CApi.cpp.
References GradientUtils::eraseWithPlaceholder().
| uint8_t EnzymeGradientUtilsGetAtomicAdd | ( | GradientUtils * | gutils | ) |
Definition at line 431 of file CApi.cpp.
References GradientUtils::AtomicAdd.
| CDIFFE_TYPE EnzymeGradientUtilsGetDiffeType | ( | GradientUtils * | G, |
| LLVMValueRef | oval, | ||
| uint8_t | foreignFunction ) |
Definition at line 470 of file CApi.cpp.
References GradientUtils::getDiffeType().
| void * EnzymeGradientUtilsGetExternalContext | ( | GradientUtils * | gutils | ) |
Definition at line 423 of file CApi.cpp.
References EnzymeLogic::ExternalContext, and GradientUtils::Logic.
| CDerivativeMode EnzymeGradientUtilsGetMode | ( | GradientUtils * | gutils | ) |
Definition at line 465 of file CApi.cpp.
References GradientUtils::mode.
| CDIFFE_TYPE EnzymeGradientUtilsGetReturnDiffeType | ( | GradientUtils * | G, |
| LLVMValueRef | oval, | ||
| uint8_t * | needsPrimal, | ||
| uint8_t * | needsShadow, | ||
| CDerivativeMode | mode ) |
Definition at line 476 of file CApi.cpp.
References GradientUtils::getReturnDiffeType().
| uint8_t EnzymeGradientUtilsGetRuntimeActivity | ( | GradientUtils * | gutils | ) |
Definition at line 419 of file CApi.cpp.
References GradientUtils::runtimeActivity.
| LLVMTypeRef EnzymeGradientUtilsGetShadowType | ( | GradientUtils * | gutils, |
| LLVMTypeRef | T ) |
Definition at line 439 of file CApi.cpp.
References GradientUtils::getShadowType().
| uint8_t EnzymeGradientUtilsGetStrongZero | ( | GradientUtils * | gutils | ) |
Definition at line 427 of file CApi.cpp.
References GradientUtils::strongZero.
| uint8_t EnzymeGradientUtilsGetUncacheableArgs | ( | GradientUtils * | gutils, |
| LLVMValueRef | orig, | ||
| uint8_t * | data, | ||
| uint64_t | size ) |
Definition at line 575 of file CApi.cpp.
References ForwardMode, ForwardModeError, GradientUtils::mode, GradientUtils::oldFunc, and GradientUtils::overwritten_args_map_ptr.
| uint64_t EnzymeGradientUtilsGetWidth | ( | GradientUtils * | gutils | ) |
Definition at line 435 of file CApi.cpp.
References GradientUtils::getWidth().
| const char * EnzymeGradientUtilsInvertedPointersToString | ( | GradientUtils * | gutils, |
| void * | src ) |
Definition at line 946 of file CApi.cpp.
References GradientUtils::invertedPointers, and str().
| LLVMValueRef EnzymeGradientUtilsInvertPointer | ( | GradientUtils * | gutils, |
| LLVMValueRef | val, | ||
| LLVMBuilderRef | B ) |
Definition at line 511 of file CApi.cpp.
References GradientUtils::invertPointerM().
| uint8_t EnzymeGradientUtilsIsConstantInstruction | ( | GradientUtils * | gutils, |
| LLVMValueRef | val ) |
Definition at line 566 of file CApi.cpp.
References GradientUtils::isConstantInstruction().
| uint8_t EnzymeGradientUtilsIsConstantValue | ( | GradientUtils * | gutils, |
| LLVMValueRef | val ) |
Definition at line 561 of file CApi.cpp.
References GradientUtils::isConstantValue().
| LLVMValueRef EnzymeGradientUtilsLookup | ( | GradientUtils * | gutils, |
| LLVMValueRef | val, | ||
| LLVMBuilderRef | B ) |
Definition at line 506 of file CApi.cpp.
References GradientUtils::lookupM().
| LLVMValueRef EnzymeGradientUtilsNewFromOriginal | ( | GradientUtils * | gutils, |
| LLVMValueRef | val ) |
Definition at line 448 of file CApi.cpp.
References GradientUtils::getNewFromOriginal().
| void EnzymeGradientUtilsReplaceAWithB | ( | GradientUtils * | G, |
| LLVMValueRef | A, | ||
| LLVMValueRef | B ) |
Definition at line 347 of file CApi.cpp.
References GradientUtils::replaceAWithB().
| void EnzymeGradientUtilsSetDebugLocFromOriginal | ( | GradientUtils * | gutils, |
| LLVMValueRef | val, | ||
| LLVMValueRef | orig ) |
Definition at line 491 of file CApi.cpp.
References GradientUtils::getNewFromOriginal().
| void EnzymeGradientUtilsSetDiffe | ( | DiffeGradientUtils * | gutils, |
| LLVMValueRef | val, | ||
| LLVMValueRef | diffe, | ||
| LLVMBuilderRef | B ) |
Definition at line 556 of file CApi.cpp.
References DiffeGradientUtils::setDiffe().
| void EnzymeGradientUtilsSetReverseBlock | ( | GradientUtils * | gutils, |
| LLVMBasicBlockRef | block ) |
Definition at line 651 of file CApi.cpp.
References GradientUtils::reverseBlocks, and GradientUtils::reverseBlockToPrimal.
| void EnzymeGradientUtilsSubTransferHelper | ( | GradientUtils * | gutils, |
| CDerivativeMode | mode, | ||
| LLVMTypeRef | secretty, | ||
| uint64_t | intrinsic, | ||
| uint64_t | dstAlign, | ||
| uint64_t | srcAlign, | ||
| uint64_t | offset, | ||
| uint8_t | dstConstant, | ||
| LLVMValueRef | shadow_dst, | ||
| uint8_t | srcConstant, | ||
| LLVMValueRef | shadow_src, | ||
| LLVMValueRef | length, | ||
| LLVMValueRef | isVolatile, | ||
| LLVMValueRef | MTI, | ||
| uint8_t | allowForward, | ||
| uint8_t | shadowsLookedUp ) |
Definition at line 626 of file CApi.cpp.
References SubTransferHelper().
| void * EnzymeGradientUtilsTypeAnalyzer | ( | GradientUtils * | G | ) |
Definition at line 329 of file CApi.cpp.
References TypeResults::analyzer, and GradientUtils::TR.
| uint8_t EnzymeHasFromStack | ( | LLVMValueRef | inst1 | ) |
Definition at line 1026 of file CApi.cpp.
References hasMetadata().
| LLVMValueRef EnzymeInsertValue | ( | LLVMBuilderRef | B, |
| LLVMValueRef | val, | ||
| LLVMValueRef | val2, | ||
| unsigned * | sz, | ||
| int64_t | length, | ||
| const char * | name ) |
| void EnzymeLogicErasePreprocessedFunctions | ( | EnzymeLogicRef | Ref | ) |
| void * EnzymeLogicGetExternalContext | ( | EnzymeLogicRef | Ref | ) |
| void EnzymeLogicSetExternalContext | ( | EnzymeLogicRef | Ref, |
| void * | ExternalContext ) |
| uint8_t EnzymeLowerSparsification | ( | LLVMValueRef | F, |
| uint8_t | replaceAll ) |
Definition at line 1182 of file CApi.cpp.
References LowerSparsification().
| LLVMMetadataRef EnzymeMakeNonConstTBAA | ( | LLVMMetadataRef | MD | ) |
| uint8_t EnzymeMergeTypeTree | ( | CTypeTreeRef | dst, |
| CTypeTreeRef | src ) |
| void EnzymeMoveBefore | ( | LLVMValueRef | inst1, |
| LLVMValueRef | inst2, | ||
| LLVMBuilderRef | B ) |
| CTypeTreeRef EnzymeNewTypeTree | ( | ) |
| CTypeTreeRef EnzymeNewTypeTreeCT | ( | CConcreteType | CT, |
| LLVMContextRef | ctx ) |
| CTypeTreeRef EnzymeNewTypeTreeTR | ( | CTypeTreeRef | CTR | ) |
| void EnzymeRegisterAllocationHandler | ( | char * | Name, |
| CustomShadowAlloc | AHandle, | ||
| CustomShadowFree | FHandle ) |
Definition at line 352 of file CApi.cpp.
References Args, shadowErasers, and shadowHandlers.
| void EnzymeRegisterCallHandler | ( | const char * | Name, |
| CustomAugmentedFunctionForward | FwdHandle, | ||
| CustomFunctionReverse | RevHandle ) |
Definition at line 370 of file CApi.cpp.
References customCallHandlers.
| void EnzymeRegisterDiffUseCallHandler | ( | char * | Name, |
| CustomFunctionDiffUse | Handle ) |
Definition at line 406 of file CApi.cpp.
References customDiffUseHandlers.
| void EnzymeRegisterFwdCallHandler | ( | char * | Name, |
| CustomFunctionForward | FwdHandle ) |
Definition at line 393 of file CApi.cpp.
References customFwdCallHandlers.
| void EnzymeReplaceFunctionImplementation | ( | LLVMModuleRef | M | ) |
Definition at line 1051 of file CApi.cpp.
References ReplaceFunctionImplementation().
| void EnzymeReplaceOriginalToNew | ( | GradientUtils * | gutils, |
| LLVMValueRef | origC, | ||
| LLVMValueRef | repC ) |
Definition at line 453 of file CApi.cpp.
References GradientUtils::newToOriginalFn, and GradientUtils::originalToNewFn.
| void EnzymeSetCalledFunction | ( | LLVMValueRef | C_CI, |
| LLVMValueRef | C_F, | ||
| uint64_t * | argrem, | ||
| uint64_t | num_argrem ) |
| void EnzymeSetStringMD | ( | LLVMValueRef | Inst, |
| const char * | Kind, | ||
| LLVMValueRef | Val ) |
Definition at line 1004 of file CApi.cpp.
References extractMDNode().
| uint8_t EnzymeSetTypeTree | ( | CTypeTreeRef | dst, |
| CTypeTreeRef | src ) |
| void EnzymeTakeName | ( | LLVMValueRef | inst1, |
| LLVMValueRef | inst2 ) |
| EnzymeLogicRef EnzymeTypeAnalysisGetLogic | ( | EnzymeTypeAnalysisRef | TAR | ) |
Definition at line 319 of file CApi.cpp.
References TypeAnalysis::Logic.
| const char * EnzymeTypeAnalyzerToString | ( | void * | src | ) |
| void EnzymeTypeTreeCanonicalizeInPlace | ( | CTypeTreeRef | CTT, |
| int64_t | size, | ||
| const char * | dl ) |
| void EnzymeTypeTreeData0Eq | ( | CTypeTreeRef | CTT | ) |
| CTypeTreeRef EnzymeTypeTreeFromMD | ( | LLVMValueRef | Val | ) |
Definition at line 853 of file CApi.cpp.
References extractMDNode(), and TypeTree::insertFromMD().
| CConcreteType EnzymeTypeTreeInner0 | ( | CTypeTreeRef | CTT | ) |
| void EnzymeTypeTreeInsertEq | ( | CTypeTreeRef | CTT, |
| const int64_t * | indices, | ||
| size_t | len, | ||
| CConcreteType | ct, | ||
| LLVMContextRef | ctx ) |
| void EnzymeTypeTreeLookupEq | ( | CTypeTreeRef | CTT, |
| int64_t | size, | ||
| const char * | dl ) |
| void EnzymeTypeTreeOnlyEq | ( | CTypeTreeRef | CTT, |
| int64_t | x ) |
| void EnzymeTypeTreeShiftIndiciesEq | ( | CTypeTreeRef | CTT, |
| const char * | datalayout, | ||
| int64_t | offset, | ||
| int64_t | maxSize, | ||
| uint64_t | addOffset ) |
| LLVMValueRef EnzymeTypeTreeToMD | ( | CTypeTreeRef | CTR, |
| LLVMContextRef | ctx ) |
| const char * EnzymeTypeTreeToString | ( | CTypeTreeRef | src | ) |
| ConcreteType eunwrap | ( | CConcreteType | CDT, |
| llvm::LLVMContext & | ctx ) |
Definition at line 85 of file CApi.cpp.
References Anything, DT_Anything, DT_BFloat16, DT_Double, DT_Float, DT_FP128, DT_Half, DT_Integer, DT_Pointer, DT_Unknown, DT_X86_FP80, Integer, Pointer, and Unknown.
| FnTypeInfo eunwrap | ( | CFnTypeInfo | CTI, |
| llvm::Function * | F ) |
Definition at line 172 of file CApi.cpp.
References CFnTypeInfo::Arguments, FnTypeInfo::Arguments, eunwrap(), eunwrap64(), CFnTypeInfo::KnownValues, FnTypeInfo::KnownValues, CFnTypeInfo::Return, and FnTypeInfo::Return.
| TypeTree eunwrap | ( | CTypeTreeRef | CTT | ) |
| AugmentedReturn * eunwrap | ( | EnzymeAugmentedReturnPtr | ARP | ) |
| EnzymeLogic & eunwrap | ( | EnzymeLogicRef | LR | ) |
| TraceInterface * eunwrap | ( | EnzymeTraceInterfaceRef | Ref | ) |
| TypeAnalysis & eunwrap | ( | EnzymeTypeAnalysisRef | TAR | ) |
| std::vector< int > eunwrap | ( | IntList | IL | ) |
Definition at line 111 of file CApi.cpp.
References IntList::data, and IntList::size.
| TargetLibraryInfo eunwrap | ( | LLVMTargetLibraryInfoRef | P | ) |
Definition at line 65 of file CApi.cpp.
Referenced by ClearEnzymeLogic(), ClearTypeAnalysis(), CreateTypeAnalysis(), EnzymeAnalyzeTypes(), EnzymeCreateAugmentedPrimal(), EnzymeCreateBatch(), EnzymeCreateForwardDiff(), EnzymeCreatePrimalAndGradient(), EnzymeCreateTrace(), EnzymeLogicErasePreprocessedFunctions(), EnzymeLogicGetExternalContext(), EnzymeLogicSetExternalContext(), EnzymeNewTypeTreeCT(), EnzymeTypeTreeInsertEq(), and eunwrap().
| std::set< int64_t > eunwrap64 | ( | IntList | IL | ) |
Definition at line 118 of file CApi.cpp.
References IntList::data, and IntList::size.
Referenced by eunwrap().
| EnzymeAugmentedReturnPtr ewrap | ( | const AugmentedReturn & | AR | ) |
Definition at line 81 of file CApi.cpp.
Referenced by EnzymeCreateAugmentedPrimal(), and EnzymeTypeTreeInner0().
| CConcreteType ewrap | ( | const ConcreteType & | CT | ) |
Definition at line 127 of file CApi.cpp.
References Anything, DT_Anything, DT_BFloat16, DT_Double, DT_Float, DT_FP128, DT_Half, DT_Integer, DT_Pointer, DT_Unknown, DT_X86_FP80, Float, Integer, ConcreteType::isFloat(), Pointer, ConcreteType::SubTypeEnum, and Unknown.
| IntList ewrap | ( | const std::vector< int > & | offsets | ) |
Definition at line 158 of file CApi.cpp.
References IntList::data, and IntList::size.
| CTypeTreeRef ewrap | ( | const TypeTree & | TT | ) |
|
static |
Definition at line 842 of file CApi.cpp.
Referenced by EnzymeSetStringMD(), and EnzymeTypeTreeFromMD().
| EnzymeTraceInterfaceRef FindEnzymeStaticTraceInterface | ( | LLVMModuleRef | M | ) |
| void FreeEnzymeLogic | ( | EnzymeLogicRef | Ref | ) |
| void FreeTraceInterface | ( | EnzymeTraceInterfaceRef | Ref | ) |
| void FreeTypeAnalysis | ( | EnzymeTypeAnalysisRef | TAR | ) |
|
static |
Definition at line 1067 of file CApi.cpp.
Referenced by RunAttributorOnModule(), and MyAttributorLegacyPass::runOnModule().
| void RunAttributorOnModule | ( | LLVMModuleRef | M0 | ) |
Definition at line 1094 of file CApi.cpp.
References runAttributorOnFunctions().