diff options
author | van Hauser <vh@thc.org> | 2020-06-16 15:59:09 +0200 |
---|---|---|
committer | van Hauser <vh@thc.org> | 2020-06-16 15:59:09 +0200 |
commit | e5dcaa818e58eaa48c58865ae9f623c5a44989d7 (patch) | |
tree | 1c74f2f134a094d6aa23aa389d81c6959efe36cf | |
parent | bac2da866912d69eb89207757375f0753be2cae2 (diff) | |
download | afl++-e5dcaa818e58eaa48c58865ae9f623c5a44989d7.tar.gz |
set class afl instrumentation if llvm <= 6
-rw-r--r-- | docs/Changelog.md | 8 | ||||
-rw-r--r-- | llvm_mode/afl-clang-fast.c | 12 |
2 files changed, 11 insertions, 9 deletions
diff --git a/docs/Changelog.md b/docs/Changelog.md index 21f79cda..efc18ab5 100644 --- a/docs/Changelog.md +++ b/docs/Changelog.md @@ -24,10 +24,10 @@ sending a mail to <afl-users+subscribe@googlegroups.com>. - fix/update to MOpt (thanks to arnow117) - added MOpt dictionary support from repo - llvm_mode: - - the default instrumentation is now PCGUARD, as it is faster and provides - better coverage. The original afl instrumentation can be set via - AFL_LLVM_INSTRUMENT=AFL. This is automatically done when the WHITELIST - feature is used. + - the default instrumentation is now PCGUARD if the llvm version is >= 7, + as it is faster and provides better coverage. The original afl + instrumentation can be set via AFL_LLVM_INSTRUMENT=AFL. This is + automatically done when the WHITELIST feature is used. - some targets want a ld variant for LD that is not gcc/clang but ld, added afl-ld-lto to solve this - lowered minimum required llvm version to 3.4 (except LLVMInsTrim, which diff --git a/llvm_mode/afl-clang-fast.c b/llvm_mode/afl-clang-fast.c index 57504e65..1e71a8d1 100644 --- a/llvm_mode/afl-clang-fast.c +++ b/llvm_mode/afl-clang-fast.c @@ -757,12 +757,14 @@ int main(int argc, char **argv, char **envp) { if (instrument_mode == 0) { -#ifndef USE_TRACE_PC - if (getenv("AFL_LLVM_WHITELIST")) - instrument_mode = INSTRUMENT_AFL; - else +#if LLVM_VERSION_MAJOR <= 6 + instrument_mode = INSTRUMENT_AFL; +#else + if (getenv("AFL_LLVM_WHITELIST")) + instrument_mode = INSTRUMENT_AFL; + else + instrument_mode = INSTRUMENT_PCGUARD; #endif - instrument_mode = INSTRUMENT_PCGUARD; } |