diff options
author | Kostya Kortchinsky <kostyak@google.com> | 2018-02-08 16:29:48 +0000 |
---|---|---|
committer | Kostya Kortchinsky <kostyak@google.com> | 2018-02-08 16:29:48 +0000 |
commit | 4e053fa541e0e75a99d8c1ef5c97ada42076f46f (patch) | |
tree | a4821f1ad953623c4c974b7ccecd98708f283430 /lib/scudo/scudo_flags.cpp | |
parent | 816aba3c5898055fff6a9dffcbae7ec1e33def30 (diff) | |
download | compiler-rt-4e053fa541e0e75a99d8c1ef5c97ada42076f46f.tar.gz |
[scudo] Allow options to be defined at compile time
Summary:
Allow for options to be defined at compile time, like is already the case for
other sanitizers, via `SCUDO_DEFAULT_OPTIONS`.
Reviewers: alekseyshl, dberris
Reviewed By: alekseyshl, dberris
Subscribers: kubamracek, delcypher, llvm-commits, #sanitizers
Differential Revision: https://reviews.llvm.org/D42980
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324620 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/scudo/scudo_flags.cpp')
-rw-r--r-- | lib/scudo/scudo_flags.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/scudo/scudo_flags.cpp b/lib/scudo/scudo_flags.cpp index ad50800c4..c012471a8 100644 --- a/lib/scudo/scudo_flags.cpp +++ b/lib/scudo/scudo_flags.cpp @@ -35,6 +35,14 @@ static void RegisterScudoFlags(FlagParser *parser, Flags *f) { #undef SCUDO_FLAG } +static const char *getCompileDefinitionScudoDefaultOptions() { +#ifdef SCUDO_DEFAULT_OPTIONS + return SANITIZER_STRINGIFY(SCUDO_DEFAULT_OPTIONS); +#else + return ""; +#endif +} + static const char *getScudoDefaultOptions() { return (&__scudo_default_options) ? __scudo_default_options() : ""; } @@ -54,6 +62,9 @@ void initFlags() { RegisterScudoFlags(&ScudoParser, f); RegisterCommonFlags(&ScudoParser); + // Override from compile definition. + ScudoParser.ParseString(getCompileDefinitionScudoDefaultOptions()); + // Override from user-specified string. ScudoParser.ParseString(getScudoDefaultOptions()); |