public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug ipa/63851] New: ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above
@ 2014-11-13 15:50 dominiq at lps dot ens.fr
2014-11-14 11:28 ` [Bug ipa/63851] [5 Regression] " rguenth at gcc dot gnu.org
` (12 more replies)
0 siblings, 13 replies; 14+ messages in thread
From: dominiq at lps dot ens.fr @ 2014-11-13 15:50 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63851
Bug ID: 63851
Summary: ipa-icf miscompiles
gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above
Product: gcc
Version: 5.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: ipa
Assignee: unassigned at gcc dot gnu.org
Reporter: dominiq at lps dot ens.fr
CC: fxcoudert at gcc dot gnu.org, iains at gcc dot gnu.org,
marxin at gcc dot gnu.org
On x86_64-apple-darwin14 ipa-icf miscompiles
gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above (see pr63622 comment 7).
Reduced test for assumed_rank_8.f90
[Book15] f90/bug% cat assumed_rank_8_red.f90
program main
implicit none
interface
subroutine check (x)
integer :: x(..)
end subroutine check
end interface
integer, allocatable :: kk
integer, pointer :: ll
call g (null())
kk = 489
call h (kk)
contains
subroutine g (x)
integer, pointer, intent(in) :: x(..)
call check (x)
end subroutine
subroutine h (x)
integer, allocatable :: x(..)
call check (x)
end subroutine
end program main
[Book15] f90/bug% cat assumed_rank_8_c_red.c
/* Called by assumed_rank_8.f90 and assumed_rank_9.f90. */
#include <stdlib.h> /* For abort(). */
struct a {
int *dat;
};
void check_ (struct a *x)
{
if (*x->dat != 489)
abort ();
}
[Book15] f90/bug% gfc -O2 assumed_rank_8_red.f90 assumed_rank_8_c_red.c
[Book15] f90/bug% a.out
Program received signal SIGSEGV: Segmentation fault - invalid memory reference.
Backtrace for this error:
#0 0x10ec7a5c2
#1 0x10ec7ad60
#2 0x7fff81c71f19
#3 0x10ec71e73
#4 0x10ec71eb5
Segmentation fault
If I comment the first 'call check (x)', the abort goes away.
A reduced test for assumed_rank_10.f90 (fails only with -m32) has been posted
in pr63622 comment 34.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug ipa/63851] [5 Regression] ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above
2014-11-13 15:50 [Bug ipa/63851] New: ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above dominiq at lps dot ens.fr
@ 2014-11-14 11:28 ` rguenth at gcc dot gnu.org
2014-11-20 13:43 ` dominiq at lps dot ens.fr
` (11 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-11-14 11:28 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63851
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |wrong-code
Target| |x86_64-apple-darwin14
Priority|P3 |P1
Target Milestone|--- |5.0
Summary|ipa-icf miscompiles |[5 Regression] ipa-icf
|gfortran.dg/assumed_rank_(8 |miscompiles
||9|10).f90 at -O2 and above |gfortran.dg/assumed_rank_(8
| ||9|10).f90 at -O2 and above
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug ipa/63851] [5 Regression] ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above
2014-11-13 15:50 [Bug ipa/63851] New: ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above dominiq at lps dot ens.fr
2014-11-14 11:28 ` [Bug ipa/63851] [5 Regression] " rguenth at gcc dot gnu.org
@ 2014-11-20 13:43 ` dominiq at lps dot ens.fr
2014-11-25 17:18 ` marxin at gcc dot gnu.org
` (10 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: dominiq at lps dot ens.fr @ 2014-11-20 13:43 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63851
Dominique d'Humieres <dominiq at lps dot ens.fr> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target|x86_64-apple-darwin14 |x86_64-apple-darwin1*
Status|UNCONFIRMED |NEW
Last reconfirmed| |2014-11-20
Ever confirmed|0 |1
--- Comment #1 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
I assume P1 means confirmed. I also see it on x86_64-apple-darwin10.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug ipa/63851] [5 Regression] ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above
2014-11-13 15:50 [Bug ipa/63851] New: ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above dominiq at lps dot ens.fr
2014-11-14 11:28 ` [Bug ipa/63851] [5 Regression] " rguenth at gcc dot gnu.org
2014-11-20 13:43 ` dominiq at lps dot ens.fr
@ 2014-11-25 17:18 ` marxin at gcc dot gnu.org
2014-11-27 14:19 ` burnus at gcc dot gnu.org
` (9 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: marxin at gcc dot gnu.org @ 2014-11-25 17:18 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63851
--- Comment #2 from Martin Liška <marxin at gcc dot gnu.org> ---
OK, I can reproduce the problem on x86_64 with following simple patch applied:
diff --git a/gcc/ipa-icf.c b/gcc/ipa-icf.c
index 4875dec..c985052 100644
--- a/gcc/ipa-icf.c
+++ b/gcc/ipa-icf.c
@@ -606,6 +606,12 @@ sem_function::merge (sem_item *alias_item)
create_thunk = true;
}
+ if (create_alias )
+ {
+ create_thunk = true;
+ create_alias = false;
+ }
+
There's a pair of functions 'g' and 'h' that are proved by IPA ICF to be equal
and thunk is created (darwin does not have alias support).
Semantic equality hit:g->h
Assembler symbol names:g.3324->h.3321
where 'h' looks is created as tail-call:
h (struct array7_integer(kind=4) & restrict x)
{
<bb 2>:
g (x_2(D)); [tail call]
return;
}
and MAIN__:
<bb 8>:
# kk_1 = PHI <kk_36(6), kk_39(7)>
*kk_1 = 489;
desc.6.dtype = 264;
desc.6.data = kk_1;
h (&desc.6); [static-chain: &FRAME.15]
desc.6 ={v} {CLOBBER};
j.8_45 = FRAME.15.j;
if (j.8_45 != 1)
goto <bb 9>;
else
goto <bb 10>;
It looks fine, but after inlining is done, we are given:
assumed_rank_8.f90.063t.copyrename2:
MAIN__:
...
<bb 24>:
# kk_11 = PHI <kk_9(22), kk_10(23)>
*kk_11 = 489;
desc.6.dtype = 264;
desc.6.data = kk_11;
g (&desc.6);
desc.6 ={v} {CLOBBER};
j.8_12 = FRAME.15.j;
if (j.8_12 != 1)
goto <bb 25>;
else
goto <bb 26>;
Is missing [static-chain: &FRAME.15] in 'g (&desc.6);' problematic in this
context?
Thanks,
Martin
>From gcc-bugs-return-468550-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Nov 25 17:37:52 2014
Return-Path: <gcc-bugs-return-468550-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 6458 invoked by alias); 25 Nov 2014 17:37:52 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 6209 invoked by uid 48); 25 Nov 2014 17:37:48 -0000
From: "jamborm at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug tree-optimization/63551] [4.9/5 Regression] wrong code (segfaults) at -Os on x86_64-linux-gnu
Date: Tue, 25 Nov 2014 17:37: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: wrong-code
X-Bugzilla-Severity: normal
X-Bugzilla-Who: jamborm at gcc dot gnu.org
X-Bugzilla-Status: NEW
X-Bugzilla-Priority: P1
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: 4.9.3
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-63551-4-sZrgpu6XGZ@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-63551-4@http.gcc.gnu.org/bugzilla/>
References: <bug-63551-4@http.gcc.gnu.org/bugzilla/>
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: 2014-11/txt/msg03022.txt.bz2
Content-length: 182
https://gcc.gnu.org/bugzilla/show_bug.cgi?idc551
--- Comment #7 from Martin Jambor <jamborm at gcc dot gnu.org> ---
*** Bug 64041 has been marked as a duplicate of this bug. ***
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug ipa/63851] [5 Regression] ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above
2014-11-13 15:50 [Bug ipa/63851] New: ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above dominiq at lps dot ens.fr
` (2 preceding siblings ...)
2014-11-25 17:18 ` marxin at gcc dot gnu.org
@ 2014-11-27 14:19 ` burnus at gcc dot gnu.org
2014-11-27 22:11 ` fxcoudert at gcc dot gnu.org
` (8 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: burnus at gcc dot gnu.org @ 2014-11-27 14:19 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63851
Tobias Burnus <burnus at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |burnus at gcc dot gnu.org
--- Comment #3 from Tobias Burnus <burnus at gcc dot gnu.org> ---
(In reply to Martin Liška from comment #2)
> There's a pair of functions 'g' and 'h' that are proved by IPA ICF to be
> equal
Side remark: In terms of the Fortran standard, g() and h() are different in two
regards: g()'s "x" can alias with other variables (pointers or nonpointers with
target attribute) - and g()'s "x" itself can be a NULL pointer while for f(),
it can't. [Would it help to mark the argument of h() with a "nonnull"
attribute?]
Side remark 2: I think the test case is not fully right. g()'s
call check (x)
is invalid if "x" is NULL as check's "x" is neither OPTIONAL nor a POINTER. In
terms of the generated code, I think this shouldn't matter in this case.
>From gcc-bugs-return-468773-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Thu Nov 27 14:20:46 2014
Return-Path: <gcc-bugs-return-468773-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 15436 invoked by alias); 27 Nov 2014 14:20:46 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 15394 invoked by uid 48); 27 Nov 2014 14:20:42 -0000
From: "manu at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug driver/64094] "No such file or directory" -> "No such file"
Date: Thu, 27 Nov 2014 14:20:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: driver
X-Bugzilla-Version: unknown
X-Bugzilla-Keywords: diagnostic
X-Bugzilla-Severity: normal
X-Bugzilla-Who: manu at gcc dot gnu.org
X-Bugzilla-Status: NEW
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-64094-4-8Xc9SyvkmB@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-64094-4@http.gcc.gnu.org/bugzilla/>
References: <bug-64094-4@http.gcc.gnu.org/bugzilla/>
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: 2014-11/txt/msg03245.txt.bz2
Content-length: 1369
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64094
--- Comment #4 from Manuel López-Ibáñez <manu at gcc dot gnu.org> ---
My preference would be a gnulib/glibc/libiberty function that all GNU utilities
could use to give more precise error messages (open_strerror(int errnum, int
flags)?). Then, perhaps update the Coding Standards to recommend the use of the
function. Then, use it in GCC and binutils for consistency (and to avoid
translating the same string for each project).
The benefit may seem minor to many people (and I guess all existing GCC devs
have things to work on that they consider much more crucial). However, somebody
went through all the trouble to report a bug, so I would not want to discourage
anyone from going ahead and do whatever is needed. Maybe then they will decide
to tackle other problems with GCC/binutils (there are plenty to choose from,
and help is always welcome).
I would like to encourage people to work on GCC, even if, to me, the benefit
does not compensate the effort, they may have other priorities. A good example
of this is: https://gcc.gnu.org/ml/gcc/2014-10/msg00104.html where someone
proposed a controversial change, but a path forward to a solution was offered.
That person followed up and a patch is almost ready to be merged:
https://gcc.gnu.org/ml/gcc-patches/2014-11/msg00845.html
>From gcc-bugs-return-468774-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Thu Nov 27 14:22:44 2014
Return-Path: <gcc-bugs-return-468774-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 17744 invoked by alias); 27 Nov 2014 14:22:43 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 17713 invoked by uid 48); 27 Nov 2014 14:22:38 -0000
From: "rguenth at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug tree-optimization/64091] [5 Regression] ICE in update_debug_stmt, at tree-ssa-tail-merge.c:1620
Date: Thu, 27 Nov 2014 14:22: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: rguenth at gcc dot gnu.org
X-Bugzilla-Status: RESOLVED
X-Bugzilla-Priority: P1
X-Bugzilla-Assigned-To: rguenth at gcc dot gnu.org
X-Bugzilla-Target-Milestone: 5.0
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: bug_status resolution
Message-ID: <bug-64091-4-ugk05xdW0X@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-64091-4@http.gcc.gnu.org/bugzilla/>
References: <bug-64091-4@http.gcc.gnu.org/bugzilla/>
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: 2014-11/txt/msg03246.txt.bz2
Content-length: 428
https://gcc.gnu.org/bugzilla/show_bug.cgi?idd091
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution|--- |FIXED
--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
Fixed.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug ipa/63851] [5 Regression] ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above
2014-11-13 15:50 [Bug ipa/63851] New: ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above dominiq at lps dot ens.fr
` (3 preceding siblings ...)
2014-11-27 14:19 ` burnus at gcc dot gnu.org
@ 2014-11-27 22:11 ` fxcoudert at gcc dot gnu.org
2014-12-17 1:03 ` howarth at bromo dot med.uc.edu
` (7 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: fxcoudert at gcc dot gnu.org @ 2014-11-27 22:11 UTC (permalink / raw)
To: gcc-bugs
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="UTF-8", Size: 3133 bytes --]
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63851
--- Comment #4 from Francois-Xavier Coudert <fxcoudert at gcc dot gnu.org> ---
(In reply to Martin Liška from comment #2)
> There's a pair of functions 'g' and 'h' that are proved by IPA ICF to be
> equal and thunk is created (darwin does not have alias support).
If you look at the tree dump, h's argument has restrict but not g:
h (struct array7_integer(kind=4) & restrict x)
{
check ((struct array7_integer(kind=4) *) x);
}
g (struct array7_integer(kind=4) & x)
{
check ((struct array7_integer(kind=4) *) x);
}
Shouldn't that disable semantic equality/equivalence?
>From gcc-bugs-return-468806-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Thu Nov 27 23:31:10 2014
Return-Path: <gcc-bugs-return-468806-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 301 invoked by alias); 27 Nov 2014 23:31:09 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 32730 invoked by uid 48); 27 Nov 2014 23:31:06 -0000
From: "cbaylis at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug middle-end/64012] GCC-4.9.2 option -fcaller-saves in -O2
Date: Thu, 27 Nov 2014 23:31:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: middle-end
X-Bugzilla-Version: 4.9.2
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: cbaylis at gcc dot gnu.org
X-Bugzilla-Status: RESOLVED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: bug_status cc resolution
Message-ID: <bug-64012-4-T9PYOwyxkp@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-64012-4@http.gcc.gnu.org/bugzilla/>
References: <bug-64012-4@http.gcc.gnu.org/bugzilla/>
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: 2014-11/txt/msg03278.txt.bz2
Content-length: 678
https://gcc.gnu.org/bugzilla/show_bug.cgi?idd012
cbaylis at gcc dot gnu.org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|REOPENED |RESOLVED
CC| |cbaylis at gcc dot gnu.org
Resolution|--- |INVALID
--- Comment #7 from cbaylis at gcc dot gnu.org ---
This is caused by an invalid implementation of memset in (old versions of) the
Linux kernel.
I investigated this, a longer description is on the Linaro bugzilla at
https://bugs.linaro.org/show_bug.cgi?id8#c7
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug ipa/63851] [5 Regression] ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above
2014-11-13 15:50 [Bug ipa/63851] New: ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above dominiq at lps dot ens.fr
` (4 preceding siblings ...)
2014-11-27 22:11 ` fxcoudert at gcc dot gnu.org
@ 2014-12-17 1:03 ` howarth at bromo dot med.uc.edu
2014-12-17 13:52 ` dominiq at lps dot ens.fr
` (6 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: howarth at bromo dot med.uc.edu @ 2014-12-17 1:03 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63851
howarth at bromo dot med.uc.edu changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |howarth at bromo dot med.uc.edu
--- Comment #7 from howarth at bromo dot med.uc.edu ---
(In reply to Martin Liška from comment #5)
At r218792, the proposed patch reduces the fortran test suite failures on
x86_64-apple-darwin14 to just...
FAIL: gfortran.dg/assumed_rank_10.f90 -O3 -fomit-frame-pointer -funroll-loops
execution test
FAIL: gfortran.dg/assumed_rank_10.f90 -O3 -fomit-frame-pointer
-funroll-all-loops -finline-functions execution test
at -m32 only which appears to backtrace as...
Program aborted. Backtrace:
#0 0x5db1
#1 0x6fcf
#2 0xbcfc7
#3 0x1a8f
#4 0x1bfa
Program received signal SIGABRT, Aborted.
0x95ed369a in __pthread_kill () from /usr/lib/system/libsystem_kernel.dylib
(gdb) bt
#0 0x95ed369a in __pthread_kill () from /usr/lib/system/libsystem_kernel.dylib
#1 0x98817f19 in pthread_kill () from /usr/lib/system/libsystem_pthread.dylib
#2 0x98c72eee in abort () from /usr/lib/system/libsystem_c.dylib
#3 0x00006fb0 in __gfortrani_sys_abort () at
../../../../gcc-5-20141216/libgfortran/runtime/error.c:180
#4 0x000bcfc8 in _gfortran_abort () at
../../../../gcc-5-20141216/libgfortran/intrinsics/abort.c:33
#5 0x00001a90 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
Does this imply that we are missing a call to
compatible_types_p() somewhere that is exposed at -m32 for this particular test
case?
>From gcc-bugs-return-470948-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Wed Dec 17 01:17:30 2014
Return-Path: <gcc-bugs-return-470948-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 4656 invoked by alias); 17 Dec 2014 01:17:29 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 4301 invoked by uid 48); 17 Dec 2014 01:17:23 -0000
From: "olegendo at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug rtl-optimization/63259] Detecting byteswap sequence
Date: Wed, 17 Dec 2014 01:17:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: rtl-optimization
X-Bugzilla-Version: 4.9.1
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: olegendo at gcc dot gnu.org
X-Bugzilla-Status: ASSIGNED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: thopre01 at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-63259-4-QnjUJ6VU0x@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-63259-4@http.gcc.gnu.org/bugzilla/>
References: <bug-63259-4@http.gcc.gnu.org/bugzilla/>
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: 2014-12/txt/msg01955.txt.bz2
Content-length: 849
https://gcc.gnu.org/bugzilla/show_bug.cgi?idc259
--- Comment #11 from Oleg Endo <olegendo at gcc dot gnu.org> ---
(In reply to thopre01 from comment #10)
>
> I have the same gimple and for me the bswap is correctly detected. Can you
> break at find_bswap_or_nop just after calling find_bswap_or_nop_1 on the if
> (!source_stmt) and show me the output of p/x n->n ?
n->n = 0x0000000000000102 limit = 4
For both, test_099 and test_08.
> Indeed, my mistake. Ok I tested a bit and found that the problem is the
> depth at which it's looking. Try to recompile tree-ssa-math-opts.c after
> increasing the limit number in find_bswap_or_nop. Right now the limit will
> evaluate to 4 and the gimple I have has a depth of 5.
I've tried ...
limit += 10 + (int) ceil_log2 ((unsigned HOST_WIDE_INT) limit);
... but it doesn't change anything here.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug ipa/63851] [5 Regression] ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above
2014-11-13 15:50 [Bug ipa/63851] New: ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above dominiq at lps dot ens.fr
` (5 preceding siblings ...)
2014-12-17 1:03 ` howarth at bromo dot med.uc.edu
@ 2014-12-17 13:52 ` dominiq at lps dot ens.fr
2014-12-17 21:32 ` howarth at bromo dot med.uc.edu
` (5 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: dominiq at lps dot ens.fr @ 2014-12-17 13:52 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63851
--- Comment #8 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
Results with the patch in comment 5 at
https://gcc.gnu.org/ml/gcc-testresults/2014-12/msg02164.html.
Note that the test gfortran.dg/assumed_rank_10.f90 fails at run time when
compiled with '-O2 -funroll-loops -m32'. Without '-funroll-loops' the test
succeeds at run time.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug ipa/63851] [5 Regression] ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above
2014-11-13 15:50 [Bug ipa/63851] New: ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above dominiq at lps dot ens.fr
` (6 preceding siblings ...)
2014-12-17 13:52 ` dominiq at lps dot ens.fr
@ 2014-12-17 21:32 ` howarth at bromo dot med.uc.edu
2014-12-18 2:17 ` howarth at bromo dot med.uc.edu
` (4 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: howarth at bromo dot med.uc.edu @ 2014-12-17 21:32 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63851
--- Comment #9 from howarth at bromo dot med.uc.edu ---
(In reply to Dominique d'Humieres from comment #8)
> Results with the patch in comment 5 at
> https://gcc.gnu.org/ml/gcc-testresults/2014-12/msg02164.html.
>
> Note that the test gfortran.dg/assumed_rank_10.f90 fails at run time when
> compiled with '-O2 -funroll-loops -m32'. Without '-funroll-loops' the test
> succeeds at run time.
And, as before, appending -fno-ipa-icf to the failing test cases compile flags
suppresses the failure.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug ipa/63851] [5 Regression] ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above
2014-11-13 15:50 [Bug ipa/63851] New: ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above dominiq at lps dot ens.fr
` (7 preceding siblings ...)
2014-12-17 21:32 ` howarth at bromo dot med.uc.edu
@ 2014-12-18 2:17 ` howarth at bromo dot med.uc.edu
2014-12-18 17:32 ` marxin at gcc dot gnu.org
` (3 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: howarth at bromo dot med.uc.edu @ 2014-12-18 2:17 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63851
--- Comment #10 from howarth at bromo dot med.uc.edu ---
(In reply to Dominique d'Humieres from comment #8)
> Results with the patch in comment 5 at
> https://gcc.gnu.org/ml/gcc-testresults/2014-12/msg02164.html.
>
> Note that the test gfortran.dg/assumed_rank_10.f90 fails at run time when
> compiled with '-O2 -funroll-loops -m32'. Without '-funroll-loops' the test
> succeeds at run time.
Also '-O1 -fipa-icf -funroll-loops -m32' produces a assumed_rank_10.exe which
fails the execution test while '-O0 -fipa-icf -funroll-loops -m32' produces one
which passes.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug ipa/63851] [5 Regression] ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above
2014-11-13 15:50 [Bug ipa/63851] New: ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above dominiq at lps dot ens.fr
` (8 preceding siblings ...)
2014-12-18 2:17 ` howarth at bromo dot med.uc.edu
@ 2014-12-18 17:32 ` marxin at gcc dot gnu.org
2014-12-18 22:26 ` howarth at bromo dot med.uc.edu
` (2 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: marxin at gcc dot gnu.org @ 2014-12-18 17:32 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63851
--- Comment #11 from Martin Liška <marxin at gcc dot gnu.org> ---
Hello.
The problem is caused by missing static-chain in newly created GIMPLE_CALL in
expand_thunk:
fpi (struct array7_integer(kind=4) & xx1, struct array7_t & yy1)
{
<bb 2>:
fpa (xx1_2(D), yy1_3(D)); [tail call]
return;
}
where:
main (integer(kind=4) argc, character(kind=1) * * argv)
{
...
fpa (&desc.2, &desc.3); [static-chain: &FRAME.7]
fpi (&desc.4, &desc.5); [static-chain: &FRAME.7]
...
}
I've been testing following patch that stops ICF for such kind of situations:
diff --git a/gcc/ipa-icf.c b/gcc/ipa-icf.c
index b193200..7faaf56 100644
--- a/gcc/ipa-icf.c
+++ b/gcc/ipa-icf.c
@@ -685,6 +685,14 @@ sem_function::merge (sem_item *alias_item)
return 0;
}
+ if (DECL_STATIC_CHAIN (alias->decl))
+ {
+ if (dump_file)
+ fprintf (dump_file, "Thunk creation is risky for static-chain
functions.\n\n");
+
+ return 0;
+ }
+
alias->icf_merged = true;
ipa_merge_profiles (local_original, alias);
alias->create_wrapper (local_original);
Thanks,
Martin
>From gcc-bugs-return-471086-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Thu Dec 18 17:33:08 2014
Return-Path: <gcc-bugs-return-471086-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 20111 invoked by alias); 18 Dec 2014 17:33:08 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 20072 invoked by uid 48); 18 Dec 2014 17:33:04 -0000
From: "jason at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug c++/63889] [5 Regression] Ice with redundant static in class scope constexpr variable template.
Date: Thu, 18 Dec 2014 17:33:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: c++
X-Bugzilla-Version: 5.0
X-Bugzilla-Keywords: ice-on-invalid-code
X-Bugzilla-Severity: normal
X-Bugzilla-Who: jason at gcc dot gnu.org
X-Bugzilla-Status: NEW
X-Bugzilla-Priority: P1
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: 5.0
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-63889-4-zGqyJsi0jr@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-63889-4@http.gcc.gnu.org/bugzilla/>
References: <bug-63889-4@http.gcc.gnu.org/bugzilla/>
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: 2014-12/txt/msg02093.txt.bz2
Content-length: 384
https://gcc.gnu.org/bugzilla/show_bug.cgi?idc889
--- Comment #5 from Jason Merrill <jason at gcc dot gnu.org> ---
(In reply to Kai Tietz from comment #4)
is_ok has two levels of template parameters: its own and those for A. An
instantiation needs to provide both levels of args as well. It seems that
we're missing a call to add_outermost_template_args for variable templates.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug ipa/63851] [5 Regression] ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above
2014-11-13 15:50 [Bug ipa/63851] New: ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above dominiq at lps dot ens.fr
` (9 preceding siblings ...)
2014-12-18 17:32 ` marxin at gcc dot gnu.org
@ 2014-12-18 22:26 ` howarth at bromo dot med.uc.edu
2014-12-19 0:32 ` dominiq at lps dot ens.fr
2014-12-23 9:31 ` marxin at gcc dot gnu.org
12 siblings, 0 replies; 14+ messages in thread
From: howarth at bromo dot med.uc.edu @ 2014-12-18 22:26 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63851
--- Comment #12 from howarth at bromo dot med.uc.edu ---
I can confirm that the proposed patch from comment 11 along with the one from
comment 5 eliminates all of the fortran testsuite regressions on
x86_64-apple-darwin14 at r218871.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug ipa/63851] [5 Regression] ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above
2014-11-13 15:50 [Bug ipa/63851] New: ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above dominiq at lps dot ens.fr
` (10 preceding siblings ...)
2014-12-18 22:26 ` howarth at bromo dot med.uc.edu
@ 2014-12-19 0:32 ` dominiq at lps dot ens.fr
2014-12-23 9:31 ` marxin at gcc dot gnu.org
12 siblings, 0 replies; 14+ messages in thread
From: dominiq at lps dot ens.fr @ 2014-12-19 0:32 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63851
--- Comment #13 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
> I can confirm that the proposed patch from comment 11 along with the one
> from comment 5 eliminates all of the fortran test suite regressions
> on x86_64-apple-darwin14 at r218871.
Confirmed. Apparently the patch in comment 11 also fixes the cats failures
(pr63852), see https://gcc.gnu.org/ml/gcc-testresults/2014-12/msg02352.html.
Thanks for the fix.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug ipa/63851] [5 Regression] ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above
2014-11-13 15:50 [Bug ipa/63851] New: ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above dominiq at lps dot ens.fr
` (11 preceding siblings ...)
2014-12-19 0:32 ` dominiq at lps dot ens.fr
@ 2014-12-23 9:31 ` marxin at gcc dot gnu.org
12 siblings, 0 replies; 14+ messages in thread
From: marxin at gcc dot gnu.org @ 2014-12-23 9:31 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63851
--- Comment #14 from Martin Liška <marxin at gcc dot gnu.org> ---
Author: marxin
Date: Tue Dec 23 09:30:20 2014
New Revision: 219042
URL: https://gcc.gnu.org/viewcvs?rev=219042&root=gcc&view=rev
Log:
Fix for PR ipa/63851 and ipa/63852.
PR ipa/63851
PR ipa/63852
* ipa-icf.c (sem_function::merge): Ignore merge operation
for a thunk created from static chain.
* ipa-icf-gimple.c (func_checker::compatible_types_p): Verify that
types have same restrict flag.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/ipa-icf-gimple.c
trunk/gcc/ipa-icf.c
>From gcc-bugs-return-471621-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Dec 23 09:31:06 2014
Return-Path: <gcc-bugs-return-471621-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 28741 invoked by alias); 23 Dec 2014 09:31:05 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 28099 invoked by uid 55); 23 Dec 2014 09:30:59 -0000
From: "marxin at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug ipa/63852] [5 regression] acats failures on x86_64-apple-darwin14
Date: Tue, 23 Dec 2014 09:31:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: ipa
X-Bugzilla-Version: 5.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: marxin at gcc dot gnu.org
X-Bugzilla-Status: NEW
X-Bugzilla-Priority: P1
X-Bugzilla-Assigned-To: marxin at gcc dot gnu.org
X-Bugzilla-Target-Milestone: 5.0
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-63852-4-na0kpD5Fo4@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-63852-4@http.gcc.gnu.org/bugzilla/>
References: <bug-63852-4@http.gcc.gnu.org/bugzilla/>
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: 2014-12/txt/msg02628.txt.bz2
Content-length: 638
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63852
--- Comment #4 from Martin Liška <marxin at gcc dot gnu.org> ---
Author: marxin
Date: Tue Dec 23 09:30:20 2014
New Revision: 219042
URL: https://gcc.gnu.org/viewcvs?rev=219042&root=gcc&view=rev
Log:
Fix for PR ipa/63851 and ipa/63852.
PR ipa/63851
PR ipa/63852
* ipa-icf.c (sem_function::merge): Ignore merge operation
for a thunk created from static chain.
* ipa-icf-gimple.c (func_checker::compatible_types_p): Verify that
types have same restrict flag.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/ipa-icf-gimple.c
trunk/gcc/ipa-icf.c
>From gcc-bugs-return-471624-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Dec 23 09:32:21 2014
Return-Path: <gcc-bugs-return-471624-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 31665 invoked by alias); 23 Dec 2014 09:32:21 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 31531 invoked by uid 48); 23 Dec 2014 09:32:17 -0000
From: "marxin at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug ipa/63851] [5 Regression] ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above
Date: Tue, 23 Dec 2014 09:32:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: ipa
X-Bugzilla-Version: 5.0
X-Bugzilla-Keywords: wrong-code
X-Bugzilla-Severity: normal
X-Bugzilla-Who: marxin at gcc dot gnu.org
X-Bugzilla-Status: RESOLVED
X-Bugzilla-Priority: P1
X-Bugzilla-Assigned-To: marxin at gcc dot gnu.org
X-Bugzilla-Target-Milestone: 5.0
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: bug_status resolution
Message-ID: <bug-63851-4-j4xG2lI4EI@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-63851-4@http.gcc.gnu.org/bugzilla/>
References: <bug-63851-4@http.gcc.gnu.org/bugzilla/>
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: 2014-12/txt/msg02631.txt.bz2
Content-length: 443
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63851
Martin Liška <marxin at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #15 from Martin Liška <marxin at gcc dot gnu.org> ---
Fixed in 5.0.0.
>From gcc-bugs-return-471623-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Dec 23 09:32:21 2014
Return-Path: <gcc-bugs-return-471623-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 31605 invoked by alias); 23 Dec 2014 09:32:20 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 31506 invoked by uid 48); 23 Dec 2014 09:32:17 -0000
From: "marxin at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug ipa/63852] [5 regression] acats failures on x86_64-apple-darwin14
Date: Tue, 23 Dec 2014 09:32:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: ipa
X-Bugzilla-Version: 5.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: marxin at gcc dot gnu.org
X-Bugzilla-Status: RESOLVED
X-Bugzilla-Priority: P1
X-Bugzilla-Assigned-To: marxin at gcc dot gnu.org
X-Bugzilla-Target-Milestone: 5.0
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: bug_status resolution
Message-ID: <bug-63852-4-lnEWFHgqio@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-63852-4@http.gcc.gnu.org/bugzilla/>
References: <bug-63852-4@http.gcc.gnu.org/bugzilla/>
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: 2014-12/txt/msg02630.txt.bz2
Content-length: 442
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63852
Martin Liška <marxin at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #5 from Martin Liška <marxin at gcc dot gnu.org> ---
Fixed in 5.0.0.
>From gcc-bugs-return-471625-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Dec 23 09:33:04 2014
Return-Path: <gcc-bugs-return-471625-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 646 invoked by alias); 23 Dec 2014 09:33:04 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 536 invoked by uid 48); 23 Dec 2014 09:32:59 -0000
From: "janus at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug fortran/63640] move_alloc memory leak
Date: Tue, 23 Dec 2014 09:33: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: 4.9.1
X-Bugzilla-Keywords: wrong-code
X-Bugzilla-Severity: normal
X-Bugzilla-Who: janus at gcc dot gnu.org
X-Bugzilla-Status: RESOLVED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: keywords bug_status cc resolution
Message-ID: <bug-63640-4-wRHz0CfjMQ@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-63640-4@http.gcc.gnu.org/bugzilla/>
References: <bug-63640-4@http.gcc.gnu.org/bugzilla/>
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: 2014-12/txt/msg02632.txt.bz2
Content-length: 1938
https://gcc.gnu.org/bugzilla/show_bug.cgi?idc640
janus at gcc dot gnu.org changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |wrong-code
Status|WAITING |RESOLVED
CC| |janus at gcc dot gnu.org
Resolution|--- |INVALID
--- Comment #5 from janus at gcc dot gnu.org ---
(In reply to Joost VandeVondele from comment #4)
> seems more like an enhancement request to free allocatables at the end of
> main. I guess this is not mandated by the standard
Right. The Fortran standard only requires the compiler to auto-deallocate
variables which live inside a function/subroutine, but not those declared
directly in the main program.
Nevertheless gfortran did it up to version 4.8. I verified that compiling with
4.8.3. does not show any memory leaks.
The auto-deallocation of variables in the main program was removed in 4.9,
because it can alter the run-time behavior with FINAL routines, so one should
better stick to the standard and *not* do it. It's the programmer's
responsibility to deallocate variables in the main program, and the easiest way
to get rid of the valgrind warnings is to do explicitly do this:
program testmv3
type bar
integer, allocatable :: ia(:), ja(:)
end type
integer, allocatable :: ia(:), ja(:)
type(bar), allocatable :: sm,sm2
allocate(sm)
allocate(sm2)
allocate(sm%ia(100),sm%ja(100))
allocate(sm2%ia(1000),sm2%ja(1000))
allocate(ia(100),ja(1000))
call move_alloc(ja,ia)
call move_alloc(sm%ia,sm2%ia)
call move_alloc(sm%ja,sm2%ja)
deallocate(ia,sm2%ia,sm2%ja)
deallocate(sm,sm2)
end program testmv3
This program does not show any leaks. The leaks you were seeing are definitely
not due to any problem with MOVE_ALLOC.
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2014-12-23 9:31 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-11-13 15:50 [Bug ipa/63851] New: ipa-icf miscompiles gfortran.dg/assumed_rank_(8|9|10).f90 at -O2 and above dominiq at lps dot ens.fr
2014-11-14 11:28 ` [Bug ipa/63851] [5 Regression] " rguenth at gcc dot gnu.org
2014-11-20 13:43 ` dominiq at lps dot ens.fr
2014-11-25 17:18 ` marxin at gcc dot gnu.org
2014-11-27 14:19 ` burnus at gcc dot gnu.org
2014-11-27 22:11 ` fxcoudert at gcc dot gnu.org
2014-12-17 1:03 ` howarth at bromo dot med.uc.edu
2014-12-17 13:52 ` dominiq at lps dot ens.fr
2014-12-17 21:32 ` howarth at bromo dot med.uc.edu
2014-12-18 2:17 ` howarth at bromo dot med.uc.edu
2014-12-18 17:32 ` marxin at gcc dot gnu.org
2014-12-18 22:26 ` howarth at bromo dot med.uc.edu
2014-12-19 0:32 ` dominiq at lps dot ens.fr
2014-12-23 9:31 ` marxin at gcc dot gnu.org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).