https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94163
--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> --- From /* There's no CCP pass after PRE which would re-compute alignment information so make sure we re-materialize this here. */ if (gimple_call_builtin_p (call, BUILT_IN_ASSUME_ALIGNED) && args.length () - 2 <= 1 && tree_fits_uhwi_p (args[1]) && (args.length () != 3 || tree_fits_uhwi_p (args[2]))) { unsigned HOST_WIDE_INT halign = tree_to_uhwi (args[1]); unsigned HOST_WIDE_INT hmisalign = args.length () == 3 ? tree_to_uhwi (args[2]) : 0; if ((halign & (halign - 1)) == 0 && (hmisalign & ~(halign - 1)) == 0) set_ptr_info_alignment (get_ptr_info (forcedname), halign, hmisalign); } where set_ptr_info_alignment ICEs for align == 0. set_ptr_info_alignment takes unsigned int args but the above computes HWI quantities that get truncated here.