Open michael-schwarz opened 2 months ago
[Debug] cava.c:1507:9-1507:27 (alloc@sid:459@tid:[main]): write less precise than mine-W-interval
write: (value:⊤, size:1024, no zeroinit:true)
less precise than
mine-W-interval: (value:⊤, size:1024, no zeroinit:true)
diff: 1024 instead of 1024
[Debug] cava.c:3552:5-3553:47 (alloc@sid:2113@tid:[main, input_fifo@cava.c:1931:5-1932:83]): protection more precise than write
protection: Uninitialized
more precise than
write: (trivial arrays:Array: (value:Uninitialized, size:4096, no zeroinit:false), IntDomLifter(intdomtuple):1)
reverse diff: compound: (trivial arrays:Array: (value:Uninitialized, size:4096, no zeroinit:false), IntDomLifter(intdomtuple):1) not same type as Uninitialized
both seem fishy.
cava has a lot of missing library functions though, so how exactly are you intending to analyze it without losing all precision from invalidations? I'm not sure how correctly those invalidations work with the more involved privatizations.
I now added the same handling we have for the non-relational privatizations upon threadenter with unknown function also to the relational privatization.
While that may be of questionable nature, handling this differently in different privatizations is even more so.
The branch I used to benchmark for my thesis diverges at d8be117080e1f6d0bdc9e8331e888f2d3ac2cf7c.
This draft MR is not intended to be merged but should allow me to keep an overview of the changes and see what should be maybe back-ported.
Back-ported:
To consider:
privPrecCompare
outputprivPrecCompare
output to stderr (in case it is saved to somewhere)exp.priv-prec-dump-proj
option to project precision of dumps to enums, intervals, and def_exc for comparison between different activated domains1431
traces
andtraces-rel
configurations to be more similar)bot_in_blob_leq_bot
sobot
andBlob(bot)
compare equal in privPrecCompare)Hotfixes: