[Eva] Reverts a change in the comparison function between partition keys.
[Datatype.Option] defines a different order than [Stdlib.Option.compare]. Type ['state partition] is a map from partition keys to states. Such maps are converted into lists to be propagated through statements. Changes in [Key.compare] impact the list order. The list order impacts the heuristics used to remove redundant states before propagating them (see Partitioning_index): redundant states may be propagated or not depending of the list order. This impacts the number of states propagated at some statements, and thus the consumed slevel, and the precision of the analysis afterwards. This commit reverts the change in the comparison of keys only to minimize changes in the behavior of the analysis partitioning.
Showing
- src/plugins/value/partitioning/partition.ml 1 addition, 1 deletionsrc/plugins/value/partitioning/partition.ml
- tests/value/oracle/split_return.0.res.oracle 2 additions, 2 deletionstests/value/oracle/split_return.0.res.oracle
- tests/value/oracle/split_return.1.res.oracle 5 additions, 5 deletionstests/value/oracle/split_return.1.res.oracle
- tests/value/oracle/split_return.4.res.oracle 1 addition, 1 deletiontests/value/oracle/split_return.4.res.oracle
Please register or sign in to comment