summaryrefslogtreecommitdiffstats
path: root/llvm/tools/opt/opt.cpp
diff options
context:
space:
mode:
authorMatt Arsenault <Matthew.Arsenault@amd.com>2019-06-12 14:23:33 +0000
committerMatt Arsenault <Matthew.Arsenault@amd.com>2019-06-12 14:23:33 +0000
commitf29366b1f594f48465c5a2754bcffac6d70fd0b1 (patch)
treed53fb6d4ddf8b4ec6fa71a065d4fcdde26349649 /llvm/tools/opt/opt.cpp
parent61f6395fd011267307f73e9d0b80d6ae2c24de84 (diff)
downloadbcm5719-llvm-f29366b1f594f48465c5a2754bcffac6d70fd0b1.tar.gz
bcm5719-llvm-f29366b1f594f48465c5a2754bcffac6d70fd0b1.zip
StackProtector: Use PointerMayBeCaptured
This was using its own, outdated list of possible captures. This was at minimum not catching cmpxchg and addrspacecast captures. One change is now any volatile access is treated as capturing. The test coverage for this pass is quite inadequate, but this required removing volatile in the lifetime capture test. Also fixes some infrastructure issues to allow running just the IR pass. Fixes bug 42238. llvm-svn: 363169
Diffstat (limited to 'llvm/tools/opt/opt.cpp')
-rw-r--r--llvm/tools/opt/opt.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/tools/opt/opt.cpp b/llvm/tools/opt/opt.cpp
index 4871eb2058c..4410b4c1679 100644
--- a/llvm/tools/opt/opt.cpp
+++ b/llvm/tools/opt/opt.cpp
@@ -517,6 +517,7 @@ int main(int argc, char **argv) {
initializeDwarfEHPreparePass(Registry);
initializeSafeStackLegacyPassPass(Registry);
initializeSjLjEHPreparePass(Registry);
+ initializeStackProtectorPass(Registry);
initializePreISelIntrinsicLoweringLegacyPassPass(Registry);
initializeGlobalMergePass(Registry);
initializeIndirectBrExpandPassPass(Registry);
OpenPOWER on IntegriCloud