Fraunhofer-AISEC/codyze

Support bitfields and bitmasks

fwendland opened this issue · 0 comments

Software libraries may use bitfields and bitmasks to track configuration options. Options can be included, combined or excluded. In the end, there will be a bitfield with each bit representing whether an option is set or not.

Currently, MARK does not support a simple way to track bitfields and bitmasks. In particular, it must be possible:

  1. to track expressions (i.e. &, |, ...) that combine options,
  2. to track multiple calls to function manipulationing options (e.g. set_*(), unset_*(), ...)
  3. to track calls that reset options (e.g. clear_*())

In the end, it should become possible to get a computed value for the bitfield before it's being used.