From patchwork Wed Dec 5 21:06:44 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: PR rtl-optimization/51771: revert TM returns twice kludge From: Aldy Hernandez X-Patchwork-Id: 203962 Message-Id: <50BFB764.6050303@gmail.com> To: gcc-patches , Richard Henderson Date: Wed, 05 Dec 2012 15:06:44 -0600 As mentioned in the PR, this seems to no longer be an issue after we redesigned the TM abnormal edges (in the uninstrumented code path patchset). Tested with the STAMP benchmark for both 1 and 4 threads, as well as with the GCC regression suite. OK for trunk? commit 462e1c25a81bfb575a9113e4d117c5972c827715 Author: Aldy Hernandez Date: Mon Dec 3 13:03:16 2012 -0600 PR rtl-optimization/51771 Revert: * builtin-attrs.def (ATTR_RETURNS_TWICE, ATTR_TM_NOTHROW_RT_LIST): New. * gtm-builtins.def (BUILT_IN_TM_START): Add returns-twice attrib. diff --git a/gcc/builtin-attrs.def b/gcc/builtin-attrs.def index 545b6fd..d149e26 100644 --- a/gcc/builtin-attrs.def +++ b/gcc/builtin-attrs.def @@ -107,7 +107,6 @@ DEF_ATTR_IDENT (ATTR_STRFTIME, "strftime") DEF_ATTR_IDENT (ATTR_TYPEGENERIC, "type generic") DEF_ATTR_IDENT (ATTR_TM_REGPARM, "*tm regparm") DEF_ATTR_IDENT (ATTR_TM_TMPURE, "transaction_pure") -DEF_ATTR_IDENT (ATTR_RETURNS_TWICE, "returns_twice") DEF_ATTR_TREE_LIST (ATTR_NOVOPS_LIST, ATTR_NOVOPS, ATTR_NULL, ATTR_NULL) @@ -253,8 +252,6 @@ DEF_ATTR_TREE_LIST (ATTR_TM_NORETURN_NOTHROW_LIST, ATTR_TM_REGPARM, ATTR_NULL, ATTR_NORETURN_NOTHROW_LIST) DEF_ATTR_TREE_LIST (ATTR_TM_CONST_NOTHROW_LIST, ATTR_TM_REGPARM, ATTR_NULL, ATTR_CONST_NOTHROW_LIST) -DEF_ATTR_TREE_LIST (ATTR_TM_NOTHROW_RT_LIST, - ATTR_RETURNS_TWICE, ATTR_NULL, ATTR_TM_NOTHROW_LIST) /* Same attributes used for BUILT_IN_MALLOC except with TM_PURE thrown in. */ DEF_ATTR_TREE_LIST (ATTR_TMPURE_MALLOC_NOTHROW_LIST, diff --git a/gcc/gtm-builtins.def b/gcc/gtm-builtins.def index 171019e..7dcad03 100644 --- a/gcc/gtm-builtins.def +++ b/gcc/gtm-builtins.def @@ -1,5 +1,5 @@ DEF_TM_BUILTIN (BUILT_IN_TM_START, "_ITM_beginTransaction", - BT_FN_UINT32_UINT32_VAR, ATTR_TM_NOTHROW_RT_LIST) + BT_FN_UINT32_UINT32_VAR, ATTR_TM_NOTHROW_LIST) DEF_TM_BUILTIN (BUILT_IN_TM_COMMIT, "_ITM_commitTransaction", BT_FN_VOID, ATTR_TM_NOTHROW_LIST)