This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH][ARM/AArch64] PR 68088: Fix RTL checking ICE due to subregs inside accumulator forwarding check


Ping.
https://gcc.gnu.org/ml/gcc-patches/2015-10/msg03170.html

Thanks,
Kyrill

On 29/10/15 14:14, Kyrill Tkachov wrote:

On 29/10/15 14:00, Marcus Shawcroft wrote:
On 29 October 2015 at 13:50, Kyrill Tkachov <kyrylo.tkachov@arm.com> wrote:

Ok for trunk?
rtl.h exposes reg_or_subregno() already doesn't that do what we need here?

reg_or_subregno assumes that what it's passed is REG or a SUBREG.
It will ICE on any other rtx. Here I want to strip the subreg if it is
a subreg, but leave it as it is otherwise.
OK, I follow.

The test case is not aarch64 specific therefore I think convention is
that it should go into a generic directory.

Ok, I'll put it in gcc.dg/

OK with the test case moved. Thanks /Marcus

Thanks, but I'd like to do a slight respin.
The testcase is moved to gcc.dg but I also avoid creating the new
helper function and just do the SUBREG extraction once at the very end.
This makes the patch smaller.

Since you're ok with the approach and this revision is logically equivalent,
I just need an ok from an arm perspective.

Thanks,
Kyrill

2015-10-29  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

    PR target/68088
    * config/arm/aarch-common.c (aarch_accumulator_forwarding): Strip
    subregs from accumulator and make sure it's a register.

2015-10-29  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

    PR target/68088
    * gcc.dg/pr68088_1.c: New test.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]