This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PR59723: fix LTO + fortran namelist ICEs
- From: dominiq at lps dot ens dot fr (Dominique Dhumieres)
- To: rguenther at suse dot de, dominiq at lps dot ens dot fr
- Cc: gcc-patches at gcc dot gnu dot org, burnus at net-b dot de, aldyh at redhat dot com
- Date: Tue, 04 Feb 2014 15:25:20 +0100
- Subject: Re: PR59723: fix LTO + fortran namelist ICEs
- Authentication-results: sourceware.org; auth=none
- References: <20140204110510 dot 2E012104 at mailhost dot lps dot ens dot fr> <alpine dot LSU dot 2 dot 11 dot 1402041211060 dot 29326 at zhemvz dot fhfr dot qr>
With the petches (an a minor fix in gcc/lto/lto.c) the remaining failures
are
FAIL: gfortran.dg/debug/pr35154-dwarf2.f -gdwarf-2 scan-assembler (DW_AT_name: "label"|"label[^\n]*"[^\n]*DW_AT_name)
FAIL: gfortran.dg/debug/pr35154-dwarf2.f -gdwarf-2 -g3 scan-assembler (DW_AT_name: "label"|"label[^\n]*"[^\n]*DW_AT_name)
FAIL: gfortran.dg/bind_c_array_params_2.f90 -O scan-assembler-times myBindC 1
FAIL: gfortran.dg/bind_c_vars.f90 -O0 (test for excess errors)
FAIL: gfortran.dg/bind_c_vars.f90 -O1 (test for excess errors)
FAIL: gfortran.dg/bind_c_vars.f90 -O2 (test for excess errors)
FAIL: gfortran.dg/bind_c_vars.f90 -O3 -fomit-frame-pointer (test for excess errors)
FAIL: gfortran.dg/bind_c_vars.f90 -O3 -fomit-frame-pointer -funroll-loops (test for excess errors)
FAIL: gfortran.dg/bind_c_vars.f90 -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions (test for excess errors)
FAIL: gfortran.dg/bind_c_vars.f90 -O3 -g (test for excess errors)
FAIL: gfortran.dg/bind_c_vars.f90 -Os (test for excess errors)
FAIL: gfortran.dg/namelist_14.f90 -O3 -g (internal compiler error)
FAIL: gfortran.dg/namelist_14.f90 -O3 -g (test for excess errors)
FAIL: gfortran.dg/namelist_51.f90 -O3 -g (test for excess errors)
FAIL: gfortran.dg/namelist_69.f90 -O3 -g (internal compiler error)
FAIL: gfortran.dg/namelist_69.f90 -O3 -g (test for excess errors)
FAIL: gfortran.dg/namelist_70.f90 -O3 -g (internal compiler error)
FAIL: gfortran.dg/namelist_70.f90 -O3 -g (test for excess errors)
FAIL: gfortran.dg/pr48636-2.f90 -O scan-ipa-dump cp "Creating a specialized node of bar/[0-9]*\\."
FAIL: gfortran.dg/pr52835.f90 -O scan-tree-dump optimized "bar "
FAIL: gfortran.dg/pr53787.f90 -O scan-ipa-dump cp "Creating a specialized node of init"
FAIL: gfortran.dg/pr53787.f90 -O scan-ipa-dump-times cp "Aggregate replacements" 2
The ICEs are
/opt/gcc/work/gcc/testsuite/gfortran.dg/namelist_14.f90:96:0: internal compiler error: in force_decl_die, at dwarf2out.c:20211
The excess error for gfortran.dg/namelist_51.f90 is
warning: invalid DWARF generated by the compiler: DIE 0x000001f0 has multiple AT_calling_convention attributes in '/var/folders/8q/sh_swgz96r7f5vnn08f7fxr00000gn/T//ccub2YMQ.ltrans0.ltrans.o'.
Note that if the test is compiled with -g only, I get an ICE
lto1: internal compiler error: in add_AT_specification, at dwarf2out.c:4096
I have looked to the scan errors for bind_c_array_params_2.f90:
myBindC appears twice
call _myBindC
.ascii "_main\0\0\0\0\0\0\0\0\0\0\0\0\274\0\0\0_myBindC\0\0\2\0\0\0\0\0\0\0\0\0\356\0\0\0__gfortran_set_options ...
and for pr48636-2.f90 where "Creating a specialized node of bar"
is replaced with "Creating a specialized node of __foo_MOD_bar".
Such failures are quite easy to fix, but I wonder if they worth the effort.
Dominique