This is the mail archive of the
mailing list for the GCC project.
Re: trans-mem: virtual ops for gimple_transaction
On 02/13/2012 01:35 AM, Richard Guenther wrote:
> On Fri, 10 Feb 2012, Richard Henderson wrote:
>> On 02/10/2012 01:44 AM, Richard Guenther wrote:
>>> What is the reason to keep a GIMPLE_TRANSACTION stmt after
>>> TM lowering and not lower it to a builtin function call?
>> Because "real" optimization hasn't happened yet, and we hold
>> out hope that we'll be able to delete stuff as unreachable.
>> Especially all instances of transaction_cancel.
>>> It seems the body is empty after lowering (what's the label thing?)
>> The label is the transaction cancel label.
>> When we finally convert GIMPLE_TRANSACTION a builtin, we'll
>> generate different code layouts with and without a cancel.
> Ah, I see. But wouldn't a placeholder builtin function be
> effectively the same as using a new GIMPLE stmt kind?
Except for the whole "need to hold on to a label" thing.
Honestly, think about that for 10 seconds and tell me that
a builtin is better than simply re-tasking the gimple code
that we already have around.