[Bug middle-end/121831] [15/16 regression] ICE when building melonds-1.0 with LTO (expand_expr_real_2, at expr.cc:9779)
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Sep 8 10:57:30 GMT 2025
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121831
--- Comment #11 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
store_constructor simply doesn't have RAW_DATA_CST support, that can be added.
What worries me more is that expand_constructor doesn't have some upper size
bound on the optimization. We punt if we can't can_move_by_pieces and exp is
not mostly zeros,
but if exp is mostly zeros, even if it is say 10GB of non-zeros and 30GB of
zeros, we still could expand it by clearing 40GB and then trying to store
10billion INTEGER_CSTs one by one into the MEM. mostly_zeros_p still means
just that 3/4 or more of it are zero bytes, the non-zero byte chunks can be
huge.
More information about the Gcc-bugs
mailing list