https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92280
--- Comment #6 from Hongtao.liu <crazylht at gmail dot com> --- (In reply to Richard Biener from comment #3) > That said, VN already computes the partial loads to { 148, _142, _145, _139 } > and would insert those CTORs in place of the loads, making the stores and > the AVX512 CTOR dead. But that's obviously only profitable if the stores > and the CTOR end up being dead, otherwise we risk doing redundant > vector construction where cheap loads from memory would be possible. > The alternative way expressing it via sub-vector extraction is similarly > on the boundary of profitable plus we're happily simplifying that to a > redundant CTOR. What about a rtl version pass_fre, after pass_expand it can be more certain to eliminate partial reloads.