diff --git a/include/coverage-32.h b/include/coverage-32.h index 89c08cdf..f50e098b 100644 --- a/include/coverage-32.h +++ b/include/coverage-32.h @@ -17,6 +17,22 @@ inline u32 classify_word(u32 word) { } +inline void classify_counts_mem(u32 *mem, u32 size) { + + u32 i = (size >> 2); + + while (i--) { + + /* Optimize for sparse bitmaps. */ + + if (unlikely(*mem)) { *mem = classify_word(*mem); } + + mem++; + + } + +} + void simplify_trace(afl_state_t *afl, u8 *bytes) { u32 *mem = (u32 *)bytes; diff --git a/include/coverage-64.h b/include/coverage-64.h index 5d2f6a57..e970da8b 100644 --- a/include/coverage-64.h +++ b/include/coverage-64.h @@ -72,7 +72,7 @@ inline void classify_counts(afl_forkserver_t *fsrv) { } -inline static void classify_counts_mem(u64 *mem, u32 size) { +inline void classify_counts_mem(u64 *mem, u32 size) { u32 i = (size >> 3);