aboutsummaryrefslogtreecommitdiff
path: root/gcc/config.gcc
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2024-12-05 13:24:27 +0100
committerRichard Biener <rguenth@gcc.gnu.org>2024-12-06 10:29:08 +0100
commit1c07f7a1b45b3d6f46cb25f3bf068d94fe4131e8 (patch)
treeafb32d46b00c7e45a95a6101e34535c5f93fde12 /gcc/config.gcc
parentfeea589d78fd5ebe1c02cf937e184d2c66cd99ed (diff)
downloadgcc-1c07f7a1b45b3d6f46cb25f3bf068d94fe4131e8.zip
gcc-1c07f7a1b45b3d6f46cb25f3bf068d94fe4131e8.tar.gz
gcc-1c07f7a1b45b3d6f46cb25f3bf068d94fe4131e8.tar.bz2
Remove some duplicates reported by genmatch
genmatch currently has a difficulty to decide whether a duplicate structural match is really duplicate as uses of captures within predicates or in C code can be order dependent. For example a reported duplicate results in { tree captures[4] ATTRIBUTE_UNUSED = { _p1, _p0, _q20, _q21 } if (gimple_simplify_112 (res_op, seq, valueize, type, captures)) return true; } { tree captures[4] ATTRIBUTE_UNUSED = { _p1, _p0, _q21, _q20 }; if (gimple_simplify_112 (res_op, seq, valueize, type, captures)) return true; } where the difference is only in _q20 and _q21 being swapped but that resulting in a call to bitwise_inverted_equal_p (_p1, X) with X once _q20 and once _q21. That is, we treat bare captures as equal for reporting duplicates. Due to bitwise_inverted_equal_p there are meanwhile a _lot_ of duplicates reported that are not actual duplicates. The following removes some that are though, as the operands are only passed to types_match. * match.pd (.SAT_ADD patterns using IFN_ADD_OVERFLOW): Remove :c that only causes duplicate patterns.
Diffstat (limited to 'gcc/config.gcc')
0 files changed, 0 insertions, 0 deletions