Discussion:
Lost upstream patch in merge from gcc-5-branch to linaro/gcc-5-branch
Robert Schiele
2015-12-03 10:37:19 UTC
Permalink
Hi,

I found that with the merge

commit ac19ac6481a3f326d9f41403f5dadab548b2c8a6
Author: Yvan Roux <***@linaro.org>
Date: Wed Sep 16 10:57:42 2015 +0200

Merge branches/gcc-5-branch rev 227732.

Change-Id: I2f59904b28323b1c72a8cf1bd62c9e460d95bcea

the following branch that was within merge range on gcc-5-branch was
lost on the linaro branch:

commit b45a5cf7c1544f95578e823e25402b58fb3fbedd
Author: nsz <***@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Tue Aug 4 16:49:54 2015 +0000

Fix broken backport patch.

gcc:

Backport from mainline:
2015-08-04 Szabolcs Nagy <***@arm.com>

PR target/66731
* config/aarch64/aarch64.c (aarch64_rtx_costs): Fix NEG cost for FNMUL.
(aarch64_rtx_mult_cost): Fix MULT cost with -frounding-math.



git-svn-id:
svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-***@226588
138bc75d-0d04-0410-961f-82ee72b054a4

diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index 691874b..eebc9c3 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -5250,7 +5250,7 @@ aarch64_rtx_mult_cost (rtx x, int code, int
outer, bool speed)
which case FNMUL is different than FMUL with operand negation. */
bool neg0 = GET_CODE (op0) == NEG;
bool neg1 = GET_CODE (op1) == NEG;
- if (compound_p || !flag_rounding_math || (neg0 && neg1))
+ if (maybe_fma || !flag_rounding_math || (neg0 && neg1))
{
if (neg0)
op0 = XEXP (op0, 0);

Since this was a fix to the patch one commit ahead and also merged in
the same operation and there is no further comment on why this fix was
skipped, may I assume that this happened by accident and you probably
want to fix that merge flaw by reapplying the missing patch? Or is
there an information detail I don't have that requires this fix to be
skipped on the Linaro branch?

Robert
Yvan Roux
2015-12-03 12:25:26 UTC
Permalink
Hi Robert,

This fix on gcc-5-branch doesn't apply on Linaro 5 branch, because we
have backported trunk revision 222624 (which renames maybe_fma to
coumpound_p) into it. So, our branch as the same code as trunk one
regarding aarch64_rtx_costs. Do you experiment any issues related to
this change ?

Regards,
Yvan
Post by Robert Schiele
Hi,
I found that with the merge
commit ac19ac6481a3f326d9f41403f5dadab548b2c8a6
Date: Wed Sep 16 10:57:42 2015 +0200
Merge branches/gcc-5-branch rev 227732.
Change-Id: I2f59904b28323b1c72a8cf1bd62c9e460d95bcea
the following branch that was within merge range on gcc-5-branch was
commit b45a5cf7c1544f95578e823e25402b58fb3fbedd
Date: Tue Aug 4 16:49:54 2015 +0000
Fix broken backport patch.
PR target/66731
* config/aarch64/aarch64.c (aarch64_rtx_costs): Fix NEG cost for FNMUL.
(aarch64_rtx_mult_cost): Fix MULT cost with -frounding-math.
138bc75d-0d04-0410-961f-82ee72b054a4
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index 691874b..eebc9c3 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -5250,7 +5250,7 @@ aarch64_rtx_mult_cost (rtx x, int code, int
outer, bool speed)
which case FNMUL is different than FMUL with operand negation. */
bool neg0 = GET_CODE (op0) == NEG;
bool neg1 = GET_CODE (op1) == NEG;
- if (compound_p || !flag_rounding_math || (neg0 && neg1))
+ if (maybe_fma || !flag_rounding_math || (neg0 && neg1))
{
if (neg0)
op0 = XEXP (op0, 0);
Since this was a fix to the patch one commit ahead and also merged in
the same operation and there is no further comment on why this fix was
skipped, may I assume that this happened by accident and you probably
want to fix that merge flaw by reapplying the missing patch? Or is
there an information detail I don't have that requires this fix to be
skipped on the Linaro branch?
Robert
_______________________________________________
linaro-toolchain mailing list
https://lists.linaro.org/mailman/listinfo/linaro-toolchain
Robert Schiele
2015-12-03 15:46:47 UTC
Permalink
Keeping linaro-toolchain in the loop.

Robert


---------- Forwarded message ----------
From: Robert Schiele <***@gmail.com>
Date: Thu, Dec 3, 2015 at 4:44 PM
Subject: Re: Lost upstream patch in merge from gcc-5-branch to
linaro/gcc-5-branch
To: Yvan Roux <***@linaro.org>


Hi Yvan,
Post by Yvan Roux
This fix on gcc-5-branch doesn't apply on Linaro 5 branch, because we
have backported trunk revision 222624 (which renames maybe_fma to
coumpound_p) into it. So, our branch as the same code as trunk one
regarding aarch64_rtx_costs. Do you experiment any issues related to
this change ?
No issues. This was just a theoretical thought and through our CI
build I learned exactly what you just told me the hard way now.

Sorry for the noise.

Robert
Yvan Roux
2015-12-03 18:33:21 UTC
Permalink
Post by Robert Schiele
Keeping linaro-toolchain in the loop.
Robert
---------- Forwarded message ----------
Date: Thu, Dec 3, 2015 at 4:44 PM
Subject: Re: Lost upstream patch in merge from gcc-5-branch to
linaro/gcc-5-branch
Hi Yvan,
Post by Yvan Roux
This fix on gcc-5-branch doesn't apply on Linaro 5 branch, because we
have backported trunk revision 222624 (which renames maybe_fma to
coumpound_p) into it. So, our branch as the same code as trunk one
regarding aarch64_rtx_costs. Do you experiment any issues related to
this change ?
No issues. This was just a theoretical thought and through our CI
build I learned exactly what you just told me the hard way now.
Ok great.
Post by Robert Schiele
Sorry for the noise.
No problem, don't hesitate to report issues when you have some.
Post by Robert Schiele
Robert
_______________________________________________
linaro-toolchain mailing list
https://lists.linaro.org/mailman/listinfo/linaro-toolchain
Loading...