aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorTom de Vries <tom@codesourcery.com>2015-01-23 12:54:16 +0000
committerTom de Vries <vries@gcc.gnu.org>2015-01-23 12:54:16 +0000
commita0c88d0629a33161add8d5bc083f1e59f3f756f7 (patch)
tree667a67b3067e4f24e4c52912641a221fd52bf2d2 /gcc
parent1506ae0e1e865fb7a42fc37a47f1799b71f21c53 (diff)
downloadgcc-a0c88d0629a33161add8d5bc083f1e59f3f756f7.zip
gcc-a0c88d0629a33161add8d5bc083f1e59f3f756f7.tar.gz
gcc-a0c88d0629a33161add8d5bc083f1e59f3f756f7.tar.bz2
Make fopenacc an LTO option
2015-01-23 Tom de Vries <tom@codesourcery.com> PR libgomp/64672 * lto-opts.c (lto_write_options): Output non-explicit conservative -fno-openacc. * lto-wrapper.c (merge_and_complain): Handle merging -fopenacc. (append_compiler_options): Pass -fopenacc through. * c.opt (fopenacc): Mark as LTO option. * lang.opt (fopenacc): Mark as LTO option. * testsuite/libgomp.oacc-c-c++-common/abort-5.c: New test. From-SVN: r220038
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/c-family/ChangeLog5
-rw-r--r--gcc/c-family/c.opt2
-rw-r--r--gcc/fortran/ChangeLog5
-rw-r--r--gcc/fortran/lang.opt2
-rw-r--r--gcc/lto-opts.c4
-rw-r--r--gcc/lto-wrapper.c2
7 files changed, 26 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 418468f..b5beaf6 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,13 @@
2015-01-23 Tom de Vries <tom@codesourcery.com>
+ PR libgomp/64672
+ * lto-opts.c (lto_write_options): Output non-explicit conservative
+ -fno-openacc.
+ * lto-wrapper.c (merge_and_complain): Handle merging -fopenacc.
+ (append_compiler_options): Pass -fopenacc through.
+
+2015-01-23 Tom de Vries <tom@codesourcery.com>
+
PR libgomp/64707
* lto-opts.c (lto_write_options): Output non-explicit conservative
-fno-openmp.
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index ac72e86..851e664 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,5 +1,10 @@
2015-01-23 Tom de Vries <tom@codesourcery.com>
+ PR libgomp/64672
+ * c.opt (fopenacc): Mark as LTO option.
+
+2015-01-23 Tom de Vries <tom@codesourcery.com>
+
PR libgomp/64707
* c.opt (fopenmp): Mark as LTO option.
diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt
index 4b92022..fd00407 100644
--- a/gcc/c-family/c.opt
+++ b/gcc/c-family/c.opt
@@ -1284,7 +1284,7 @@ ObjC ObjC++ Var(flag_objc1_only)
Conform to the Objective-C 1.0 language as implemented in GCC 4.0
fopenacc
-C ObjC C++ ObjC++ Var(flag_openacc)
+C ObjC C++ ObjC++ LTO Var(flag_openacc)
Enable OpenACC
fopenmp
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 5ae81b1..bb66356 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,5 +1,10 @@
2015-01-23 Tom de Vries <tom@codesourcery.com>
+ PR libgomp/64672
+ * lang.opt (fopenacc): Mark as LTO option.
+
+2015-01-23 Tom de Vries <tom@codesourcery.com>
+
PR libgomp/64707
* lang.opt (fopenmp): Mark as LTO option.
diff --git a/gcc/fortran/lang.opt b/gcc/fortran/lang.opt
index 0360f6c..d86376a 100644
--- a/gcc/fortran/lang.opt
+++ b/gcc/fortran/lang.opt
@@ -567,7 +567,7 @@ Fortran Var(flag_module_private)
Set default accessibility of module entities to PRIVATE.
fopenacc
-Fortran
+Fortran LTO
; Documented in C
fopenmp
diff --git a/gcc/lto-opts.c b/gcc/lto-opts.c
index d44dba0..279107f 100644
--- a/gcc/lto-opts.c
+++ b/gcc/lto-opts.c
@@ -169,6 +169,10 @@ lto_write_options (void)
if (!global_options_set.x_flag_openmp
&& !global_options.x_flag_openmp)
append_to_collect_gcc_options (&temporary_obstack, &first_p, "-fno-openmp");
+ if (!global_options_set.x_flag_openacc
+ && !global_options.x_flag_openacc)
+ append_to_collect_gcc_options (&temporary_obstack, &first_p,
+ "-fno-openacc");
/* Append options from target hook and store them to offload_lto section. */
if (lto_stream_offload_p)
diff --git a/gcc/lto-wrapper.c b/gcc/lto-wrapper.c
index 2d0d451..e950771 100644
--- a/gcc/lto-wrapper.c
+++ b/gcc/lto-wrapper.c
@@ -272,6 +272,7 @@ merge_and_complain (struct cl_decoded_option **decoded_options,
case OPT_ftrapping_math:
case OPT_fwrapv:
case OPT_fopenmp:
+ case OPT_fopenacc:
/* For selected options we can merge conservatively. */
for (j = 0; j < *decoded_options_count; ++j)
if ((*decoded_options)[j].opt_index == foption->opt_index)
@@ -492,6 +493,7 @@ append_compiler_options (obstack *argv_obstack, struct cl_decoded_option *opts,
case OPT_ftrapping_math:
case OPT_fwrapv:
case OPT_fopenmp:
+ case OPT_fopenacc:
case OPT_ftrapv:
case OPT_fstrict_overflow:
case OPT_foffload_abi_: