summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Instrumentation/Instrumentation.cpp
diff options
context:
space:
mode:
authorLeonard Chan <leonardchan@google.com>2019-02-13 22:22:48 +0000
committerLeonard Chan <leonardchan@google.com>2019-02-13 22:22:48 +0000
commit436fb2bd82a7816798b4f0c128b3be6760e49bbe (patch)
tree0188cb9557f5ceaaff70a6bace369eab32f393db /llvm/lib/Transforms/Instrumentation/Instrumentation.cpp
parent04306d62a0329278102ac993d0147e09247f0780 (diff)
downloadbcm5719-llvm-436fb2bd82a7816798b4f0c128b3be6760e49bbe.tar.gz
bcm5719-llvm-436fb2bd82a7816798b4f0c128b3be6760e49bbe.zip
[NewPM] Second attempt at porting ASan
This is the second attempt to port ASan to new PM after D52739. This takes the initialization requried by ASan from the Module by moving it into a separate class with it's own analysis that the new PM ASan can use. Changes: - Split AddressSanitizer into 2 passes: 1 for the instrumentation on the function, and 1 for the pass itself which creates an instance of the first during it's run. The same is done for AddressSanitizerModule. - Add new PM AddressSanitizer and AddressSanitizerModule. - Add legacy and new PM analyses for reading data needed to initialize ASan with. - Removed DominatorTree dependency from ASan since it was unused. - Move GlobalsMetadata and ShadowMapping out of anonymous namespace since the new PM analysis holds these 2 classes and will need to expose them. Differential Revision: https://reviews.llvm.org/D56470 llvm-svn: 353985
Diffstat (limited to 'llvm/lib/Transforms/Instrumentation/Instrumentation.cpp')
-rw-r--r--llvm/lib/Transforms/Instrumentation/Instrumentation.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/Instrumentation/Instrumentation.cpp b/llvm/lib/Transforms/Instrumentation/Instrumentation.cpp
index 2f73bb2b0c0..40b0a4acac8 100644
--- a/llvm/lib/Transforms/Instrumentation/Instrumentation.cpp
+++ b/llvm/lib/Transforms/Instrumentation/Instrumentation.cpp
@@ -100,8 +100,8 @@ Comdat *llvm::GetOrCreateFunctionComdat(Function &F, Triple &T,
/// initializeInstrumentation - Initialize all passes in the TransformUtils
/// library.
void llvm::initializeInstrumentation(PassRegistry &Registry) {
- initializeAddressSanitizerPass(Registry);
- initializeAddressSanitizerModulePass(Registry);
+ initializeAddressSanitizerLegacyPassPass(Registry);
+ initializeModuleAddressSanitizerLegacyPassPass(Registry);
initializeBoundsCheckingLegacyPassPass(Registry);
initializeControlHeightReductionLegacyPassPass(Registry);
initializeGCOVProfilerLegacyPassPass(Registry);
OpenPOWER on IntegriCloud