>>> Maybe you consider the following results to be a problem:
>>>
>>> kzalloc mcde [("mcde_probe", 2, 0, 198, 1, "m.c", 16, 1, 16, 3)]
>>> kzalloc ! mcde [("mcde_probe", 2, 0, 198, 1, "m.c", 16, 1, 16, 3)]
>>> platform_get_irq irq [("mcde_probe", 2, 0, 198, 1, "m.c", 97, 1, 97, 3)]
>>> platform_get_irq ! irq [("mcde_probe", 2, 0, 198, 1, "m.c", 97, 1, 97, 3)]
>>>
>>> The positions are the same. The result is because of an isomorphism that
>>> exchanges the branches of a conditional.
I would find it nice to explain the different software behaviour for the
mentioned
SmPL code variants
A:
if@p (
( <+... result ...+>
& check
) )
B:
if (
( <+... result ...+>
& check@p
) )
>> Can the data which are provided because of isomorphism transformations
>> be distinguished by an additional attribute?
>
> I think that you just want to disable the isomorphism. Put disable neg_if
> in the initial @@ of your rule.
Thanks for this suggestion.
Source code analysis can be continued also with this configuration option.
Now I become also more interested in improvements around parallel data
processing.
Which data structures would support aggregate computations for a growing code
base?
Regards,
Markus
_______________________________________________
Cocci mailing list
[email protected]
https://systeme.lip6.fr/mailman/listinfo/cocci