[Bug target/112773] [14 Regression] RISC-V ICE: in force_align_down_and_div, at poly-int.h:1828 on rv32gcv_zvl256b

rdapp at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Dec 1 11:54:12 GMT 2023


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112773

--- Comment #9 from Robin Dapp <rdapp at gcc dot gnu.org> ---
Ok, it's not the fold_extract_last expander.  It just appeared that way here
because I disabled some other things.

What we want to do is extract the last element from a vector.  This works as
long as we have a loop length (or a loop mask) as we can defer that to
vec_extract with element index len - 1.

In the epilog here we don't have either so the only workaround I can quickly
think of is allowing a poly_int constant as vec_extract index (where we know
the vector length and can extract the proper thing with a bit of extra work).

Richi, Richard:  Is that somehow viable or am I on the wrong track?


More information about the Gcc-bugs mailing list