This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [C++ RFC] Re: PR 10776


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]