https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112381
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Kostadin from comment #4) > This is the first commit where it doesn't ICE. I reverted it from master, > and it did start ICEing again. Does the ICE start at f08ca5903c7 ? If so this was the fix for that. > > commit r14-5001-g8111b5c23bd14f > Author: Haochen Gui <guih...@gcc.gnu.org> > Date: Mon Oct 30 10:59:51 2023 +0800 > > Expand: Checking available optabs for scalar modes in by pieces > operations > > The former patch (f08ca5903c7) examines the scalar modes by target > hook scalar_mode_supported_p. It causes some i386 regression cases > as XImode and OImode are not enabled in i386 target function. This > patch examines the scalar mode by checking if the corresponding optabs > are available for the mode. > > gcc/ > PR target/111449 > * expr.cc (qi_vector_mode_supported_p): Rename to... > (by_pieces_mode_supported_p): ...this, and extends it to do > the checking for both scalar and vector mode. > (widest_fixed_size_mode_for_size): Call > by_pieces_mode_supported_p to examine the mode. > (op_by_pieces_d::smallest_fixed_size_mode_for_size): Likewise. > > gcc/expr.cc | 23 +++++++++++++---------- > 1 file changed, 13 insertions(+), 10 deletions(-)