On Tue, Jan 11, 2022 at 11:45 AM Eric Botcazou via Gcc-patches <gcc-patches@gcc.gnu.org> wrote: > > Hi, > > we recently received the report that the IPA-SRA pass introduced in GCC 10 > does not always play nice with the reverse scalar storage order that can be > used in structures/records/unions. Reading the code, the pass apparently > correctly detects it but fails to propagate the information to the rewriting > phase in some cases and, in particular, does not stream it for LTO. > > The attached patch is a tentative fix for these issues spotted essentially by > code reading. It also contains various minor tweaks left and right. > > Bootstrapped/regtested on x86-64/Linux, OK for mainline, 11 and 10 branches?
LGTM. Thanks, Richard. > > 2022-01-11 Eric Botcazou <ebotca...@adacore.com> > > * ipa-param-manipulation.c (ipa_dump_adjusted_parameters): Dump > reverse flag as "reverse" for the sake of consistency. > * ipa-sra.c: Fix copyright year. > (ipa_sra_function_summaries::duplicate): Copy the reverse flag. > (dump_isra_access): Remove confusing dump line. > (isra_write_node_summary): Write the reverse flag. > (isra_read_node_info): Read it. > (pull_accesses_from_callee): Copy it. > > -- > Eric Botcazou