]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR lto/69254 (ICE in streamer_get_builtin_tree when using -fsanitize=shift on...
authorJakub Jelinek <jakub@redhat.com>
Tue, 26 Jan 2016 14:25:56 +0000 (15:25 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Tue, 26 Jan 2016 14:25:56 +0000 (15:25 +0100)
PR lto/69254
* lto-wrapper.c (merge_and_complain): Handle -fcilkplus.
(append_compiler_options): Handle -fcilkplus.
(append_linker_options): Ignore -fno-{openmp,openacc,cilkplus}.

From-SVN: r232829

gcc/ChangeLog
gcc/lto-wrapper.c

index 4dba48fa477f7d83a193e87b523e422aa3a25ac4..1d5f103ac1b393beadd4711e7500275ecef1d1e4 100644 (file)
@@ -1,3 +1,10 @@
+2016-01-26  Jakub Jelinek  <jakub@redhat.com>
+
+       PR lto/69254
+       * lto-wrapper.c (merge_and_complain): Handle -fcilkplus.
+       (append_compiler_options): Handle -fcilkplus.
+       (append_linker_options): Ignore -fno-{openmp,openacc,cilkplus}.
+
 2016-01-26  Nick Clifton  <nickc@redhat.com>
 
        PR target/66655
index 16d1f4573fd596fd6f4313cfc50da62f8d67e701..e636b8b54be473fc3e7bb47a5104d3e84b0580f7 100644 (file)
@@ -277,6 +277,7 @@ merge_and_complain (struct cl_decoded_option **decoded_options,
        case OPT_fwrapv:
        case OPT_fopenmp:
        case OPT_fopenacc:
+       case OPT_fcilkplus:
        case OPT_fcheck_pointer_bounds:
          /* For selected options we can merge conservatively.  */
          for (j = 0; j < *decoded_options_count; ++j)
@@ -505,6 +506,7 @@ append_compiler_options (obstack *argv_obstack, struct cl_decoded_option *opts,
        case OPT_fwrapv:
        case OPT_fopenmp:
        case OPT_fopenacc:
+       case OPT_fcilkplus:
        case OPT_ftrapv:
        case OPT_fstrict_overflow:
        case OPT_foffload_abi_:
@@ -558,6 +560,15 @@ append_linker_options (obstack *argv_obstack, struct cl_decoded_option *opts,
             ???  We fail to diagnose a possible mismatch here.  */
          continue;
 
+       case OPT_fopenmp:
+       case OPT_fopenacc:
+       case OPT_fcilkplus:
+         /* Ignore -fno-XXX form of these options, as otherwise
+            corresponding builtins will not be enabled.  */
+         if (option->value == 0)
+           continue;
+         break;
+
        default:
          break;
        }