public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Michael Matz <matz@suse.de>
To: Eric Botcazou <ebotcazou@adacore.com>
Cc: gcc-patches@gcc.gnu.org
Subject: Re: Remember/restore ALLOCA_FOR_VAR_P over tuples
Date: Thu, 14 Apr 2011 16:07:00 -0000	[thread overview]
Message-ID: <Pine.LNX.4.64.1104141757320.1989@wotan.suse.de> (raw)
In-Reply-To: <201104141742.59090.ebotcazou@adacore.com>

Hi,

On Thu, 14 Apr 2011, Eric Botcazou wrote:

> > We have a flag for this already on the CALL_EXPR.  But we don't retain 
> > it over tuples, and hence we also don't look at it in 
> > inline_forbidden_p_stmt.  This patch fixes both.  (The strange testing 
> > of builtin-ness is because in CALL_EXPR the ALLOCA_FOR_VAR_P and 
> > CALL_FROM_THUNK_P flags are overloaded)
> 
> More precisely, we don't expose it on tuples; we do retain it over 
> tuples since we tuplify CALL_FROM_THUNK_P and we rematerialize it in 
> expand_call_stmt.

Right, that's correct, although of course it relies on the sharing of both 
flags on the tree side, which surprised me a bit as no comments in 
gimple.c/cfgexpand.c prepared me for that :)  I chose to not retain this 
sharing of flags for the gimple tuple, we have enough bits available for 
now.

> Nice patch.  The idea also occurred to me recently because we often run 
> into the inlining limitation in Ada.
> 
> Btw, I don't remember why I chose ALLOCA_FOR_VAR_P over 
> CALL_ALLOCA_FOR_VAR_P but, given the name of the GIMPLE flag and 
> predicate, it's probably time to change it.

Good idea, I'll rename it before checking in.


Ciao,
Michael.

  reply	other threads:[~2011-04-14 16:07 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-14 15:18 Michael Matz
2011-04-14 15:24 ` Richard Guenther
2011-04-14 15:49 ` Eric Botcazou
2011-04-14 16:07   ` Michael Matz [this message]
2011-04-15 20:25     ` Michael Matz
2011-04-16 12:53       ` Eric Botcazou
2011-05-11  9:08       ` H.J. Lu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Pine.LNX.4.64.1104141757320.1989@wotan.suse.de \
    --to=matz@suse.de \
    --cc=ebotcazou@adacore.com \
    --cc=gcc-patches@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).