]> gcc.gnu.org Git - gcc.git/commit
analyzer: handle comparisons against negated symbolic values [PR107948]
authorDavid Malcolm <dmalcolm@redhat.com>
Wed, 29 Mar 2023 18:16:48 +0000 (14:16 -0400)
committerDavid Malcolm <dmalcolm@redhat.com>
Wed, 29 Mar 2023 18:16:48 +0000 (14:16 -0400)
commita7cc8ecefb72f06368b055fa60f5a2ff2eb6dfdb
tree6f8c693c67665564c6bf5dcc9313a2bb9421db69
parent1c66f1c6d69dbe0a855f7adb61df8d92ca523899
analyzer: handle comparisons against negated symbolic values [PR107948]

Cherrypicked from r13-4456-g0b737090a69624.

gcc/analyzer/ChangeLog:
PR analyzer/107948
* region-model-manager.cc
(region_model_manager::maybe_fold_binop): Fold (0 - VAL) to -VAL.
* region-model.cc (region_model::eval_condition): Handle e.g.
"-X <= 0" as equivalent to X >= 0".

gcc/testsuite/ChangeLog:
PR analyzer/107948
* gcc.dg/analyzer/feasibility-pr107948.c: New test.

Signed-off-by: David Malcolm <dmalcolm@redhat.com>
gcc/analyzer/region-model-manager.cc
gcc/analyzer/region-model.cc
gcc/testsuite/gcc.dg/analyzer/feasibility-pr107948.c [new file with mode: 0644]
This page took 0.059852 seconds and 5 git commands to generate.