aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-structalias.c
diff options
context:
space:
mode:
authorAndrew MacLeod <amacleod@redhat.com>2021-07-16 11:42:14 -0400
committerAndrew MacLeod <amacleod@redhat.com>2021-07-16 20:27:10 -0400
commit704e8a825c78b9a8424c291509413bbb48e602c7 (patch)
tree8f2b7e49da176c3ec9af9b0124e45dda8e1dca1b /gcc/tree-ssa-structalias.c
parent87277b6a04486b606761b86dbcfbc9a4b6871f4c (diff)
downloadgcc-704e8a825c78b9a8424c291509413bbb48e602c7.zip
gcc-704e8a825c78b9a8424c291509413bbb48e602c7.tar.gz
gcc-704e8a825c78b9a8424c291509413bbb48e602c7.tar.bz2
Add wi_fold_in_parts.
range-ops uses wi_fold to individually fold subranges one at a time and then combined them. This patch first calls wi_fold_in_parts which checks if one of the subranges is small, and if so, further splits that subrange into constants. gcc/ PR tree-optimization/96542 * range-op.cc (range_operator::wi_fold_in_parts): New. (range_operator::fold_range): Call wi_fold_in_parts. (operator_lshift::wi_fold): Fix broken lshift by [0,0]. * range-op.h (wi_fold_in_parts): Add prototype. gcc/testsuite * gcc.dg/pr96542.c: New.
Diffstat (limited to 'gcc/tree-ssa-structalias.c')
0 files changed, 0 insertions, 0 deletions