aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorvries <vries@138bc75d-0d04-0410-961f-82ee72b054a4>2015-01-23 12:54:16 +0000
committervries <vries@138bc75d-0d04-0410-961f-82ee72b054a4>2015-01-23 12:54:16 +0000
commit859776471d92006f243cded9b571c6feb3f789d0 (patch)
tree667a67b3067e4f24e4c52912641a221fd52bf2d2 /gcc
parentfa175926a2bc33919b10debfd95d35d132e6eb36 (diff)
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@220038 138bc75d-0d04-0410-961f-82ee72b054a4
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 418468faf38..b5beaf62153 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 ac72e868157..851e664503f 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 4b92022187f..fd004072515 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 5ae81b14a2b..bb663569418 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 0360f6c7bad..d86376a917c 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 d44dba03935..279107fdab3 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 2d0d451af86..e9507717d44 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_: