aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vectorizer.h
diff options
context:
space:
mode:
authorAlexandre Oliva <oliva@adacore.com>2025-02-07 08:30:47 -0300
committerAlexandre Oliva <oliva@gnu.org>2025-02-07 08:30:47 -0300
commit075ddb5226c40c4d86ab56b7788882822fb6494e (patch)
treef76f4c2084117cffc13253efa580eb4276acd90c /gcc/tree-vectorizer.h
parentb5a29a93ee29a882c9ed28cb0e6835f97d6f8182 (diff)
downloadgcc-075ddb5226c40c4d86ab56b7788882822fb6494e.zip
gcc-075ddb5226c40c4d86ab56b7788882822fb6494e.tar.gz
gcc-075ddb5226c40c4d86ab56b7788882822fb6494e.tar.bz2
[ifcombine] avoid creating out-of-bounds BIT_FIELD_REFs [PR118514]
If decode_field_reference finds a load that accesses past the inner object's size, bail out. Drop the too-strict assert. for gcc/ChangeLog PR tree-optimization/118514 PR tree-optimization/118706 * gimple-fold.cc (decode_field_reference): Refuse to consider merging out-of-bounds BIT_FIELD_REFs. (make_bit_field_load): Drop too-strict assert. * tree-eh.cc (bit_field_ref_in_bounds_p): Rename to... (access_in_bounds_of_type_p): ... this. Change interface, export. (tree_could_trap_p): Adjust. * tree-eh.h (access_in_bounds_of_type_p): Declare. for gcc/testsuite/ChangeLog PR tree-optimization/118514 PR tree-optimization/118706 * gcc.dg/field-merge-25.c: New.
Diffstat (limited to 'gcc/tree-vectorizer.h')
0 files changed, 0 insertions, 0 deletions