[PATCH 2/4 v2][AArch64] Add support for FCCMP

Evandro Menezes e.menezes@samsung.com
Tue Jan 5 22:01:00 GMT 2016


Hi, Wilco.

On 12/15/2015 04:32 AM, Wilco Dijkstra wrote:
>> -----Original Message-----
>> From: Wilco Dijkstra [mailto:Wilco.Dijkstra@arm.com]
>> Sent: 17 November 2015 18:36
>> To: gcc-patches@gcc.gnu.org
>> Subject: [PATCH 2/4 v2][AArch64] Add support for FCCMP
>>
>> (v2 version removes 4 enums)
>>
>> This patch adds support for FCCMP. This is trivial with the new CCMP representation - remove the restriction of FP in ccmp.c and add
>> FCCMP patterns. Add a test to ensure FCCMP/FCCMPE are emitted as expected.
>>
>> OK for commit?
>>
>> ChangeLog:
>> 2015-11-18  Wilco Dijkstra  <wdijkstr@arm.com>
>>
>> 	* gcc/ccmp.c (ccmp_candidate_p): Remove integer-only restriction.
>> 	* gcc/config/aarch64/aarch64.md (fccmp<mode>): New pattern.
>> 	(fccmpe<mode>): Likewise.
>> 	(fcmp): Rename to fcmp and globalize pattern.
>> 	(fcmpe): Likewise.
>> 	* gcc/config/aarch64/aarch64.c (aarch64_gen_ccmp_first): Add FP support.
>> 	(aarch64_gen_ccmp_next): Add FP support.
>>
>> gcc/testsuite/
>> 	* gcc.target/aarch64/ccmp_1.c: New testcase.

         Add support for the FCCMP insn types

         2016-01-04  Evandro Menezes  <e.menezes@samsung.com>

         gcc/
             * config/aarch64/aarch64.md (fccmp): Change insn type.
             (fccmpe): Likewise.
             * config/aarch64/thunderx.md (thunderx_fcmp): Add
    "fccmp{s,d}" types.
             * config/arm/types.md (fccmps): Add new insn type.
             (fccmpd): Likewise.
             * config/arm/arm1020e.md (v10_ffarith): Add "fccmp{s,d}" types.
             * config/arm/cortex-a17-neon.md (cortex_a17_vfp_cmp): Likewise.
             * config/arm/cortex-a5.md (cortex_a5_fpalu): Likewise.
             * config/arm/cortex-a53.md (cortex_a53_fpalu): Likewise.
             * config/arm/cortex-a57.md (cortex_a57_fp_cmp): Likewise.
             * config/arm/cortex-a7.md (cortex_a7_fpalu): Likewise.
             * config/arm/cortex-a8-neon.md (cortex_a8_vfp_farith):
    Likewise.
             * config/arm/cortex-a9.md (cortex_a9_fcmp): Likewise.
             * config/arm/cortex-m7.md (cortex_m7_fpalu): Likewise.
             * config/arm/marvell-pj4.md (pj4_vfp_cpy): Likewise.
             * config/arm/vfp11.md (vfp_ffarith): Likewise.
             * config/arm/xgene1.md (xgene1_fcmp): Likewise.
             * config/arm/cortex-a15-neon.md (cortex_a15_vfp_cmps): Add
    "fccmps"
             type.
             (cortex_a15_vfp_cmpd): Add "fccmpd" type.
             * config/arm/cortex-m4-fpu.md (cortex_m4_fcmps): Add
    "fccmps" type.
             * config/arm/cortex-r4f.md (cortex_r4_ffariths): Likewise.
             (cortex_r4_fcmpd): Add "fccmpd" type.
             * config/arm/exynos-m1.md (exynos_m1_fp_ccmp): New insn
    reservation.

Here's what I had in mind when I inquired about distinguishing FCMP from 
FCCMP.  As you can see in the patch, Exynos is the only target that 
cares about it, but I wonder if ThunderX or Xgene would too.

What do you think?

Thank you,

-- 
Evandro Menezes

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Add-support-for-the-FCCMP-insn-types.patch
Type: text/x-patch
Size: 12993 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20160105/e4b7a93c/attachment.bin>


More information about the Gcc-patches mailing list