OSDN Git Service

PR middle-end/51212
authoraldyh <aldyh@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 4 Jan 2012 14:53:30 +0000 (14:53 +0000)
committeraldyh <aldyh@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 4 Jan 2012 14:53:30 +0000 (14:53 +0000)
        * opts.c (finish_options): Sorry out when using transactional
        memory and non-call exceptions.
        * doc/invoke.texi (C Dialect Options): Document it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182877 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/doc/invoke.texi
gcc/opts.c

index fc64456..d01b88d 100644 (file)
@@ -1,5 +1,12 @@
 2012-01-04  Aldy Hernandez  <aldyh@redhat.com>
 
+       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.
+
+2012-01-04  Aldy Hernandez  <aldyh@redhat.com>
+
        PR middle-end/51696
        * trans-mem.c (diagnose_tm_1): Display indirect calls with no name
        correctly.
index bb05d88..1e45b61 100644 (file)
@@ -1742,6 +1742,9 @@ For more information on GCC's support for transactional memory,
 @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 2ed5560..121cf69 100644 (file)
@@ -666,6 +666,9 @@ finish_options (struct gcc_options *opts, struct gcc_options *opts_set,
   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;