diff options
| author | vanhauser-thc <vh@thc.org> | 2021-11-03 12:49:54 +0100 |
|---|---|---|
| committer | vanhauser-thc <vh@thc.org> | 2021-11-03 12:49:54 +0100 |
| commit | ccded9fc5cfead1b88104484c4acde12e81e0afe (patch) | |
| tree | 2ed0dc70a25f410bf165a4cd13767ff4251f91ac /instrumentation/SanitizerCoveragePCGUARD.so.cc | |
| parent | caf68e5bf25a8a73bcc21b870499b640e7702d85 (diff) | |
| download | afl++-ccded9fc5cfead1b88104484c4acde12e81e0afe.tar.gz | |
vectorized coverage only possible for llvm 14 :(
Diffstat (limited to 'instrumentation/SanitizerCoveragePCGUARD.so.cc')
| -rw-r--r-- | instrumentation/SanitizerCoveragePCGUARD.so.cc | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/instrumentation/SanitizerCoveragePCGUARD.so.cc b/instrumentation/SanitizerCoveragePCGUARD.so.cc index 70af2ee2..10c9430e 100644 --- a/instrumentation/SanitizerCoveragePCGUARD.so.cc +++ b/instrumentation/SanitizerCoveragePCGUARD.so.cc @@ -895,6 +895,12 @@ bool ModuleSanitizerCoverage::InjectCoverage(Function & F, CallInst *callInst = nullptr; + /* + std::string errMsg; + raw_string_ostream os(errMsg); + IN.print(os); + fprintf(stderr, "X: %s\n", os.str().c_str()); + */ if ((callInst = dyn_cast<CallInst>(&IN))) { Function *Callee = callInst->getCalledFunction(); @@ -948,7 +954,10 @@ bool ModuleSanitizerCoverage::InjectCoverage(Function & F, result = IRB.CreateSelect(condition, GuardPtr1, GuardPtr2); - } else if (t->getTypeID() == llvm::Type::FixedVectorTyID) { + } else + +#if LLVM_VERSION_MAJOR > 13 + if (t->getTypeID() == llvm::Type::FixedVectorTyID) { FixedVectorType *tt = dyn_cast<FixedVectorType>(t); if (tt) { @@ -1015,9 +1024,13 @@ bool ModuleSanitizerCoverage::InjectCoverage(Function & F, } - } else { + } else + +#endif + { unhandled++; + continue; } |
