(patch] Do not put incomplete CONSTRUCTORs into static memory

Richard Biener richard.guenther@gmail.com
Tue May 5 08:38:02 GMT 2020


On Tue, May 5, 2020 at 10:30 AM Eric Botcazou <botcazou@adacore.com> wrote:
>
> Hi,
>
> the CONSTRUCTOR_NO_CLEARING flag was invented to avoid generating a memset for
> CONSTRUCTORS that lack elements, but it turns out that the gimplifier can
> generate a memcpy for them instead, which is even worse performance-wise, so
> this prevents it from doing that for them.
>
> Tested on x86-64/Linux, OK for the mainline?

OK.

Richard.

>
> 2020-05-05  Eric Botcazou  <ebotcazou@adacore.com>
>
>         * gimplify.c (gimplify_init_constructor): Do not put the constructor
>         into static memory if it is not complete.
>
>
> 2020-05-05  Eric Botcazou  <ebotcazou@adacore.com>
>
>         * gnat.dg/aggr29.adb: New test.
>
> --
> Eric Botcazou


More information about the Gcc-patches mailing list