Closed hbrodin closed 1 year ago
Is label 0 a result of the assignment
char c1 = 0, c2 = 0;
?
(Asking because I am not 100% sure, not because I know!!) would or could that be two labels? Sort of surprised that - if I am correct about what they refer to - they could count as a range node. Maybe because zeroed out together?
Label zero represents untainted data. The first real taint label is one. In decoding of the taint node section, there is a check if label 1
> label 2
, if so it is a UnionTaint
else it is a RangeTaint
. Except, there is one special case label1 == label2 == 0
. I'm working on a fix for this right now.
Compiling an instrumented version of the below program
Yields the following node sequence, when iterating the resulting TDAG:
using
I think the reason is that label zero is interpreted as a RangeNode when it should be omitted.