aboutsummaryrefslogtreecommitdiffstats
path: root/executor/test.h
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2024-05-28 11:01:35 +0200
committerDmitry Vyukov <dvyukov@google.com>2024-05-28 10:35:26 +0000
commit34889ee3b09e7b4d381828377aa6173bfcc36cc7 (patch)
tree85861179046c9d3126ef0403dd4cb2a44a00d03c /executor/test.h
parentf550015e921148a45f14a8ea6ac8fe1ade4907af (diff)
executor: fix coverfilter header size
Manager was switched to 64-bit PCs, but executor still expected 4-byte PC start in the header. Fix it and switch size to uint64 for simplicity as well.
Diffstat (limited to 'executor/test.h')
-rw-r--r--executor/test.h19
1 files changed, 9 insertions, 10 deletions
diff --git a/executor/test.h b/executor/test.h
index 9cbc88cc1..977cbd0ef 100644
--- a/executor/test.h
+++ b/executor/test.h
@@ -205,30 +205,29 @@ static int test_csum_inet_acc()
static int test_coverage_filter()
{
struct tmp_cov_filter_t {
- uint32 pcstart;
- uint32 pcsize;
+ uint64 pcstart;
+ uint64 pcsize;
uint8 bitmap[((0x1000 >> 4) + 7) / 8];
};
static struct tmp_cov_filter_t tmp_cov_filter;
- tmp_cov_filter.pcstart = 0x81000000;
+ tmp_cov_filter.pcstart = 0xffffffff81000000;
tmp_cov_filter.pcsize = 0x1000;
cov_filter = (cov_filter_t*)&tmp_cov_filter;
flag_coverage_filter = true;
- uint64 full_enable_pc = 0xffffffff81000765;
- uint64 full_disable_pc = 0xffffffff81000627;
- uint64 full_out_pc = 0xffffffff82000000;
+ uint64 enable_pc = 0xffffffff81000765;
+ uint64 disable_pc = 0xffffffff81000627;
+ uint64 out_pc = 0xffffffff82000000;
- uint32 enable_pc = (uint32)full_enable_pc & 0xffffffff;
uint32 idx = ((enable_pc - cov_filter->pcstart) >> 4) / 8;
uint32 shift = ((enable_pc - cov_filter->pcstart) >> 4) % 8;
cov_filter->bitmap[idx] |= (1 << shift);
- if (!coverage_filter(full_enable_pc))
+ if (!coverage_filter(enable_pc))
return 1;
- if (coverage_filter(full_disable_pc))
+ if (coverage_filter(disable_pc))
return 1;
- if (coverage_filter(full_out_pc))
+ if (coverage_filter(out_pc))
return 1;
cov_filter = NULL;