about summary refs log tree commit diff
diff options
context:
space:
mode:
authorvanhauser-thc <vh@thc.org>2023-06-24 09:30:09 +0200
committervanhauser-thc <vh@thc.org>2023-06-24 09:30:09 +0200
commitedd352612da1f58832cbe84d909a8998ce4fa690 (patch)
tree0d2c59bb8bcc0c4d512bf36ff1633395c1b32bd3
parent2106738d6b7593f18aab87d03e493ea3a86adeee (diff)
downloadafl++-edd352612da1f58832cbe84d909a8998ce4fa690.tar.gz
code format
-rw-r--r--docs/Changelog.md6
-rw-r--r--instrumentation/split-compares-pass.so.cc12
2 files changed, 14 insertions, 4 deletions
diff --git a/docs/Changelog.md b/docs/Changelog.md
index c850c43e..e6b90d3d 100644
--- a/docs/Changelog.md
+++ b/docs/Changelog.md
@@ -18,9 +18,13 @@
     - fixed a bug inherited from vanilla AFL where a coverage of
       map[123] = 11 would be the same as map[1123] = 1
     - warn on crashing inputs
-  - afl-cc
+  - afl-cc:
     - fixed an off-by-one instrumentation of iselect, hurting coverage a bit.
       Thanks to @amykweon for spotting and fixing!
+    - @toka fixed a bug in laf-intel signed integer comparison splitting,
+      thanks a lot!!
+  - frida_mode:
+    - support for long form instrumentation on x86_x64 and arm64
 
 
 ### Version ++4.07c (release)
diff --git a/instrumentation/split-compares-pass.so.cc b/instrumentation/split-compares-pass.so.cc
index 3cfd1964..6eafb332 100644
--- a/instrumentation/split-compares-pass.so.cc
+++ b/instrumentation/split-compares-pass.so.cc
@@ -464,8 +464,11 @@ bool SplitComparesTransform::simplifyOrEqualsCompare(CmpInst     *IcmpInst,
   ReplaceInstWithInst(IcmpInst->getParent()->getInstList(), ii, PN);
 #endif
   if (new_pred == CmpInst::ICMP_SGT || new_pred == CmpInst::ICMP_SLT) {
+
     simplifySignedCompare(icmp_np, M, worklist);
+
   }
+
   worklist.push_back(icmp_eq);
 
   return true;
@@ -751,11 +754,14 @@ bool SplitComparesTransform::splitCompare(CmpInst *cmp_inst, Module &M,
         icmp_inv_cmp = CmpInst::Create(Instruction::ICmp, CmpInst::ICMP_UGT,
                                        op0_high, op1_high);
 
-      }
-      else {
+      } else {
+
         // Never gonna appen
         if (!be_quiet)
-          fprintf(stderr, "Error: split-compare: Equals or signed not removed: %d\n", pred);
+          fprintf(stderr,
+                  "Error: split-compare: Equals or signed not removed: %d\n",
+                  pred);
+
       }
 
 #if LLVM_MAJOR >= 16