[patch] PR56572 flatten unnecessary nested transactions after inlining
Richard Biener
richard.guenther@gmail.com
Thu Dec 19 19:05:00 GMT 2013
Aldy Hernandez <aldyh@redhat.com> wrote:
>
>>> I'm still unsure whether the IPA inliner (not the early inliner)
>will add
>>> other nested transactions, so we may have to do everything in
>.tmmark and
>>> handle the dual code paths :(. Either way, this is a start.
>>
>> Sure it will. At least with cross-unit inlining with LTO. You can
>of
>> course simply
>> disallow inlining a function that has transactions into a transaction
>> when transactions
>> are lowered already.
>
>I'd still like to catch the common cases, like I do with this patch.
>
>Perhaps we move this code to the .tmmark pass and handle the
>uninstrumented case. rth?
Btw, don't you want an IPA pass that clones functions called from within transactions and optimize those accordingly? Thus make the tm lowering a real IPA pass?
Richard.
More information about the Gcc-patches
mailing list