This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/51211] ICE: SIGSEGV in execute_tm_mark (trans-mem.c:2242) with -fgnu-tm -O -freorder-blocks -ftracer --param hot-bb-frequency-fraction=1 and __transaction_atomic
- From: "patrick.marlier at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 18 Nov 2011 18:11:56 +0000
- Subject: [Bug middle-end/51211] ICE: SIGSEGV in execute_tm_mark (trans-mem.c:2242) with -fgnu-tm -O -freorder-blocks -ftracer --param hot-bb-frequency-fraction=1 and __transaction_atomic
- Auto-submitted: auto-generated
- References: <bug-51211-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51211
Patrick Marlier <patrick.marlier at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |aldyh at gcc dot gnu.org
--- Comment #1 from Patrick Marlier <patrick.marlier at gmail dot com> 2011-11-18 18:11:56 UTC ---
This seems to solve the issue but we need to figure out why we get _ITM_RU
here.
Thanks for reporting :)
Patrick Marlier.
Index: trans-mem.c
===================================================================
--- trans-mem.c (revision 181466)
+++ trans-mem.c (working copy)
@@ -2211,6 +2211,9 @@
if (fn_decl == builtin_decl_explicit (BUILT_IN_TM_MEMSET))
transaction_subcode_ior (region, GTMA_HAVE_STORE);
+ if (flags_from_decl_or_type (fn_decl) & ECF_TM_BUILTIN)
+ return false;
+
if (is_tm_pure_call (stmt))
return false;