about summary refs log tree commit diff
path: root/instrumentation/compare-transform-pass.so.cc
diff options
context:
space:
mode:
authorDavid Carlier <devnexen@gmail.com>2023-01-20 22:12:35 +0000
committerDavid Carlier <devnexen@gmail.com>2023-01-20 22:12:35 +0000
commitafd2ea90dfdb9aa7668c482e7c427f95c4847843 (patch)
treee0ba7b95daf44f319bbbf0a6aa58f7d0048d3b32 /instrumentation/compare-transform-pass.so.cc
parent5163a49350ed17149cb3c52bc79bd87e86402510 (diff)
downloadafl++-afd2ea90dfdb9aa7668c482e7c427f95c4847843.tar.gz
LLVM plugin 16+ support proposal.
- Lifting the standard to C++17.
- Beyond the cosmetic changes, it boils down to BasicBlock::getInstList being
  no longer available (and reading the header it is no accident).
Diffstat (limited to 'instrumentation/compare-transform-pass.so.cc')
-rw-r--r--instrumentation/compare-transform-pass.so.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/instrumentation/compare-transform-pass.so.cc b/instrumentation/compare-transform-pass.so.cc
index 39bff510..efc99d20 100644
--- a/instrumentation/compare-transform-pass.so.cc
+++ b/instrumentation/compare-transform-pass.so.cc
@@ -708,7 +708,11 @@ bool CompareTransform::transformCmps(Module &M, const bool processStrcmp,
     /* since the call is the first instruction of the bb it is safe to
      * replace it with a phi instruction */
     BasicBlock::iterator ii(callInst);
+#if LLVM_MAJOR >= 16
+    ReplaceInstWithInst(callInst->getParent(), ii, PN);
+#else
     ReplaceInstWithInst(callInst->getParent()->getInstList(), ii, PN);
+#endif
 
   }