* [PATCH][AArch64] Fix operand costing logic for MINUS
@ 2015-04-27 13:24 Kyrill Tkachov
2015-04-30 16:24 ` Marcus Shawcroft
0 siblings, 1 reply; 3+ messages in thread
From: Kyrill Tkachov @ 2015-04-27 13:24 UTC (permalink / raw)
To: GCC Patches; +Cc: Marcus Shawcroft, Richard Earnshaw, James Greenhalgh
[-- Attachment #1: Type: text/plain, Size: 644 bytes --]
Hi all,
This fixes a case in aarch64 costs where we forgot
to account for one of the operands in the MINUS case.
This is important to get right as the mult synthesis code
can ask for the cost of a shift+sub operation and put the
shift part in any of the MINUS operands, expecting the cost function to
break it down into a separate shift operation if the
two cannot be combined.
Bootstrapped and tested on aarch64.
Ok for trunk?
Thanks,
Kyrill
2015-04-27 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/aarch64/aarch64.c (aarch64_rtx_costs, MINUS):
Properly account for both operand costs in simple case.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: aarch64-costs-minus.patch --]
[-- Type: text/x-patch; name=aarch64-costs-minus.patch, Size: 604 bytes --]
commit 4859566692e4b9195b975632ed105b9c4b6ab765
Author: Kyrylo Tkachov <kyrylo.tkachov@arm.com>
Date: Mon Mar 2 10:18:22 2015 +0000
[AArch64] Properly cost both operands of MINUS.
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index 7ffa7ee..5a3f887 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -5844,7 +5844,8 @@ cost_minus:
return true;
}
- *cost += rtx_cost (new_op1, MINUS, 1, speed);
+ *cost += rtx_cost (new_op1, MINUS, 1, speed)
+ + rtx_cost (op0, MINUS, 0, speed);
if (speed)
{
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH][AArch64] Fix operand costing logic for MINUS
2015-04-27 13:24 [PATCH][AArch64] Fix operand costing logic for MINUS Kyrill Tkachov
@ 2015-04-30 16:24 ` Marcus Shawcroft
2015-05-01 9:13 ` Kyrill Tkachov
0 siblings, 1 reply; 3+ messages in thread
From: Marcus Shawcroft @ 2015-04-30 16:24 UTC (permalink / raw)
To: Kyrill Tkachov
Cc: GCC Patches, Marcus Shawcroft, Richard Earnshaw, James Greenhalgh
On 27 April 2015 at 14:24, Kyrill Tkachov <kyrylo.tkachov@arm.com> wrote:
> 2015-04-27 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
>
> * config/aarch64/aarch64.c (aarch64_rtx_costs, MINUS):
> Properly account for both operand costs in simple case.
OK /Marcus
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH][AArch64] Fix operand costing logic for MINUS
2015-04-30 16:24 ` Marcus Shawcroft
@ 2015-05-01 9:13 ` Kyrill Tkachov
0 siblings, 0 replies; 3+ messages in thread
From: Kyrill Tkachov @ 2015-05-01 9:13 UTC (permalink / raw)
To: Marcus Shawcroft
Cc: GCC Patches, Marcus Shawcroft, Richard Earnshaw, James Greenhalgh
On 30/04/15 17:02, Marcus Shawcroft wrote:
> On 27 April 2015 at 14:24, Kyrill Tkachov <kyrylo.tkachov@arm.com> wrote:
>
>> 2015-04-27 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
>>
>> * config/aarch64/aarch64.c (aarch64_rtx_costs, MINUS):
>> Properly account for both operand costs in simple case.
> OK /Marcus
Thanks, but my patch is just a subset of Wilcos' patch at:
https://gcc.gnu.org/ml/gcc-patches/2015-03/msg00225.html
As mentioned at https://gcc.gnu.org/ml/gcc-patches/2015-04/msg01629.html
I'd like to get Wilcos' patch in instead of mine.
Thanks,
Kyrill
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-05-01 9:13 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-04-27 13:24 [PATCH][AArch64] Fix operand costing logic for MINUS Kyrill Tkachov
2015-04-30 16:24 ` Marcus Shawcroft
2015-05-01 9:13 ` Kyrill Tkachov
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).