14 #ifndef LLVM_TRANSFORMS_INSTRUMENTATION_H
15 #define LLVM_TRANSFORMS_INSTRUMENTATION_H
19 #if defined(__GNUC__) && defined(__linux__)
20 inline void *getDFSanArgTLSPtrForJIT() {
22 void *__dfsan_arg_tls;
23 return (
void *)&__dfsan_arg_tls;
26 inline void *getDFSanRetValTLSPtrForJIT() {
28 void *__dfsan_retval_tls;
29 return (
void *)&__dfsan_retval_tls;
68 bool CheckInitOrder =
true,
bool CheckUseAfterReturn =
false,
70 bool ZeroBaseShadow =
false);
73 bool ZeroBaseShadow =
false);
84 void *(*getArgTLS)() = 0,
85 void *(*getRetValTLS)() = 0);
87 #if defined(__GNUC__) && defined(__linux__)
91 getDFSanRetValTLSPtrForJIT);
115 bool HideDebugMetadata,
116 StringRef Directory = StringRef(),
117 StringRef Filename = StringRef());
FunctionPass * createBoundsCheckingPass()
static GCOVOptions getDefault()
ModulePass * createGCOVProfilerPass(const GCOVOptions &Options=GCOVOptions::getDefault())
ModulePass * createAddressSanitizerModulePass(bool CheckInitOrder=true, StringRef BlacklistFile=StringRef(), bool ZeroBaseShadow=false)
ModulePass * createDebugIRPass(bool HideDebugIntrinsics, bool HideDebugMetadata, StringRef Directory=StringRef(), StringRef Filename=StringRef())
ModulePass * createDataFlowSanitizerPass(StringRef ABIListFile=StringRef(), void *(*getArgTLS)()=0, void *(*getRetValTLS)()=0)
FunctionPass * createAddressSanitizerFunctionPass(bool CheckInitOrder=true, bool CheckUseAfterReturn=false, bool CheckLifetime=false, StringRef BlacklistFile=StringRef(), bool ZeroBaseShadow=false)
FunctionPass * createThreadSanitizerPass(StringRef BlacklistFile=StringRef())
void *__dso_handle __attribute__((__visibility__("hidden")))
FunctionPass * createMemorySanitizerPass(bool TrackOrigins=false, StringRef BlacklistFile=StringRef())