Hi! On Wed, 25 Feb 2015 11:28:12 +0100, I wrote: > Using [...] to forcefully disable -fvar-tracking (as done in > nvptx_option_override), should then allow me to drop the following > beautiful specimen of a patch (which I didn't commit anywhere, so far):
No progress yet with that, so for now, committed to gomp-4_0-branch in r221411: commit 2b54430cec7ac5b51ee3cbb568bd505d86bf0768 Author: tschwinge <tschwinge@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Fri Mar 13 09:03:21 2015 +0000 libgomp Fortran testing: for -g torture testing, disable variable tracking. Otherwise, the nvptx-none offloading compiler will run into issues such as: source-gcc/libgomp/testsuite/libgomp.fortran/examples-4/e.50.1.f90: In function '__e_50_1_mod_MOD_vec_mult._omp_fn.1': source-gcc/libgomp/testsuite/libgomp.fortran/examples-4/e.50.1.f90:31:0: internal compiler error: in use_type, at var-tracking.c:5442 p(i) = v1(i) * v2(i) ^ 0xc4dc72 use_type source-gcc/gcc/var-tracking.c:5442 0xc504b3 add_stores source-gcc/gcc/var-tracking.c:5869 0xc4cd28 add_with_sets source-gcc/gcc/var-tracking.c:6553 0x5e9b7d cselib_record_sets source-gcc/gcc/cselib.c:2574 0x5ea8a7 cselib_process_insn(rtx_insn*) source-gcc/gcc/cselib.c:2686 0xc586a3 vt_initialize source-gcc/gcc/var-tracking.c:10126 0xc65a8e variable_tracking_main_1 source-gcc/gcc/var-tracking.c:10322 0xc65a8e variable_tracking_main source-gcc/gcc/var-tracking.c:10375 0xc65a8e execute source-gcc/gcc/var-tracking.c:10412 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions. mkoffload: fatal error: install/offload-nvptx-none/bin//x86_64-unknown-linux-gnu-accel-nvptx-none-gcc returned 1 exit status libgomp/ * testsuite/libgomp.fortran/fortran.exp (DG_TORTURE_OPTIONS): Add -fno-var-tracking next to any -g usage. * testsuite/libgomp.oacc-fortran/fortran.exp (DG_TORTURE_OPTIONS): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@221411 138bc75d-0d04-0410-961f-82ee72b054a4 --- libgomp/ChangeLog.gomp | 7 +++++++ libgomp/testsuite/libgomp.fortran/fortran.exp | 4 ++++ libgomp/testsuite/libgomp.oacc-fortran/fortran.exp | 4 ++++ 3 files changed, 15 insertions(+) diff --git libgomp/ChangeLog.gomp libgomp/ChangeLog.gomp index c2566cf..f052d3e 100644 --- libgomp/ChangeLog.gomp +++ libgomp/ChangeLog.gomp @@ -1,3 +1,10 @@ +2015-03-13 Thomas Schwinge <tho...@codesourcery.com> + + * testsuite/libgomp.fortran/fortran.exp (DG_TORTURE_OPTIONS): Add + -fno-var-tracking next to any -g usage. + * testsuite/libgomp.oacc-fortran/fortran.exp (DG_TORTURE_OPTIONS): + Likewise. + 2015-01-12 Thomas Schwinge <tho...@codesourcery.com> * plugin/plugin-host.c [HOST_NONSHM_PLUGIN]: Don't include "libgomp.h". diff --git libgomp/testsuite/libgomp.fortran/fortran.exp libgomp/testsuite/libgomp.fortran/fortran.exp index 9e6b643..ead94f3 100644 --- libgomp/testsuite/libgomp.fortran/fortran.exp +++ libgomp/testsuite/libgomp.fortran/fortran.exp @@ -21,6 +21,10 @@ dg-init # Turn on OpenMP. lappend ALWAYS_CFLAGS "additional_flags=-fopenmp" +# TODO: for -g torture testing, disable variable tracking. +# <http://news.gmane.org/find-root.php?message_id=%3C87mw429tfn.fsf%40kepler.schwinge.homeip.net%3E>. +regsub -all -- { -g[^ ]*} $DG_TORTURE_OPTIONS {& -fno-var-tracking} DG_TORTURE_OPTIONS + if { $blddir != "" } { set lang_source_re {^.*\.[fF](|90|95|03|08)$} set lang_include_flags "-fintrinsic-modules-path=${blddir}" diff --git libgomp/testsuite/libgomp.oacc-fortran/fortran.exp libgomp/testsuite/libgomp.oacc-fortran/fortran.exp index a68e039..203106e 100644 --- libgomp/testsuite/libgomp.oacc-fortran/fortran.exp +++ libgomp/testsuite/libgomp.oacc-fortran/fortran.exp @@ -23,6 +23,10 @@ dg-init # Turn on OpenACC. lappend ALWAYS_CFLAGS "additional_flags=-fopenacc" +# TODO: for -g torture testing, disable variable tracking. +# <http://news.gmane.org/find-root.php?message_id=%3C87mw429tfn.fsf%40kepler.schwinge.homeip.net%3E>. +regsub -all -- { -g[^ ]*} $DG_TORTURE_OPTIONS {& -fno-var-tracking} DG_TORTURE_OPTIONS + if { $blddir != "" } { set lang_source_re {^.*\.[fF](|90|95|03|08)$} set lang_include_flags "-fintrinsic-modules-path=${blddir}" Grüße, Thomas
signature.asc
Description: PGP signature