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?id’8#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).