diff options
author | Evgeniy Stepanov <eugeni.stepanov@gmail.com> | 2018-06-21 23:22:37 +0000 |
---|---|---|
committer | Evgeniy Stepanov <eugeni.stepanov@gmail.com> | 2018-06-21 23:22:37 +0000 |
commit | fb762b27f27c67d00a8c3ab04452ddfb524a53b1 (patch) | |
tree | 63e32acb59f6f77497b424b2b50ed0e0f8c16c3f /clang/lib/CodeGen/CGExpr.cpp | |
parent | 2ef486690cbec5e626fc4eeaddce59a996e213f2 (diff) | |
download | bcm5719-llvm-fb762b27f27c67d00a8c3ab04452ddfb524a53b1.tar.gz bcm5719-llvm-fb762b27f27c67d00a8c3ab04452ddfb524a53b1.zip |
Ignore blacklist when generating __cfi_check_fail.
Summary: Fixes PR37898.
Reviewers: pcc, vlad.tsyrklevich
Subscribers: cfe-commits
Differential Revision: https://reviews.llvm.org/D48454
llvm-svn: 335305
Diffstat (limited to 'clang/lib/CodeGen/CGExpr.cpp')
-rw-r--r-- | clang/lib/CodeGen/CGExpr.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CGExpr.cpp b/clang/lib/CodeGen/CGExpr.cpp index c1b30500a7a..12b30936dc2 100644 --- a/clang/lib/CodeGen/CGExpr.cpp +++ b/clang/lib/CodeGen/CGExpr.cpp @@ -3075,6 +3075,11 @@ void CodeGenFunction::EmitCfiCheckFail() { StartFunction(GlobalDecl(), CGM.getContext().VoidTy, F, FI, Args, SourceLocation()); + // This function should not be affected by blacklist. This function does + // not have a source location, but "src:*" would still apply. Revert any + // changes to SanOpts made in StartFunction. + SanOpts = CGM.getLangOpts().Sanitize; + llvm::Value *Data = EmitLoadOfScalar(GetAddrOfLocalVar(&ArgData), /*Volatile=*/false, CGM.getContext().VoidPtrTy, ArgData.getLocation()); |