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?

Reply via email to