public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/63721] [5 Regression] IPA ICF cause atomic-comp-swap-release-acquire.c ICE on arm
       [not found] <bug-63721-4@http.gcc.gnu.org/bugzilla/>
@ 2014-11-05  9:50 ` jiwang at gcc dot gnu.org
  2014-11-05 11:31 ` thopre01 at gcc dot gnu.org
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 4+ messages in thread
From: jiwang at gcc dot gnu.org @ 2014-11-05  9:50 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63721

Jiong Wang <jiwang at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Target|                            |arm-*-*, x86-64-*-*

--- Comment #1 from Jiong Wang <jiwang at gcc dot gnu.org> ---
the same ICE will happen on x86-64, if compile with -O2 -fPIC.

the reason is for the following two functions, they are identical, so IPA-ICF
pass try to transform the second function to call the first one directly.

int
atomic_compare_exchange_STRONG_RELEASE_ACQUIRE (int a, int b)
{
  return __atomic_compare_exchange (&v, &a, &b,
                    STRONG, __ATOMIC_RELEASE,
                    __ATOMIC_ACQUIRE);
}

int
atomic_compare_exchange_n_STRONG_RELEASE_ACQUIRE (int a, int b)
{
  return __atomic_compare_exchange_n (&v, &a, b,
                      STRONG, __ATOMIC_RELEASE,
                      __ATOMIC_ACQUIRE);
}

while during this transformation, looks like there are something wrong with the
function argument handling. take "a" for example, because later there are "&a",
so it's marked as addressable. while after transformation, if we turn the
second function into

int atomic_compare_exchange_n_STRONG_RELEASE_ACQUIRE (int a, int b)
{
  return atomic_compare_exchange_STRONG_RELEASE_ACQUIRE (a, b)
}

then argument a is no longer addressable.

so, in cgraph_node::release_body, when making the wrapper, except clearing the
function body, we should also clear the addressable flag for function args
because they are decided by the function body which is cleared.

I have a local patch under testing.


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug tree-optimization/63721] [5 Regression] IPA ICF cause atomic-comp-swap-release-acquire.c ICE on arm
       [not found] <bug-63721-4@http.gcc.gnu.org/bugzilla/>
  2014-11-05  9:50 ` [Bug tree-optimization/63721] [5 Regression] IPA ICF cause atomic-comp-swap-release-acquire.c ICE on arm jiwang at gcc dot gnu.org
@ 2014-11-05 11:31 ` thopre01 at gcc dot gnu.org
  2014-11-05 11:33 ` jiwang at gcc dot gnu.org
  2014-11-07 12:46 ` marxin at gcc dot gnu.org
  3 siblings, 0 replies; 4+ messages in thread
From: thopre01 at gcc dot gnu.org @ 2014-11-05 11:31 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63721

thopre01 at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |thopre01 at gcc dot gnu.org

--- Comment #2 from thopre01 at gcc dot gnu.org ---
Shouldn't this be merged with PR63747?


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug tree-optimization/63721] [5 Regression] IPA ICF cause atomic-comp-swap-release-acquire.c ICE on arm
       [not found] <bug-63721-4@http.gcc.gnu.org/bugzilla/>
  2014-11-05  9:50 ` [Bug tree-optimization/63721] [5 Regression] IPA ICF cause atomic-comp-swap-release-acquire.c ICE on arm jiwang at gcc dot gnu.org
  2014-11-05 11:31 ` thopre01 at gcc dot gnu.org
@ 2014-11-05 11:33 ` jiwang at gcc dot gnu.org
  2014-11-07 12:46 ` marxin at gcc dot gnu.org
  3 siblings, 0 replies; 4+ messages in thread
From: jiwang at gcc dot gnu.org @ 2014-11-05 11:33 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63721

--- Comment #3 from Jiong Wang <jiwang at gcc dot gnu.org> ---
(In reply to thopre01 from comment #2)
> Shouldn't this be merged with PR63747?

not sure,  but looks like they are not the same issue. this failure happen on
x86-64 also, and may happen on any target.


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug tree-optimization/63721] [5 Regression] IPA ICF cause atomic-comp-swap-release-acquire.c ICE on arm
       [not found] <bug-63721-4@http.gcc.gnu.org/bugzilla/>
                   ` (2 preceding siblings ...)
  2014-11-05 11:33 ` jiwang at gcc dot gnu.org
@ 2014-11-07 12:46 ` marxin at gcc dot gnu.org
  3 siblings, 0 replies; 4+ messages in thread
From: marxin at gcc dot gnu.org @ 2014-11-07 12:46 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63721

Martin Liška <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |DUPLICATE

--- Comment #4 from Martin Liška <marxin at gcc dot gnu.org> ---
Dup.

*** This bug has been marked as a duplicate of bug 63580 ***
>From gcc-bugs-return-465967-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Fri Nov 07 12:46:44 2014
Return-Path: <gcc-bugs-return-465967-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 19369 invoked by alias); 7 Nov 2014 12:46:44 -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 19043 invoked by uid 48); 7 Nov 2014 12:46:39 -0000
From: "marxin at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug ipa/63580] [5 Regression] ICE : error: invalid argument to gimple call
Date: Fri, 07 Nov 2014 12:46: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: P3
X-Bugzilla-Assigned-To: marxin at gcc dot gnu.org
X-Bugzilla-Target-Milestone: 5.0
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: cc
Message-ID: <bug-63580-4-7wgksdozSA@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-63580-4@http.gcc.gnu.org/bugzilla/>
References: <bug-63580-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/msg00439.txt.bz2
Content-length: 450

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63580

Martin Liška <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jiwang at gcc dot gnu.org

--- Comment #6 from Martin Liška <marxin at gcc dot gnu.org> ---
*** Bug 63721 has been marked as a duplicate of this bug. ***
>From gcc-bugs-return-465968-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Fri Nov 07 12:57:11 2014
Return-Path: <gcc-bugs-return-465968-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 31920 invoked by alias); 7 Nov 2014 12:57:10 -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 31888 invoked by uid 48); 7 Nov 2014 12:57:06 -0000
From: "manu at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug c/48956] -Wconversion should warn when a complex value is assigned to a real result
Date: Fri, 07 Nov 2014 12:57: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: 4.6.0
X-Bugzilla-Keywords: diagnostic
X-Bugzilla-Severity: enhancement
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: bug_status assigned_to
Message-ID: <bug-48956-4-5SceR8GPJ1@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-48956-4@http.gcc.gnu.org/bugzilla/>
References: <bug-48956-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/msg00440.txt.bz2
Content-length: 964

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=48956

Manuel López-Ibáñez <manu at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |NEW
           Assignee|stevenj at alum dot mit.edu        |unassigned at gcc dot gnu.org

--- Comment #10 from Manuel López-Ibáñez <manu at gcc dot gnu.org> ---
(In reply to Paolo Carlini from comment #9)
> Out of curiosity, what happened to this issue? (is still assigned to Steven)
> Note that as far as I can see it's essentially a C issue, because the C++
> front-end rejects this kind of code with an hard error.

I think it is safe to assume that anyone is welcome to follow up on this. See
also comment #5. I personally would leave this as one of the EasyHacks for new
contributors. It is easy to fix but not very important.
>From gcc-bugs-return-465969-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Fri Nov 07 13:26:41 2014
Return-Path: <gcc-bugs-return-465969-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 20871 invoked by alias); 7 Nov 2014 13:26:41 -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 20832 invoked by uid 48); 7 Nov 2014 13:26:37 -0000
From: "enkovich.gnu at gmail dot com" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug middle-end/63766] [5 Regression] ICE: in gimple_predict_edge, at predict.c:578
Date: Fri, 07 Nov 2014 13:26: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: 5.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: enkovich.gnu at gmail dot com
X-Bugzilla-Status: UNCONFIRMED
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: cc
Message-ID: <bug-63766-4-wYJZS3eVVO@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-63766-4@http.gcc.gnu.org/bugzilla/>
References: <bug-63766-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/msg00441.txt.bz2
Content-length: 947

https://gcc.gnu.org/bugzilla/show_bug.cgi?idc766

Ilya Enkovich <enkovich.gnu at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |enkovich.gnu at gmail dot com

--- Comment #4 from Ilya Enkovich <enkovich.gnu at gmail dot com> ---
(In reply to Richard Biener from comment #3)
>
> That's quadratic in the number of nodes and thus a no-go.  Why not delay
> removing of unreachable nodes instead?  If you go with the above then
> you need to change that data-structure used.
>

Delaying removal of unreachable nodes would mean we perform all early
optimization passes for node we will later remove.  It should be much more
expensive then having a hook iterating over nodes vector.

I also may add order_idx field into cgraph_node structure or create a local
hash to map nodes to indexes.


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2014-11-07 12:46 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-63721-4@http.gcc.gnu.org/bugzilla/>
2014-11-05  9:50 ` [Bug tree-optimization/63721] [5 Regression] IPA ICF cause atomic-comp-swap-release-acquire.c ICE on arm jiwang at gcc dot gnu.org
2014-11-05 11:31 ` thopre01 at gcc dot gnu.org
2014-11-05 11:33 ` jiwang at gcc dot gnu.org
2014-11-07 12:46 ` 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).