about summary refs log tree commit diff homepage
path: root/test
diff options
context:
space:
mode:
authorMartin Nowack <m.nowack@imperial.ac.uk>2019-12-19 15:23:37 +0000
committerCristian Cadar <c.cadar@imperial.ac.uk>2020-01-19 19:11:33 +0000
commitd9888fcefc216b16404a39ac7b82a8fd8d5f343f (patch)
tree631796f0078320551c478ea29b24cc13811e9573 /test
parent4300ed7cd1ec48292a1983bb80161099f15b2023 (diff)
downloadklee-d9888fcefc216b16404a39ac7b82a8fd8d5f343f.tar.gz
Remove statistics limit from istats.
Statistics encoded in `run.istats` were limited to a maximum number of 13 due to encoding in a `uint64_t` variable.
This approach has multiple limitations:
- a maximum number of 13 statistics were allowed
- a subtle bug can be triggered if many more statistics are added - independent of the selected statistics for `run.istats`

Depending on the linking order, statistics will get a different ID. Previously, the ID was used to shift a `1` to its position marking the statistic as being used.
This will lead to undefined behaviour if more than 63 statistics are used.

Using an llvm::SmallBitVector instead fixes both problems.
Diffstat (limited to 'test')
0 files changed, 0 insertions, 0 deletions