This is the mail archive of the
mailing list for the GCC project.
Re: PR middle-end/52142: disallow inlining of certain TM_pure functions
- From: Torvald Riegel <triegel at redhat dot com>
- To: Aldy Hernandez <aldyh at redhat dot com>
- Cc: Richard Henderson <rth at redhat dot com>, gcc-patches <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 14 Feb 2012 19:39:48 +0100
- Subject: Re: PR middle-end/52142: disallow inlining of certain TM_pure functions
- References: <4F3AA21A.email@example.com>
On Tue, 2012-02-14 at 12:04 -0600, Aldy Hernandez wrote:
> Here we inline a transaction_pure function into a non transaction_pure
> function, but end up instrumenting all the memory operations in the
> tm_pure function regardless.
> As discussed in the PR, we should've disallowed inlining of TM_pure
> functions into non TM_pure functions. We are currently only disabling a
> subset of this, tm_safe callers. The patch below disallows all inlining
> of TM_pure functions into non TM_pure functions.
> No regressions.
> OK? (I'm not sure whether the "looks good" was because I'm handsome, or
> because it was an actual approval).
Will it inline transaction_pure into transaction_callable too? That
would not be good if we actually instrument the transaction_callable.
Inlining transaction_pure into completely nontransactional code is fine