[C++ RFC] Re: PR 10776
Mark Mitchell
mark@codesourcery.com
Mon Jan 12 19:35:00 GMT 2004
On Sun, 2004-01-11 at 01:36, Richard Henderson wrote:
> On Sat, Jan 10, 2004 at 07:12:29PM +0100, Jan Hubicka wrote:
> > the testcase in PR 10776 contains insanely large initializer that
> > results in insanely large basic blocks containing many memory locations
> > and CSElib just explodes in invalidating memory location after each
> > store.
>
> While your two patches are still moderately interesting from the point
> of view of sanely handling extremely large basic blocks, it sort of
> misses the point that we're doing something insanely stupid here with
> the initialization of this object.
>
> The following patch splits the initialization into compile-time and
> run-time pieces. For this test, all but one store can be done at
> compile-time.
I thought that was not a valid transformation, but it turns out that it
is. I'd thought of doing this, but was never convinced it was allowed.
split_nonconstant_init and the _1 variant need comments for each of
their parameters.
If this patch passes tests, it is OK.
Thanks!
--
Mark Mitchell <mark@codesourcery.com>
CodeSourcery, LLC
More information about the Gcc-patches
mailing list