[Bug tree-optimization/107346] gnat.dg/loop_optimization23_pkg.ad failure afer r13-3413-ge10ca9544632db

2022-10-21 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107346

--- Comment #2 from Richard Biener  ---
I think the issue was probably latent and the function assumes that bitfield
accesses are rejected earlier but now are no longer(?).  vect_analyze_data_refs
is usually responsible for that, eventually we also rely on data-ref analysis
itself to reject bitfield accesses.

[Bug tree-optimization/107346] gnat.dg/loop_optimization23_pkg.ad failure afer r13-3413-ge10ca9544632db

2022-10-21 Thread avieira at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107346

avieira at gcc dot gnu.org changed:

   What|Removed |Added

   Assignee|unassigned at gcc dot gnu.org  |avieira at gcc dot 
gnu.org
 Status|UNCONFIRMED |NEW
 Ever confirmed|0   |1
   Last reconfirmed||2022-10-21

--- Comment #1 from avieira at gcc dot gnu.org ---
I've tracked this down to 'vect_check_gather_scatter's pbytepos calculation:

poly_int64 pbytepos = exact_div (pbitpos, BITS_PER_UNIT);

Where pbitpos is 4 and that triggers an assert in exact_div. I am not sure what
the best fix would be here. The stmt this fails on is:
_ifc__23 = (*x_7(D))[_1].b.D.3707;

But I am having trouble debugging this as I cant' seem to break on
vect_recog_bit_insert_pattern and I haven't figured out how to get gnat1 to
create dumps :(