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][AArch64] Fix FAIL: gcc.target/aarch64/cmn.c scan-assembler cmn\tw[0-9]


On 29/07/13 14:58, Kyrylo Tkachov wrote:
Hi all,

Now that combine emits the canonical form for (eq (neg x) (y)) instead of (eq
(x) (neg y)), this patch fixes up the corresponding pattern in aarch64 to
match that. This enables combine to properly generate the cmn instruction
where appropriate.

Tested aarch64-none-elf on model.

Ok for trunk?


No, this is wrong for inequalities, since in reality it's the second operand that's inverted.

You'll need to use CC_SWP mode and then arrange for this to be correctly picked by select_cc_mode.

R.

Thanks,
Kyrill

2013-07-29  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/aarch64/aarch64.md (compare_neg<mode>): Match canonical RTL
form.=


aarch64-cmn.patch


NÂnârÂÂÃÃ)emÃhÃyhiÃÂÂw^âÂÃ




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