http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46567

--- Comment #4 from Aldy Hernandez <aldyh at gcc dot gnu.org> 2010-12-13 
11:12:08 UTC ---
[Comments from Richard.]

There are two possible solutions:

  (1) Teach inlining to propagate the in_transaction_p bit
      to every call within the function that gets inlined,

  (2) Don't use an in_transaction_p bit.  I.e. rewrite
      <tmipa> to only use the region blocks bitmap, rather
      than cheating with on-the-side data that has to be
      kept up to date by other parties.

Nr 2 is probably the better solution.  You might be able to use
cgraph_edge->aux as a replacement marker for in_transaction_p
during the <tmipa> pass.  That would certainly make things like
the use in ipa_tm_note_irrevocable easier.

[Comments from Aldy]

I'll be fixing this with option 2, but I'm trying to come up with a work around
for now.

Reply via email to