From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 63864 invoked by alias); 24 Mar 2015 09:48:11 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 63830 invoked by uid 48); 24 Mar 2015 09:48:07 -0000 From: "ktkachov at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug fortran/64952] Missing temporary in assignment from elemental function Date: Tue, 24 Mar 2015 10:02:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: fortran X-Bugzilla-Version: 5.0 X-Bugzilla-Keywords: wrong-code X-Bugzilla-Severity: normal X-Bugzilla-Who: ktkachov at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: pault at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cc Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2015-03/txt/msg02500.txt.bz2 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D64952 ktkachov at gcc dot gnu.org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |ktkachov at gcc dot gnu.org --- Comment #8 from ktkachov at gcc dot gnu.org --- (In reply to Mikael Morin from comment #5) > Author: mikael > Date: Mon Mar 23 07:53:31 2015 > New Revision: 221586 >=20 > URL: https://gcc.gnu.org/viewcvs?rev=3D221586&root=3Dgcc&view=3Drev > Log: > 2015-03-23 Paul Thomas > Mikael Morin >=20 > PR fortran/64952 > fortran/ > * gfortran.h (struct symbol_attribute) : New field > 'array_outer_dependency'. > * trans.h (struct gfc_ss_info): New field 'array_outer_dependency'. > * module.c (enum ab_attribute): New value AB_ARRAY_OUTER_DEPENDENCY. > (attr_bits): Append same value to initializer. > (mio_symbol_attribute): Handle 'array_outer_dependency' attr > in module read and write. > * resolve.c (update_current_proc_outer_array_dependency): New function. > (resolve_function, resolve_call): Add code to update current procedure's > 'array_outer_dependency' attribute. > (resolve_variable): Mark current procedure with attribute > array_outer_dependency if the variable is an array coming from outside > the current namespace. > (resolve_fl_procedure): Mark a procedure without body with attribute > 'array_outer_dependency'. > * trans-array.c (gfc_conv_resolve_dependencies): If any ss is > marked as 'array_outer_dependency' generate a temporary. > (gfc_walk_function_expr): If the function may reference external arrays, > mark the head gfc_ss with flag 'array_outer_dependency'. > testsuite/ > * gfortran.dg/elemental_dependency_4.f90: New. > * gfortran.dg/elemental_dependency_5.f90: New. >=20 >=20 > Added: > trunk/gcc/testsuite/gfortran.dg/elemental_dependency_4.f90 > trunk/gcc/testsuite/gfortran.dg/elemental_dependency_5.f90 > Modified: > trunk/gcc/fortran/ChangeLog > trunk/gcc/fortran/gfortran.h > trunk/gcc/fortran/module.c > trunk/gcc/fortran/resolve.c > trunk/gcc/fortran/trans-array.c > trunk/gcc/fortran/trans.h > trunk/gcc/testsuite/ChangeLog With this commit I can no longer build 481.wrf for aarch64. I get: module_ra_rrtm.fppized.f90:4438:33: DIMENSION H2OREF(59),CO2REF(59), ETAREF(10)=20=20=20=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20 1 Error: Different shape for array assignment at (1) on dimension 1 (59 and 7) Anything that can be done? >>From gcc-bugs-return-481357-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Mar 24 09:49:59 2015 Return-Path: Delivered-To: listarch-gcc-bugs@gcc.gnu.org Received: (qmail 65484 invoked by alias); 24 Mar 2015 09:49:58 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Delivered-To: mailing list gcc-bugs@gcc.gnu.org Received: (qmail 65424 invoked by uid 48); 24 Mar 2015 09:49:54 -0000 From: "ebotcazou at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug tree-optimization/65519] [5 regression] unable to coalesce ssa_names 2 and 87 which are marked as MUST COALESCE Date: Tue, 24 Mar 2015 10:06:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: tree-optimization X-Bugzilla-Version: 5.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: ebotcazou at gcc dot gnu.org X-Bugzilla-Status: ASSIGNED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: ebotcazou at gcc dot gnu.org X-Bugzilla-Target-Milestone: 5.0 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2015-03/txt/msg02501.txt.bz2 Content-length: 1139 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65519 --- Comment #9 from Eric Botcazou --- > gimple-fold works like fold - it tries to re-simplify what you feed it, but > only the outermost level (so it doesn't really recurse). Still I think this > bug needs changing code-generation like with the attached patch which I am > testing right now. I see, thanks. > I always forget how to force SJLJ EH on x86_64-linux for ada so I didn't > manage to reproduce the issue or check if the patch fixes it ... In a build tree: eric@polaris:~/build/gcc/native> cp gcc/ada/rts/system.ads . Edit system.ads and change ZCX_By_Default to False. Then compile the reduced testcase: eric@polaris:~/build/gcc/native> gcc/xgcc -Bgcc -S p.ads -O2 Unable to coalesce ssa_names 2 and 87 which are marked as MUST COALESCE. I.3_2(ab) and I.3_87(ab) +===========================GNAT BUG DETECTED==============================+ | 5.0.0 20150316 (experimental) [trunk revision 221457] (x86_64-suse-linux) GCC error:| | SSA corruption | | Error detected around p.ads:6:9