From ad784b91ac27636d106ae0ee55093dba958bd98d Mon Sep 17 00:00:00 2001 From: Kyrylo Tkachov Date: Tue, 5 Aug 2014 10:27:07 +0000 Subject: [PATCH] [ARM/AArch64] Add CRC32 scheduling information to Cortex-A53 and Cortex-A57. * config/arm/cortex-a15.md (cortex_a15_alu_shift): Add crc type to reservation. * config/arm/cortex-a53.md (cortex_a53_alu_shift): Likewise. From-SVN: r213632 --- gcc/ChangeLog | 6 ++++++ gcc/config/arm/cortex-a15.md | 5 ++++- gcc/config/arm/cortex-a53.md | 2 +- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b58e7981e999..2a9d3534341a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2014-08-05 Kyrylo Tkachov + + * config/arm/cortex-a15.md (cortex_a15_alu_shift): Add crc type + to reservation. + * config/arm/cortex-a53.md (cortex_a53_alu_shift): Likewise. + 2014-08-05 Kyrylo Tkachov * config/arm/arm.md (clzsi2): Set predicable_short_it attr to no. diff --git a/gcc/config/arm/cortex-a15.md b/gcc/config/arm/cortex-a15.md index f5e01a72dcf5..520f24a9f041 100644 --- a/gcc/config/arm/cortex-a15.md +++ b/gcc/config/arm/cortex-a15.md @@ -72,11 +72,14 @@ "ca15_issue1,(ca15_sx1,ca15_sx1_alu)|(ca15_sx2,ca15_sx2_alu)") ;; ALU ops with immediate shift +;; crc is also included here so that appropriate scheduling of CRC32 ARMv8-A +;; instructions can be performed when tuning for the Cortex-A57 since that +;; core reuses the Cortex-A15 pipeline description for the moment. (define_insn_reservation "cortex_a15_alu_shift" 3 (and (eq_attr "tune" "cortexa15") (eq_attr "type" "extend,\ alu_shift_imm,alus_shift_imm,\ - logic_shift_imm,logics_shift_imm,\ + crc,logic_shift_imm,logics_shift_imm,\ mov_shift,mvn_shift")) "ca15_issue1,(ca15_sx1,ca15_sx1+ca15_sx1_shf,ca15_sx1_alu)\ |(ca15_sx2,ca15_sx2+ca15_sx2_shf,ca15_sx2_alu)") diff --git a/gcc/config/arm/cortex-a53.md b/gcc/config/arm/cortex-a53.md index 6cfdcf27c1cf..969ed232be93 100644 --- a/gcc/config/arm/cortex-a53.md +++ b/gcc/config/arm/cortex-a53.md @@ -84,7 +84,7 @@ (define_insn_reservation "cortex_a53_alu_shift" 2 (and (eq_attr "tune" "cortexa53") (eq_attr "type" "alu_shift_imm,alus_shift_imm,\ - logic_shift_imm,logics_shift_imm,\ + crc,logic_shift_imm,logics_shift_imm,\ alu_shift_reg,alus_shift_reg,\ logic_shift_reg,logics_shift_reg,\ extend,mov_shift,mov_shift_reg,\ -- 2.47.3