aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorchinggg <24590067+chinggg@users.noreply.github.com>2023-08-13 00:24:44 +0800
committerchinggg <24590067+chinggg@users.noreply.github.com>2023-08-13 00:24:44 +0800
commit030799638ddb7bd42d97fea81951c7cb246e263b (patch)
treeca3ada11f64aa073334b6a063cde772d4c98dfac /src
parent8823f22a9c87123c1bfcc5bff10044de4c7a4a1f (diff)
downloadafl++-030799638ddb7bd42d97fea81951c7cb246e263b.tar.gz
Remove redundant comparison of `fav_factor` in `update_bitmap_score`
`top_rated_fav_factor` was actually calculated twice, but only one calculation and comparison is needed. Since `fav_factor` > `top_rated_fav_factor` will always cause skip of current iteration, `else if (fuzz_p2 == top_rated_fuzz_p2)` is also redundant.
Diffstat (limited to 'src')
-rw-r--r--src/afl-fuzz-queue.c25
1 files changed, 2 insertions, 23 deletions
diff --git a/src/afl-fuzz-queue.c b/src/afl-fuzz-queue.c
index 48fd33ec..20973f51 100644
--- a/src/afl-fuzz-queue.c
+++ b/src/afl-fuzz-queue.c
@@ -746,30 +746,9 @@ void update_bitmap_score(afl_state_t *afl, struct queue_entry *q) {
}
- if (fuzz_p2 > top_rated_fuzz_p2) {
+ if (fuzz_p2 > top_rated_fuzz_p2) continue;
- continue;
-
- } else if (fuzz_p2 == top_rated_fuzz_p2) {
-
- if (fav_factor > top_rated_fav_factor) { continue; }
-
- }
-
- if (unlikely(afl->schedule >= RARE) || unlikely(afl->fixed_seed)) {
-
- if (fav_factor > afl->top_rated[i]->len << 2) { continue; }
-
- } else {
-
- if (fav_factor >
- afl->top_rated[i]->exec_us * afl->top_rated[i]->len) {
-
- continue;
-
- }
-
- }
+ if (fav_factor > top_rated_fav_factor) continue;
/* Looks like we're going to win. Decrease ref count for the
previous winner, discard its afl->fsrv.trace_bits[] if necessary. */