This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] [4.0] Fix performance regressions due to inlining
On Fri, 2005-03-04 at 08:39 -0800, Mark Mitchell wrote:
> Richard Guenther wrote:
>
> > patch one: ignore stores to DECL_IGNORED variables in estimate_num_insns
> > patch two: adjust inlining limits to 10% below the 3.4 values
> > patch three: make cost of CALL_EXPR depend on size of arguments
> > patch four: do not allow shrinking of unit size due to inlining
>
> > #1 is patches one and two
> > #2 is #1 + patch three
> > #3 is #1 + patch four
>
> > How do I need to proceed to get #2 considered for 4.0? Can someone
> > throw SPEC at that combination? Does anyone have stuff like PR8361
> > that includes _run_-time testing?
>
> I don't understand patch one. (Not "#1", "patch one".) Why don't
> stores to DECL_IGNORED variables matter? I understand why this helps
> certain codes, but it seems like a hack, rather than a conceptually
> sound change. I understand that you're trying to avoid counting nodes
> that won't actually result in code generation, but I don't think this
> approach is sound.
Agreed. Just because DECL_IGNORED is set does not mean the statement
is going to generate no code. It merely means the LHS of the
assignment is a compiler generated temporary -- it does _not_ correspond
to whether or not the assignment is going to generate code.
jeff