aboutsummaryrefslogtreecommitdiff
path: root/libgcc
diff options
context:
space:
mode:
authorAndrew Pinski <apinski@marvell.com>2023-05-12 16:33:44 -0700
committerAndrew Pinski <apinski@marvell.com>2023-05-12 20:10:19 -0700
commit99488a6048745a7b999c22f46e5814d02ebf88d9 (patch)
tree70c4e859f73f651d4c204359ef2c1b587f44a5c2 /libgcc
parent20ca33db817cecb11661caad4a90c0aeced9130b (diff)
downloadgcc-99488a6048745a7b999c22f46e5814d02ebf88d9.zip
gcc-99488a6048745a7b999c22f46e5814d02ebf88d9.tar.gz
gcc-99488a6048745a7b999c22f46e5814d02ebf88d9.tar.bz2
MATCH: Fix PR 109834, ICE with popcount combined with bswap
After r14-673-gc0dd80e4c4c3, there was a check in the match patterns which was checking the type is unsigned but instead of using the type, the patch used the expression. This adds the needed TREE_TYPE so get the correct answer and don't ICE. Committed as obvious after a bootstrap/test on x86_64-linux-gnu. PR tree-optimization/109834 gcc/ChangeLog: * match.pd (popcount(bswap(x))->popcount(x)): Fix up unsigned type checking. (popcount(rotate(x,y))->popcount(x)): Likewise. gcc/testsuite/ChangeLog: * gcc.c-torture/compile/pr109834-1.c: New test. * gcc.dg/tree-ssa/pr109834-1.c: New test.
Diffstat (limited to 'libgcc')
0 files changed, 0 insertions, 0 deletions