[Bug other/46567] [trans-mem] ipa_tm_decrement_clone_counts ICE at -O2

aldyh at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Dec 13 11:12:00 GMT 2010


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.



More information about the Gcc-bugs mailing list