Patchwork PR middle-end/51212: sorry out on -fgnu-tm + -fnon-call-exceptions

login
register
mail settings
Submitter Aldy Hernandez
Date Jan. 4, 2012, 2:55 p.m.
Message ID <4F046860.5070303@redhat.com>
Download mbox | patch
Permalink /patch/134275/
State New
Headers show

Comments

Aldy Hernandez - Jan. 4, 2012, 2:55 p.m.
On 01/03/12 14:33, Richard Henderson wrote:
> On 01/04/2012 01:10 AM, Aldy Hernandez wrote:
>> I can certainly do this.  I am however, waiting for the final approval.  It wasn't clear whether that was an approval from Richard Henderson, or whether I should wait for an official ok.
>>
>> OK for mainline?
>
> Yes, it was approval.
>
>
> r~

Richi, this is the patch I committed with your suggestions for the 
documentation (*).  Let me know if you'd like it worded different.

(*) Note, the test got committed by mistake in my previous commit a few 
minutes ago along with my previous fix.  Sorry about that.
PR middle-end/51212
	* opts.c (finish_options): Sorry out when using transactional
	memory and non-call exceptions.
	* doc/invoke.texi (C Dialect Options): Document it.

Patch

Index: doc/invoke.texi
===================================================================
--- doc/invoke.texi	(revision 182848)
+++ doc/invoke.texi	(working copy)
@@ -1742,6 +1742,9 @@  For more information on GCC's support fo
 @xref{Enabling libitm,,The GNU Transactional Memory Library,libitm,GNU
 Transactional Memory Library}.
 
+Note that the transactional memory feature is not supported with
+non-call exceptions (@option{-fnon-call-exceptions}).
+
 @item -fms-extensions
 @opindex fms-extensions
 Accept some non-standard constructs used in Microsoft header files.
Index: opts.c
===================================================================
--- opts.c	(revision 182876)
+++ opts.c	(working copy)
@@ -666,6 +666,9 @@  finish_options (struct gcc_options *opts
   if (opts->x_flag_tm && opts->x_flag_non_call_exceptions)
     sorry ("transactional memory is not supported with non-call exceptions");
 
+  if (opts->x_flag_tm && opts->x_flag_non_call_exceptions)
+    sorry ("transactional memory is not supported with non-call exceptions");
+
   /* -Wmissing-noreturn is alias for -Wsuggest-attribute=noreturn.  */
   if (opts->x_warn_missing_noreturn)
     opts->x_warn_suggest_attribute_noreturn = true;