This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH][ARM] PR target/70008
- From: Kyrill Tkachov <kyrylo dot tkachov at foss dot arm dot com>
- To: Michael Collison <michael dot collison at linaro dot org>, GCC Patches <gcc-patches at gcc dot gnu dot org>, Ramana Radhakrishnan <Ramana dot Radhakrishnan at arm dot com>
- Date: Mon, 29 Feb 2016 11:06:34 +0000
- Subject: Re: [PATCH][ARM] PR target/70008
- Authentication-results: sourceware.org; auth=none
- References: <56D3CD4F dot 6060301 at linaro dot org>
Hi Michael,
On 29/02/16 04:47, Michael Collison wrote:
This patches address PR 70008, where a reverse subtract with carry instruction can be generated in thumb2 mode. It was tested with no regressions in arm and thumb modes on the following targets:
arm-none-linux-gnueabi
arm-none-linux-gnuabihf
armeb-none-linux-gnuabihf
arm-none-eabi
Okay for trunk?
2016-02-28 Michael Collison <michael.collison@linaro.org>
PR target/70008
* config/arm/arm.md (*subsi3_carryin): Only match pattern if
TARGET_ARM due to 'rsc' instruction alternative.
* config/arm/thumb2.md (*thumb2_subsi3_carryin): New pattern.
The *subsi3_carrying pattern has the arch attribute:
(set_attr "arch" "*,a")
That means that the second alternative that generates the RSC instruction is only enabled
for ARM mode. Do you have a testcase where this doesn't happen and this pattern generates
the second alternative for Thumb2?
Thanks,
Kyrill