1. 17 Jul, 2014 1 commit
    • types.md (alu_reg): Replaced by alu_sreg and alu_dsp_reg. · 1d61feeb
      2014-07-17  Terry Guo  <terry.guo@arm.com>
      
      	* config/arm/types.md (alu_reg): Replaced by alu_sreg and alu_dsp_reg.
      	(alus_reg): Renamed to alus_sreg.
      	* config/arm/arm-fixed.md: Change type of non-dsp instructions
      	from alu_reg to alu_sreg.  Change type of dsp instructions from
      	alu_reg to alu_dsp_reg.
      	* config/arm/thumb1.md: Likewise.
      	* config/arm/thumb2.md: Likewise.
      	* config/arm/arm.c (cortexa7_older_only): Use new ALU type names.
      	* config/arm/arm1020e.md (1020alu_op): Replace alu_reg and alus_reg
      	with alu_sreg and alus_sreg.
      	* config/arm/arm1026ejs.md (alu_op): Likewise.
      	* config/arm/arm1136jfs.md (11_alu_op): Likewise.
      	* config/arm/arm926ejs.md (9_alu_op): Likewise.
      	* config/arm/fa526.md (526_alu_op): Likewise.
      	* config/arm/fa606te.md (606te_alu_op): Likewise.
      	* config/arm/fa626te.md (626te_alu_op): Likewise.
      	* config/arm/fa726te.md (726te_alu_op): Likewise.
      	* config/arm/fmp626.md (mp626_alu_op): Likewise.
      	* config/arm/arm.md (core_cycles): Replace alu_reg and alus_reg with
      	alu_sreg, alu_dsp_reg and alus_sreg.     
      	* config/arm/cortex-a15.md (cortex_a15_alu): Likewise.
      	* config/arm/cortex-a5.md (cortex_a5_alu): Likewise.
      	* config/arm/cortex-a53.md (cortex_a53_alu): Likewise.
      	* config/arm/cortex-a7.md (cortex_a7_alu_sreg): Likewise.
      	* config/arm/cortex-a8.md (cortex_a8_alu): Likewise.
      	* config/arm/cortex-a9.md (cortex_a9_dp): Likewise.
      	* config/arm/cortex-m4.md (cortex_m4_alu): Likewise.
      	* config/arm/cortex-r4.md (cortex_r4_alu): Likewise.
      	* config/arm/marvell-pj4.md (pj4_alu, pj4_alu_conds): Likewise.
      	* config/aarch64/aarch64.md (*addsi3_aarch64, *addsi3_aarch64_uxtw,
      	subsi3, *adddi3_aarch64, *subsi3_uxtw, subdi3, absdi2, neg<mode>2,
      	*negsi2_uxtw, tlsle_small_<mode>): Rename type alu_reg to alu_sreg.     
      	(add<mode>3_compare0, *addsi3_compare0_uxtw, *add<mode>3nr_compare0,
      	sub<mode>3_compare0, *compare_neg<mode>, *neg<mode>2_compare0,
      	subsi3_compare0_uxtw, *negsi2_compare0_uxtw, *cmp<mode>): Rename type 
      	alus_reg to alus_sreg.
      
      From-SVN: r212750
      Terry Guo committed
  2. 02 Jan, 2014 1 commit
  3. 05 Sep, 2013 1 commit
    • [AARCH64][Insn classification unification 3/N] ALU/shift types · 6e4150e1
      2013-09-05  James Greenhalgh  <james.greenhalgh@arm.com>
      	    Sofiane Naci  <sofiane.naci@arm.com>
      
      	* config/arm/types.md (define_attr "type"):
      	Expand "arlo_imm"
      	into "adr", "alu_imm", "alus_imm", "logic_imm", "logics_imm".
      	Expand "arlo_reg"
      	into "adc_reg", "adc_imm", "adcs_reg", "adcs_imm", "alu_ext",
      	"alu_reg", "alus_ext", "alus_reg", "bfm", "csel", "logic_reg",
      	"logics_reg", "rev".
      	Expand "arlo_shift"
      	into "alu_shift_imm", "alus_shift_imm", "logic_shift_imm",
      	"logics_shift_imm".
      	Expand "arlo_shift_reg"
      	into "alu_shift_reg", "alus_shift_reg", "logic_shift_reg",
      	"logics_shift_reg".
      	Expand "clz" into "clz, "rbit".
      	Rename "shift" to "shift_imm".
      	* config/arm/arm.md (define_attr "core_cycles"): Update for attribute
      	changes.
      	Update for attribute changes all occurrences of arlo_* and
      	shift* types.
      	* config/arm/arm-fixed.md: Update for attribute changes
      	all occurrences of arlo_* types.
      	* config/arm/thumb2.md: Update for attribute changes all occurrences
      	of arlo_* types.
      	* config/arm/arm.c (xscale_sched_adjust_cost):  (rtx insn, rtx
      	(cortexa7_older_only): Likewise.
      	(cortexa7_younger):  Likewise.
      	* config/arm/arm1020e.md (1020alu_op): Update for attribute changes.
      	(1020alu_shift_op): Likewise.
      	(1020alu_shift_reg_op): Likewise.
      	* config/arm/arm1026ejs.md (alu_op): Update for attribute changes.
      	(alu_shift_op): Likewise.
      	(alu_shift_reg_op): Likewise.
      	* config/arm/arm1136jfs.md (11_alu_op): Update for
      	attribute changes.
      	(11_alu_shift_op): Likewise.
      	(11_alu_shift_reg_op): Likewise.
      	* config/arm/arm926ejs.md (9_alu_op): Update for attribute changes.
      	(9_alu_shift_reg_op): Likewise.
      	* config/arm/cortex-a15.md (cortex_a15_alu): Update for
      	attribute changes.
      	(cortex_a15_alu_shift): Likewise.
      	(cortex_a15_alu_shift_reg): Likewise.
      	* config/arm/cortex-a5.md (cortex_a5_alu): Update for
      	attribute changes.
      	(cortex_a5_alu_shift): Likewise.
      	* config/arm/cortex-a53.md
      	(cortex_a53_alu): Update for attribute changes.
      	(cortex_a53_alu_shift): Likewise.
      	* config/arm/cortex-a7.md
      	(cortex_a7_alu_imm): Update for attribute changes.
      	(cortex_a7_alu_reg): Likewise.
      	(cortex_a7_alu_shift): Likewise.
      	* config/arm/cortex-a8.md
      	(cortex_a8_alu): Update for attribute changes.
      	(cortex_a8_alu_shift): Likewise.
      	(cortex_a8_alu_shift_reg): Likewise.
      	* config/arm/cortex-a9.md
      	(cortex_a9_dp): Update for attribute changes.
      	(cortex_a9_dp_shift): Likewise.
      	* config/arm/cortex-m4.md
      	(cortex_m4_alu): Update for attribute changes.
      	* config/arm/cortex-r4.md
      	(cortex_r4_alu): Update for attribute changes.
      	(cortex_r4_mov): Likewise.
      	(cortex_r4_alu_shift_reg): Likewise.
      	* config/arm/fa526.md
      	(526_alu_op): Update for attribute changes.
      	(526_alu_shift_op): Likewise.
      	* config/arm/fa606te.md
      	(606te_alu_op): Update for attribute changes.
      	* config/arm/fa626te.md
      	(626te_alu_op): Update for attribute changes.
      	(626te_alu_shift_op): Likewise.
      	* config/arm/fa726te.md
      	(726te_alu_op): Update for attribute changes.
      	(726te_alu_shift_op): Likewise.
      	(726te_alu_shift_reg_op): Likewise.
      	* config/arm/fmp626.md (mp626_alu_op): Update for attribute changes.
      	(mp626_alu_shift_op): Likewise.
      	* config/arm/marvell-pj4.md (pj4_alu): Update for attribute changes.
      	(pj4_alu_conds): Likewise.
      	(pj4_shift): Likewise.
      	(pj4_shift_conds): Likewise.
      	(pj4_alu_shift): Likewise.
      	(pj4_alu_shift_conds): Likewise.
      	* config/aarch64/aarch64.md: Update for attribute change
      	all occurrences of arlo_* and shift* types.
      
      
      
      Co-Authored-By: Sofiane Naci <sofiane.naci@arm.com>
      
      From-SVN: r202291
      James Greenhalgh committed
  4. 22 Jul, 2013 1 commit
    • arm.md (attribute "insn"): Delete. · 859abddd
      	* config/arm/arm.md (attribute "insn"): Delete.
      	(attribute "type"): Add "mov_imm", "mov_reg", "mov_shift",
      	"mov_shift_reg", "mvn_imm", "mvn_reg", "mvn_shift" and "mvn_shift_reg".
      	(not_shiftsi): Update for attribute change.
      	(not_shiftsi_compare0): Likewise.
      	(not_shiftsi_compare0_scratch): Likewise.
      	(arm_one_cmplsi2): Likewise.
      	(thumb1_one_cmplsi2): Likewise.
      	(notsi_compare0): Likewise.
      	(notsi_compare0_scratch): Likewise.
      	(thumb1_movdi_insn): Likewise.
      	(arm_movsi_insn): Likewise.
      	(movhi_insn_arch4): Likewise.
      	(movhi_bytes): Likewise.
      	(arm_movqi_insn): Likewise.
      	(thumb1_movqi_insn): Likewise.
      	(arm32_movhf): Likewise.
      	(thumb1_movhf): Likewise.
      	(arm_movsf_soft_insn): Likewise.
      	(thumb1_movsf_insn): Likewise.
      	(thumb_movdf_insn): Likewise.
      	(movsicc_insn): Likewise.
      	(movsfcc_soft_insn): Likewise.
      	(and_scc): Likewise.
      	(cond_move): Likewise.
      	(if_move_not): Likewise.
      	(if_not_move): Likewise.
      	(if_shift_move): Likewise.
      	(if_move_shift): Likewise.
      	(if_shift_shift): Likewise.
      	(if_not_arith): Likewise.
      	(if_arith_not): Likewise.
      	(cond_move_not): Likewise.
      	* config/arm/neon.md (neon_mov<mode>): Update for attribute change.
      	(neon_mov<mode>): Likewise.
      	* config/arm/vfp.md (arm_movsi_vfp): Update for attribute change.
      	(thumb2_movsi_vfp): Likewise.
      	(movsf_vfp): Likewise.
      	(thumb2_movsf_vfp): Likewise.
      	* config/arm/arm.c (xscale_sched_adjust_cost): Update for attribute change.
      	(cortexa7_older_only): Likewise.
      	(cortexa7_younger): Likewise.
      	* config/arm/arm1020e.md (1020alu_op): Update for attribute change.
      	(1020alu_shift_op): Likewise.
      	(1020alu_shift_reg_op): Likewise.
      	* config/arm/arm1026ejs.md (alu_op): Update for attribute change.
      	(alu_shift_op): Likewise.
      	(alu_shift_reg_op): Likewise.
      	* config/arm/arm1136jfs.md (11_alu_op): Update for attribute change.
      	(11_alu_shift_op): Likewise.
      	(11_alu_shift_reg_op): Likewise.
      	* config/arm/arm926ejs.md (9_alu_op): Update for attribute change.
      	(9_alu_shift_reg_op): Likewise.
      	* config/arm/cortex-a15.md (cortex_a15_alu): Update for attribute change.
      	(cortex_a15_alu_shift): Likewise.
      	(cortex_a15_alu_shift_reg): Likewise.
      	* config/arm/cortex-a5.md (cortex_a5_alu): Update for attribute change.
      	(cortex_a5_alu_shift): Likewise.
      	* config/arm/cortex-a53.md (cortex_a53_alu): Update for attribute change.
      	(cortex_a53_alu_shift): Likewise.
      	* config/arm/cortex-a7.md (cortex_a7_alu_imm): Update for attribute change.
      	(cortex_a7_alu_reg): Likewise.
      	(cortex_a7_alu_shift): Likewise.
      	* config/arm/cortex-a8.md (cortex_a8_alu): Update for attribute change.
      	(cortex_a8_alu_shift): Likewise.
      	(cortex_a8_alu_shift_reg): Likewise.
      	(cortex_a8_mov): Likewise.
      	* config/arm/cortex-a9.md (cortex_a9_dp): Update for attribute change.
      	(cortex_a9_dp_shift): Likewise.
      	* config/arm/cortex-m4.md (cortex_m4_alu): Update for attribute change.
      	* config/arm/cortex-r4.md (cortex_r4_alu): Update for attribute change.
      	(cortex_r4_mov): Likewise.
      	(cortex_r4_alu_shift): Likewise.
      	(cortex_r4_alu_shift_reg): Likewise.
      	* config/arm/fa526.md (526_alu_op): Update for attribute change.
      	(526_alu_shift_op): Likewise.
      	* config/arm/fa606te.md (606te_alu_op): Update for attribute change.
      	* config/arm/fa626te.md (626te_alu_op): Update for attribute change.
      	(626te_alu_shift_op): Likewise.
      	* config/arm/fa726te.md (726te_shift_op): Update for attribute change.
      	(726te_alu_op): Likewise.
      	(726te_alu_shift_op): Likewise.
      	(726te_alu_shift_reg_op): Likewise.
      	* config/arm/fmp626.md (mp626_alu_op): Update for attribute change.
      	(mp626_alu_shift_op): Likewise.
      	* config/arm/marvell-pj4.md (pj4_alu_e1): Update for attribute change.
      	(pj4_alu_e1_conds): Likewise.
      	(pj4_alu): Likewise.
      	(pj4_alu_conds): Likewise.
      	(pj4_shift): Likewise.
      	(pj4_shift_conds): Likewise.
      	(pj4_alu_shift): Likewise.
      	(pj4_alu_shift_conds): Likewise.
      
      From-SVN: r201124
      Sofiane Naci committed
  5. 18 Jul, 2013 1 commit
    • arm.md (attribute "type"): Rename "simple_alu_imm" to "arlo_imm". · 006bd006
      	* config/arm/arm.md (attribute "type"): Rename "simple_alu_imm" to
      	"arlo_imm".  Rename "alu_reg" to "arlo_reg".  Rename "simple_alu_shift" to
      	"extend".  Split "alu_shift" into "shift" and "arlo_shift".  Split
      	"alu_shift_reg" into "shift_reg" and "arlo_shift_reg".  List types
      	in alphabetical order.
      	(attribute "core_cycles"): Update for attribute changes.
      	(arm_addsi3): Likewise.
      	(addsi3_compare0): Likewise.
      	(addsi3_compare0_scratch): Likewise.
      	(addsi3_compare_op1): Likewise.
      	(addsi3_compare_op2): Likewise.
      	(compare_addsi2_op0): Likewise.
      	(compare_addsi2_op1): Likewise.
      	(addsi3_carryin_shift_<optab>): Likewise.
      	(subsi3_carryin_shift): Likewise.
      	(rsbsi3_carryin_shift): Likewise.
      	(arm_subsi3_insn): Likewise.
      	(subsi3_compare0): Likewise.
      	(subsi3_compare): Likewise.
      	(arm_andsi3_insn): Likewise.
      	(thumb1_andsi3_insn): Likewise.
      	(andsi3_compare0): Likewise.
      	(andsi3_compare0_scratch): Likewise.
      	(zeroextractsi_compare0_scratch
      	(andsi_not_shiftsi_si): Likewise.
      	(iorsi3_insn): Likewise.
      	(iorsi3_compare0): Likewise.
      	(iorsi3_compare0_scratch): Likewise.
      	(arm_xorsi3): Likewise.
      	(thumb1_xorsi3_insn): Likewise.
      	(xorsi3_compare0): Likewise.
      	(xorsi3_compare0_scratch): Likewise.
      	(satsi_<SAT:code>_shift): Likewise.
      	(rrx): Likewise.
      	(arm_shiftsi3): Likewise.
      	(shiftsi3_compare0): Likewise.
      	(not_shiftsi): Likewise.
      	(not_shiftsi_compare0): Likewise.
      	(not_shiftsi_compare0_scratch): Likewise.
      	(arm_one_cmplsi2): Likewise.
      	(thumb_one_complsi2): Likewise.
      	(notsi_compare0): Likewise.
      	(notsi_compare0_scratch): Likewise.
      	(thumb1_zero_extendhisi2): Likewise.
      	(arm_zero_extendhisi2): Likewise.
      	(arm_zero_extendhisi2_v6): Likewise.
      	(arm_zero_extendhisi2addsi): Likewise.
      	(thumb1_zero_extendqisi2): Likewise.
      	(thumb1_zero_extendqisi2_v6): Likewise.
      	(arm_zero_extendqisi2): Likewise.
      	(arm_zero_extendqisi2_v6): Likewise.
      	(arm_zero_extendqisi2addsi): Likewise.
      	(thumb1_extendhisi2): Likewise.
      	(arm_extendhisi2): Likewise.
      	(arm_extendhisi2_v6): Likewise.
      	(arm_extendqisi): Likewise.
      	(arm_extendqisi_v6): Likewise.
      	(arm_extendqisi2addsi): Likewise.
      	(thumb1_extendqisi2): Likewise.
      	(thumb1_movdi_insn): Likewise.
      	(arm_movsi_insn): Likewise.
      	(movsi_compare0): Likewise.
      	(movhi_insn_arch4): Likewise.
      	(movhi_bytes): Likewise.
      	(arm_movqi_insn): Likewise.
      	(thumb1_movqi_insn): Likewise.
      	(arm32_movhf): Likewise.
      	(thumb1_movhf): Likewise.
      	(arm_movsf_soft_insn): Likewise.
      	(thumb1_movsf_insn): Likewise.
      	(movdf_soft_insn): Likewise.
      	(thumb_movdf_insn): Likewise.
      	(arm_cmpsi_insn): Likewise.
      	(cmpsi_shiftsi): Likewise.
      	(cmpsi_shiftsi_swp): Likewise.
      	(arm_cmpsi_negshiftsi_si): Likewise.
      	(movsicc_insn): Likewise.
      	(movsfcc_soft_insn): Likewise.
      	(arith_shiftsi): Likewise.
      	(arith_shiftsi_compare0
      	(arith_shiftsi_compare0_scratch
      	(sub_shiftsi): Likewise.
      	(sub_shiftsi_compare0
      	(sub_shiftsi_compare0_scratch
      	(and_scc): Likewise.
      	(cond_move): Likewise.
      	(if_plus_move): Likewise.
      	(if_move_plus): Likewise.
      	(if_move_not): Likewise.
      	(if_not_move): Likewise.
      	(if_shift_move): Likewise.
      	(if_move_shift): Likewise.
      	(if_shift_shift): Likewise.
      	(if_not_arith): Likewise.
      	(if_arith_not): Likewise.
      	(cond_move_not): Likewise.
      	(thumb1_ashlsi3): Set type attribute.
      	(thumb1_ashrsi3): Likewise.
      	(thumb1_lshrsi3): Likewise.
      	(thumb1_rotrsi3): Likewise.
      	(shiftsi3_compare0_scratch): Likewise.
      	* config/arm/neon.md (neon_mov<mode>): Update for attribute changes.
      	(neon_mov<mode>): Likewise.
      	* config/arm/thumb2.md (thumb_andsi_not_shiftsi_si): Update for attribute
      	changes.
      	(thumb2_movsi_insn): Likewise.
      	(thumb2_cmpsi_neg_shiftsi): Likewise.
      	(thumb2_extendqisi_v6): Likewise.
      	(thumb2_zero_extendhisi2_v6): Likewise.
      	(thumb2_zero_extendqisi2_v6): Likewise.
      	(thumb2_shiftsi3_short): Likewise.
      	(thumb2_addsi3_compare0_scratch): Likewise.
      	(orsi_not_shiftsi_si): Likewise.
      	* config/arm/vfp.md (arm_movsi_vfp): Update for attribute changes.
      	* config/arm/arm-fixed.md (arm_ssatsihi_shift): Update for attribute
      	changes.
      	* config/arm/arm1020e.md (1020alu_op): Update for attribute changes.
      	(1020alu_shift_op): Likewise.
      	(1020alu_shift_reg_op): Likewise.
      	* config/arm/arm1026ejs.md (alu_op): Update for attribute changes.
      	(alu_shift_op): Likewise.
      	(alu_shift_reg_op): Likewise.
      	* config/arm/arm1136jfs.md (11_alu_op): Update for attribute changes.
      	(11_alu_shift_op): Likewise.
      	(11_alu_shift_reg_op): Likewise.
      	* config/arm/arm926ejs.md (9_alu_op): Update for attribute changes.
      	(9_alu_shift_reg_op): Likewise.
      	* config/arm/cortex-a15.md (cortex_a15_alu): Update for attribute changes.
      	(cortex_a15_alu_shift): Likewise.
      	(cortex_a15_alu_shift_reg): Likewise.
      	* config/arm/cortex-a5.md (cortex_a5_alu): Update for attribute changes.
      	(cortex_a5_alu_shift): Likewise.
      	* config/arm/cortex-a53.md (cortex_a53_alu) : Update for attribute
      	changes.
      	(cortex_a53_alu_shift): Likewise.
      	* config/arm/cortex-a7.md (cortex_a7_alu_imm): Update for attribute
      	changes.
      	(cortex_a7_alu_reg): Likewise.
      	(cortex_a7_alu_shift): Likewise.
      	* config/arm/cortex-a8.md (cortex_a8_alu): Update for attribute changes.
      	(cortex_a8_alu_shift): Likewise.
      	(cortex_a8_alu_shift_reg): Likewise.
      	(cortex_a8_mov): Likewise.
      	* config/arm/cortex-a9.md (cortex_a9_dp): Update for attribute changes.
      	(cortex_a9_dp_shift): Likewise.
      	* config/arm/cortex-m4.md (cortex_m4_alu): Update for attribute changes.
      	* config/arm/cortex-r4.md (cortex_r4_alu): Update for attribute changes.
      	(cortex_r4_mov): Likewise.
      	(cortex_r4_alu_shift): Likewise.
      	(cortex_r4_alu_shift_reg): Likewise.
      	* config/arm/fa526.md (526_alu_op): Update for attribute changes.
      	(526_alu_shift_op): Likewise.
      	* config/arm/fa606te.md (606te_alu_op): Update for attribute changes.
      	* config/arm/fa626te.md (626te_alu_op): Update for attribute changes.
      	(626te_alu_shift_op): Likewise.
      	* config/arm/fa726te.md (726te_shift_op): Update for attribute changes.
      	(726te_alu_op): Likewise.
      	(726te_alu_shift_op): Likewise.
      	(726te_alu_shift_reg_op): Likewise.
      	* config/arm/fmp626.md (mp626_alu_op): Update for attribute changes.
      	(mp626_alu_shift_op): Likewise.
      	* config/arm/marvell-pj4.md (pj4_alu_e1): Update for attribute changes.
      	(pj4_alu_e1_conds): Likewise.
      	(pj4_alu): Likewise.
      	(pj4_alu_conds): Likewise.
      	(pj4_shift): Likewise.
      	(pj4_shift_conds): Likewise.
      	(pj4_alu_shift): Likewise.
      	(pj4_alu_shift_conds): Likewise.
      	* config/arm/arm.c (xscale_sched_adjust_cost): Update for attribute changes.
      	(cortexa7_older_only): Likewise.
      	(cortexa7_younger): Likewise.
      
      From-SVN: r201024
      Sofiane Naci committed
  6. 18 Jun, 2013 1 commit
    • arm.md (attribute "insn"): Move multiplication and division attributes to... · 09485a08
      	* config/arm/arm.md (attribute "insn"): Move multiplication and division
      	attributes to...
      	(attribute "type"): ... here.  Remove mult.
      	(attribute "mul32"): New attribute.
      	(attribute "mul64"): Add umaal.
      	(*arm_mulsi3): Update attributes.
      	(*arm_mulsi3_v6): Likewise.
      	(*thumb_mulsi3): Likewise.
      	(*thumb_mulsi3_v6): Likewise.
      	(*mulsi3_compare0): Likewise.
      	(*mulsi3_compare0_v6): Likewise.
      	(*mulsi_compare0_scratch): Likewise.
      	(*mulsi_compare0_scratch_v6): Likewise.
      	(*mulsi3addsi): Likewise.
      	(*mulsi3addsi_v6): Likewise.
      	(*mulsi3addsi_compare0): Likewise.
      	(*mulsi3addsi_compare0_v6): Likewise.
      	(*mulsi3addsi_compare0_scratch): Likewise.
      	(*mulsi3addsi_compare0_scratch_v6): Likewise.
      	(*mulsi3subsi): Likewise.
      	(*mulsidi3adddi): Likewise.
      	(*mulsi3addsi_v6): Likewise.
      	(*mulsidi3adddi_v6): Likewise.
      	(*mulsidi3_nov6): Likewise.
      	(*mulsidi3_v6): Likewise.
      	(*umulsidi3_nov6): Likewise.
      	(*umulsidi3_v6): Likewise.
      	(*umulsidi3adddi): Likewise.
      	(*umulsidi3adddi_v6): Likewise.
      	(*smulsi3_highpart_nov6): Likewise.
      	(*smulsi3_highpart_v6): Likewise.
      	(*umulsi3_highpart_nov6): Likewise.
      	(*umulsi3_highpart_v6): Likewise.
      	(mulhisi3): Likewise.
      	(*mulhisi3tb): Likewise.
      	(*mulhisi3bt): Likewise.
      	(*mulhisi3tt): Likewise.
      	(maddhisi4): Likewise.
      	(*maddhisi4tb): Likewise.
      	(*maddhisi4tt): Likewise.
      	(maddhidi4): Likewise.
      	(*maddhidi4tb): Likewise.
      	(*maddhidi4tt): Likewise.
      	(divsi3): Likewise.
      	(udivsi3): Likewise.
      	* config/arm/thumb2.md (thumb2_mulsi_short): Update attributes.
      	(thumb2_mulsi_short_compare0): Likewise.
      	(thumb2_mulsi_short_compare0_scratch): Likewise.
      	* config/arm/arm1020e.md (1020mult1): Update attribute change.
      	(1020mult2): Likewise.
      	(1020mult3): Likewise.
      	(1020mult4): Likewise.
      	(1020mult5): Likewise.
      	(1020mult6): Likewise.
      	* config/arm/cortex-a15.md (cortex_a15_mult32): Update attribute change.
      	(cortex_a15_mult64): Likewise.
      	(cortex_a15_sdiv): Likewise.
      	(cortex_a15_udiv): Likewise.
      	* config/arm/arm1026ejs.md (mult1): Update attribute change.
      	(mult2): Likewise.
      	(mult3): Likewise.
      	(mult4): Likewise.
      	(mult5): Likewise.
      	(mult6): Likewise.
      	* config/arm/marvell-pj4.md (pj4_ir_mul): Update attribute change.
      	(pj4_ir_div): Likewise.
      	* config/arm/arm1136jfs.md (11_mult1): Update attribute change.
      	(11_mult2): Likewise.
      	(11_mult3): Likewise.
      	(11_mult4): Likewise.
      	(11_mult5): Likewise.
      	(11_mult6): Likewise.
      	(11_mult7): Likewise.
      	* config/arm/cortex-a8.md (cortex_a8_mul): Update attribute change.
      	(cortex_a8_mla): Likewise.
      	(cortex_a8_mull): Likewise.
      	(cortex_a8_smulwy): Likewise.
      	(cortex_a8_smlald): Likewise.
      	* config/arm/cortex-m4.md (cortex_m4_alu): Update attribute change.
      	* config/arm/cortex-r4.md (cortex_r4_mul_4): Update attribute change.
      	(cortex_r4_mul_3): Likewise.
      	(cortex_r4_mla_4): Likewise.
      	(cortex_r4_mla_3): Likewise.
      	(cortex_r4_smlald): Likewise.
      	(cortex_r4_mull): Likewise.
      	(cortex_r4_sdiv): Likewise.
      	(cortex_r4_udiv): Likewise.
      	* config/arm/cortex-a7.md (cortex_a7_mul): Update attribute change.
      	(cortex_a7_idiv): Likewise.
      	* config/arm/arm926ejs.md (9_mult1): Update attribute change.
      	(9_mult2): Likewise.
      	(9_mult3): Likewise.
      	(9_mult4): Likewise.
      	(9_mult5): Likewise.
      	(9_mult6): Likewise.
      	* config/arm/cortex-a53.md (cortex_a53_mul): Update attribute change.
      	(cortex_a53_sdiv): Likewise.
      	(cortex_a53_udiv): Likewise.
      	* config/arm/fa726te.md (726te_mult_op): Update attribute change.
      	* config/arm/fmp626.md (mp626_mult1): Update attribute change.
      	(mp626_mult2): Likewise.
      	(mp626_mult3): Likewise.
      	(mp626_mult4): Likewise.
      	* config/arm/fa526.md (526_mult1): Update attribute change.
      	(526_mult2): Likewise.
      	* config/arm/arm-generic.md (mult): Update attribute change.
      	(mult_ldsched_strongarm): Likewise.
      	(mult_ldsched): Likewise.
      	(multi_cycle): Likewise.
      	* config/arm/cortex-a5.md (cortex_a5_mul): Update attribute change.
      	* config/arm/fa606te.md (606te_mult1): Update attribute change.
      	(606te_mult2): Likewise.
      	(606te_mult3): Likewise.
      	(606te_mult4): Likewise.
      	* config/arm/cortex-a9.md (cortex_a9_mult16): Update attribute change.
      	(cortex_a9_mac16): Likewise.
      	(cortex_a9_multiply): Likewise.
      	(cortex_a9_mac): Likewise.
      	(cortex_a9_multiply_long): Likewise.
      	* config/arm/fa626te.md (626te_mult1): Update attribute change.
      	(626te_mult2): Likewise.
      	(626te_mult3): Likewise.
      	(626te_mult4): Likewise.
      
      From-SVN: r200167
      Sofiane Naci committed
  7. 10 Jan, 2013 1 commit
  8. 04 Jan, 2013 1 commit
  9. 17 Dec, 2012 1 commit
    • arm.md (type): Add "simple_alu_shift" to attribute "type". · 55ebe5ab
      gcc/
      
      2012-12-17  Greta Yorsh  <Greta.Yorsh@arm.com>
      
              * config/arm/arm.md (type): Add "simple_alu_shift" to attribute "type".
              (core_cycles): Update for simple_alu_shift.
              (thumb1_zero_extendhisi2,arm_zero_extendhisi2_v6): Use simple_alu_shift
              instead of a CPU-speicific condition for "type" attribute.
              (thumb1_zero_extendqisi2_v6,arm_zero_extendqisi2_v6): Likewise.
              (thumb1_extendhisi2,arm_extendhisi2_v6,arm_extendqisi_v6): Likewise.
              (thumb1_extendqisi2): Likewise.
              * config/arm/thumb2.md (thumb2_extendqisi_v6): Likewise.
              (thumb2_zero_extendhisi2_v6,thumb2_zero_extendqisi2_v6) Likewise.
              * config/arm/arm1020e.md (alu_shift_op): Use simple_alu_shift.
              * config/arm/arm1026ejs.md (alu_shift_op): Likewise.
              * config/arm/arm1136jfs.md (11_alu_shift_op): Likewise.
              * config/arm/arm926ejs.md (9_alu_op): Likewise.
              * config/arm/cortex-a15.md (cortex_a15_alu_shift): Likewise.
              * config/arm/cortex-a5.md (cortex_a5_alu_shift): Likewise.
              * config/arm/cortex-a8.md (cortex_a8_alu_shift,cortex_a8_mov): Likewise.
              * config/arm/cortex-a9.md (cortex_a9_dp,cortex_a9_dp_shift): Likewise.
              * config/arm/cortex-m4.md (cortex_m4_alu): Likewise.
              * config/arm/cortex-r4.md (cortex_r4_alu_shift): Likewise.
              * config/arm/fa526.md (526_alu_shift_op): Likewise.
              * config/arm/fa606te.md (fa606te_core): Likewise.
              * config/arm/fa626te.md (626te_alu_shift_op): Likewise.
              * config/arm/fa726te.md (726te_alu_shift_op): Likewise.
              * config/arm/fmp626.md (mp626_alu_shift_op): Likewise.
      
      From-SVN: r194557
      Greta Yorsh committed
  10. 30 Nov, 2012 1 commit
    • For attribute named "type", subdivide "alu" into "alu_reg" and "simple_alu_imm". · 148413a4
      Set type attribute as appropriate in RTL patterns with immediate operands.
      Update pipeline descriptions to use the new values of type attribute.
      
      gcc/
      
      2012-11-30  Ramana Radhakrishnan <Ramana.Radhakrishnan@arm.com>
                  Greta Yorsh  <Greta.Yorsh@arm.com>
      
              * config/arm/arm.md (type): Subdivide "alu" into "alu_reg"
              and "simple_alu_imm".
              (core_cycles): Use new names.
              (arm_addsi3): Set type of patterns to use to alu_reg and simple_alu_imm.
              (addsi3_compare0, addsi3_compare0_scratch): Likewise.
              (addsi3_compare_op1, addsi3_compare_op2, compare_addsi2_op0): Likewise.
              (compare_addsi2_op1, arm_subsi3_insn, subsi3_compare0): Likewise.
              (subsi3_compare, arm_decscc,arm_andsi3_insn): Likewise.
              (thumb1_andsi3_insn, andsi3_compare0_scratch): Likewise.
              (zeroextractsi_compare0_scratch,iorsi3_insn,iorsi3_compare0): Likewise.
              (iorsi3_compare0_scratch, arm_xorsi3, thumb1_xorsi3_insn): Likewise.
              (xorsi3_compare0, xorsi3_compare0_scratch): Likewise.
              (thumb1_zero_extendhisi2,arm_zero_extendhisi2_v6): Likewise.
              (thumb1_zero_extendqisi2_v, arm_zero_extendqisi2_v6): Likewise.
      	(thumb1_extendhisi2, arm_extendqisi_v6): Likewise.
      	(thumb1_extendqisi2, arm_movsi_insn): Likewise.
              (movsi_compare0, movhi_insn_arch4, movhi_bytes): Likewise.
              (arm_movqi_insn, thumb1_movqi_insn, arm_cmpsi_insn): Likewise.
              (movsicc_insn, if_plus_move, if_move_plus): Likewise.
              * config/arm/neon.md (neon_mov<mode>/VDX): Likewise.
              (neon_mov<mode>/VQXMOV): Likewise.
              * config/arm/arm1020e.md (1020alu_op): Likewise.
              * config/arm/fmp626.md (mp626_alu_op): Likewise.
              * config/arm/fa726te.md (726te_alu_op): Likewise.
              * config/arm/fa626te.md (626te_alu_op): Likewise.
              * config/arm/fa606te.md (606te_alu_op): Likewise.
              * config/arm/fa526.md (526_alu_op): Likewise.
              * config/arm/cortex-r4.md (cortex_r4_alu, cortex_r4_mov): Likewise.
              * config/arm/cortex-m4.md (cortex_m4_alu): Likewise.
              * config/arm/cortex-a9.md (cprtex_a9_dp): Likewise.
              * config/arm/cortex-a8.md (cortex_a8_alu, cortex_a8_mov): Likewise.
              * config/arm/cortex-a5.md (cortex_a5_alu): Likewise.
              * config/arm/cortex-a15.md (cortex_a15_alu): Likewise.
              * config/arm/arm926ejs.md (9_alu_op): Likewise.
              * config/arm/arm1136jfs.md (11_alu_op): Likewise.
              * config/arm/arm1026ejs.md (alu_op): Likewise.
      
      
      Co-Authored-By: Greta Yorsh <greta.yorsh@arm.com>
      
      From-SVN: r193996
      Ramana Radhakrishnan committed
  11. 20 Dec, 2010 1 commit
    • arm-cores.def: Add Faraday CPU support - fa526/fa626/fa606te/fa626te/fmp626/fa726te. · c02a5ccb
      2010-12-20  Sanjin Liu	<scliu@faraday-tech.com>
      	Mingfeng Wu  <mingfeng@faraday-tech.com>
      
      	* config/arm/arm-cores.def: Add Faraday CPU support -
      	fa526/fa626/fa606te/fa626te/fmp626/fa726te.
      	* config/arm/arm-tune.md: Regenerate.
      	* config/arm/arm.c (arm_fa726te_tune): New tune_params for fa726te
      	(fa726te_sched_adjust_cost): New cost function for fa726te.
      	(arm_issue_rate): Add fa726te.
      	* config/arm/arm.md (generic_sched): Add Faraday cores to generic_sched
      	and include machine description files.
      	* config/arm/bpabi.h (TARGET_FIX_V4BX_SPEC): Add fa526 and fa626.
      	* config/arm/t-arm (MD_INCLUDES): Include machine description files for
      	Faraday cores.
      	* config/arm/t-arm-elf: Add multilib option for Faraday cores.
      	* config/arm/t-linux-eabi: Add multilib option for Faraday cores except
      	fa526 and fa626.
      	* doc/invoke.texi: Document -mcpu for Faraday cores.
      	* config/arm/fa526.md: New file.
      	* config/arm/fa606te.md: New file.
      	* config/arm/fa626te.md: New file.
      	* config/arm/fmp626.md: New file.
      	* config/arm/fa726te.md: New file.
      
      Co-Authored-By: Mingfeng Wu <mingfeng@faraday-tech.com>
      
      From-SVN: r168090
      Sanjin Liu committed