From 7b40f5cf04d6edc82777c4eca0c5b62bae76ee7e Mon Sep 17 00:00:00 2001 From: James Greenhalgh Date: Wed, 12 Feb 2014 13:52:02 +0000 Subject: [PATCH] [ARM] [Churn] Comments on cost tables should have lower-case identifiers. * config/arm/aarch-cost-tables.h (generic_extra_costs): Fix identifiers in comments. (cortexa53_extra_costs): Likewise. * config/arm/arm.c (cortexa9_extra_costs): Fix identifiers in comments. (cortexa7_extra_costs): Likewise. (cortexa12_extra_costs): Likewise. (cortexa15_extra_costs): Likewise. (v7m_extra_costs): Likewise. From-SVN: r207721 --- gcc/ChangeLog | 12 + gcc/config/arm/aarch-cost-tables.h | 276 +++++++-------- gcc/config/arm/arm.c | 690 ++++++++++++++++++------------------- 3 files changed, 495 insertions(+), 483 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1f4ddb8..fc720dc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,15 @@ +2014-02-12 James Greenhalgh + + * config/arm/aarch-cost-tables.h (generic_extra_costs): Fix + identifiers in comments. + (cortexa53_extra_costs): Likewise. + * config/arm/arm.c (cortexa9_extra_costs): Fix identifiers in + comments. + (cortexa7_extra_costs): Likewise. + (cortexa12_extra_costs): Likewise. + (cortexa15_extra_costs): Likewise. + (v7m_extra_costs): Likewise. + 2014-02-12 Richard Biener PR middle-end/60092 diff --git a/gcc/config/arm/aarch-cost-tables.h b/gcc/config/arm/aarch-cost-tables.h index 690ef9b..c30ea2f 100644 --- a/gcc/config/arm/aarch-cost-tables.h +++ b/gcc/config/arm/aarch-cost-tables.h @@ -26,99 +26,99 @@ const struct cpu_cost_table generic_extra_costs = { /* ALU */ { - 0, /* Arith. */ - 0, /* Logical. */ - 0, /* Shift. */ - COSTS_N_INSNS (1), /* Shift_reg. */ - 0, /* Arith_shift. */ - COSTS_N_INSNS (1), /* Arith_shift_reg. */ - 0, /* Log_shift. */ - COSTS_N_INSNS (1), /* Log_shift_reg. */ - 0, /* Extend. */ - COSTS_N_INSNS (1), /* Extend_arith. */ - 0, /* Bfi. */ - 0, /* Bfx. */ - 0, /* Clz. */ + 0, /* arith. */ + 0, /* logical. */ + 0, /* shift. */ + COSTS_N_INSNS (1), /* shift_reg. */ + 0, /* arith_shift. */ + COSTS_N_INSNS (1), /* arith_shift_reg. */ + 0, /* log_shift. */ + COSTS_N_INSNS (1), /* log_shift_reg. */ + 0, /* extend. */ + COSTS_N_INSNS (1), /* extend_arith. */ + 0, /* bfi. */ + 0, /* bfx. */ + 0, /* clz. */ COSTS_N_INSNS (1), /* non_exec. */ false /* non_exec_costs_exec. */ }, { /* MULT SImode */ { - COSTS_N_INSNS (2), /* Simple. */ - COSTS_N_INSNS (1), /* Flag_setting. */ - COSTS_N_INSNS (2), /* Extend. */ - COSTS_N_INSNS (3), /* Add. */ - COSTS_N_INSNS (3), /* Extend_add. */ - COSTS_N_INSNS (8) /* Idiv. */ + COSTS_N_INSNS (2), /* simple. */ + COSTS_N_INSNS (1), /* flag_setting. */ + COSTS_N_INSNS (2), /* extend. */ + COSTS_N_INSNS (3), /* add. */ + COSTS_N_INSNS (3), /* extend_add. */ + COSTS_N_INSNS (8) /* idiv. */ }, /* MULT DImode */ { - 0, /* Simple (N/A). */ - 0, /* Flag_setting (N/A). */ - COSTS_N_INSNS (2), /* Extend. */ - 0, /* Add (N/A). */ - COSTS_N_INSNS (3), /* Extend_add. */ - 0 /* Idiv (N/A). */ + 0, /* simple (N/A). */ + 0, /* flag_setting (N/A). */ + COSTS_N_INSNS (2), /* extend. */ + 0, /* add (N/A). */ + COSTS_N_INSNS (3), /* extend_add. */ + 0 /* idiv (N/A). */ } }, /* LD/ST */ { - COSTS_N_INSNS (2), /* Load. */ - COSTS_N_INSNS (2), /* Load_sign_extend. */ - COSTS_N_INSNS (3), /* Ldrd. */ - COSTS_N_INSNS (2), /* Ldm_1st. */ - 1, /* Ldm_regs_per_insn_1st. */ - 1, /* Ldm_regs_per_insn_subsequent. */ - COSTS_N_INSNS (2), /* Loadf. */ - COSTS_N_INSNS (3), /* Loadd. */ - COSTS_N_INSNS (1), /* Load_unaligned. */ - COSTS_N_INSNS (2), /* Store. */ - COSTS_N_INSNS (3), /* Strd. */ - COSTS_N_INSNS (2), /* Stm_1st. */ - 1, /* Stm_regs_per_insn_1st. */ - 1, /* Stm_regs_per_insn_subsequent. */ - COSTS_N_INSNS (2), /* Storef. */ - COSTS_N_INSNS (3), /* Stored. */ - COSTS_N_INSNS (1) /* Store_unaligned. */ + COSTS_N_INSNS (2), /* load. */ + COSTS_N_INSNS (2), /* load_sign_extend. */ + COSTS_N_INSNS (3), /* ldrd. */ + COSTS_N_INSNS (2), /* ldm_1st. */ + 1, /* ldm_regs_per_insn_1st. */ + 1, /* ldm_regs_per_insn_subsequent. */ + COSTS_N_INSNS (2), /* loadf. */ + COSTS_N_INSNS (3), /* loadd. */ + COSTS_N_INSNS (1), /* load_unaligned. */ + COSTS_N_INSNS (2), /* store. */ + COSTS_N_INSNS (3), /* strd. */ + COSTS_N_INSNS (2), /* stm_1st. */ + 1, /* stm_regs_per_insn_1st. */ + 1, /* stm_regs_per_insn_subsequent. */ + COSTS_N_INSNS (2), /* storef. */ + COSTS_N_INSNS (3), /* stored. */ + COSTS_N_INSNS (1) /* store_unaligned. */ }, { /* FP SFmode */ { - COSTS_N_INSNS (7), /* Div. */ - COSTS_N_INSNS (2), /* Mult. */ - COSTS_N_INSNS (3), /* Mult_addsub. */ - COSTS_N_INSNS (3), /* Fma. */ - COSTS_N_INSNS (1), /* Addsub. */ - 0, /* Fpconst. */ - 0, /* Neg. */ - 0, /* Compare. */ - 0, /* Widen. */ - 0, /* Narrow. */ - 0, /* Toint. */ - 0, /* Fromint. */ - 0 /* Roundint. */ + COSTS_N_INSNS (7), /* div. */ + COSTS_N_INSNS (2), /* mult. */ + COSTS_N_INSNS (3), /* mult_addsub. */ + COSTS_N_INSNS (3), /* fma. */ + COSTS_N_INSNS (1), /* addsub. */ + 0, /* fpconst. */ + 0, /* neg. */ + 0, /* compare. */ + 0, /* widen. */ + 0, /* narrow. */ + 0, /* toint. */ + 0, /* fromint. */ + 0 /* roundint. */ }, /* FP DFmode */ { - COSTS_N_INSNS (15), /* Div. */ - COSTS_N_INSNS (5), /* Mult. */ - COSTS_N_INSNS (7), /* Mult_addsub. */ - COSTS_N_INSNS (7), /* Fma. */ - COSTS_N_INSNS (3), /* Addsub. */ - 0, /* Fpconst. */ - 0, /* Neg. */ - 0, /* Compare. */ - 0, /* Widen. */ - 0, /* Narrow. */ - 0, /* Toint. */ - 0, /* Fromint. */ - 0 /* Roundint. */ + COSTS_N_INSNS (15), /* div. */ + COSTS_N_INSNS (5), /* mult. */ + COSTS_N_INSNS (7), /* mult_addsub. */ + COSTS_N_INSNS (7), /* fma. */ + COSTS_N_INSNS (3), /* addsub. */ + 0, /* fpconst. */ + 0, /* neg. */ + 0, /* compare. */ + 0, /* widen. */ + 0, /* narrow. */ + 0, /* toint. */ + 0, /* fromint. */ + 0 /* roundint. */ } }, /* Vector */ { - COSTS_N_INSNS (1) /* Alu. */ + COSTS_N_INSNS (1) /* alu. */ } }; @@ -126,99 +126,99 @@ const struct cpu_cost_table cortexa53_extra_costs = { /* ALU */ { - 0, /* Arith. */ - 0, /* Logical. */ - COSTS_N_INSNS (1), /* Shift. */ - COSTS_N_INSNS (2), /* Shift_reg. */ - COSTS_N_INSNS (1), /* Arith_shift. */ - COSTS_N_INSNS (2), /* Arith_shift_reg. */ - COSTS_N_INSNS (1), /* Log_shift. */ - COSTS_N_INSNS (2), /* Log_shift_reg. */ - 0, /* Extend. */ - COSTS_N_INSNS (1), /* Extend_arith. */ - COSTS_N_INSNS (1), /* Bfi. */ - COSTS_N_INSNS (1), /* Bfx. */ - 0, /* Clz. */ + 0, /* arith. */ + 0, /* logical. */ + COSTS_N_INSNS (1), /* shift. */ + COSTS_N_INSNS (2), /* shift_reg. */ + COSTS_N_INSNS (1), /* arith_shift. */ + COSTS_N_INSNS (2), /* arith_shift_reg. */ + COSTS_N_INSNS (1), /* log_shift. */ + COSTS_N_INSNS (2), /* log_shift_reg. */ + 0, /* extend. */ + COSTS_N_INSNS (1), /* extend_arith. */ + COSTS_N_INSNS (1), /* bfi. */ + COSTS_N_INSNS (1), /* bfx. */ + 0, /* clz. */ 0, /* non_exec. */ true /* non_exec_costs_exec. */ }, { /* MULT SImode */ { - COSTS_N_INSNS (1), /* Simple. */ - COSTS_N_INSNS (2), /* Flag_setting. */ - COSTS_N_INSNS (1), /* Extend. */ - COSTS_N_INSNS (1), /* Add. */ - COSTS_N_INSNS (1), /* Extend_add. */ - COSTS_N_INSNS (7) /* Idiv. */ + COSTS_N_INSNS (1), /* simple. */ + COSTS_N_INSNS (2), /* flag_setting. */ + COSTS_N_INSNS (1), /* extend. */ + COSTS_N_INSNS (1), /* add. */ + COSTS_N_INSNS (1), /* extend_add. */ + COSTS_N_INSNS (7) /* idiv. */ }, /* MULT DImode */ { - COSTS_N_INSNS (2), /* Simple. */ - 0, /* Flag_setting (N/A). */ - COSTS_N_INSNS (2), /* Extend. */ - COSTS_N_INSNS (2), /* Add. */ - COSTS_N_INSNS (2), /* Extend_add. */ - COSTS_N_INSNS (15) /* Idiv. */ + COSTS_N_INSNS (2), /* simple. */ + 0, /* flag_setting (N/A). */ + COSTS_N_INSNS (2), /* extend. */ + COSTS_N_INSNS (2), /* add. */ + COSTS_N_INSNS (2), /* extend_add. */ + COSTS_N_INSNS (15) /* idiv. */ } }, /* LD/ST */ { - COSTS_N_INSNS (1), /* Load. */ - COSTS_N_INSNS (1), /* Load_sign_extend. */ - COSTS_N_INSNS (1), /* Ldrd. */ - COSTS_N_INSNS (1), /* Ldm_1st. */ - 1, /* Ldm_regs_per_insn_1st. */ - 2, /* Ldm_regs_per_insn_subsequent. */ - COSTS_N_INSNS (1), /* Loadf. */ - COSTS_N_INSNS (1), /* Loadd. */ - COSTS_N_INSNS (1), /* Load_unaligned. */ - 0, /* Store. */ - 0, /* Strd. */ - 0, /* Stm_1st. */ - 1, /* Stm_regs_per_insn_1st. */ - 2, /* Stm_regs_per_insn_subsequent. */ - 0, /* Storef. */ - 0, /* Stored. */ - COSTS_N_INSNS (1) /* Store_unaligned. */ + COSTS_N_INSNS (1), /* load. */ + COSTS_N_INSNS (1), /* load_sign_extend. */ + COSTS_N_INSNS (1), /* ldrd. */ + COSTS_N_INSNS (1), /* ldm_1st. */ + 1, /* ldm_regs_per_insn_1st. */ + 2, /* ldm_regs_per_insn_subsequent. */ + COSTS_N_INSNS (1), /* loadf. */ + COSTS_N_INSNS (1), /* loadd. */ + COSTS_N_INSNS (1), /* load_unaligned. */ + 0, /* store. */ + 0, /* strd. */ + 0, /* stm_1st. */ + 1, /* stm_regs_per_insn_1st. */ + 2, /* stm_regs_per_insn_subsequent. */ + 0, /* storef. */ + 0, /* stored. */ + COSTS_N_INSNS (1) /* store_unaligned. */ }, { /* FP SFmode */ { - COSTS_N_INSNS (15), /* Div. */ - COSTS_N_INSNS (3), /* Mult. */ - COSTS_N_INSNS (7), /* Mult_addsub. */ - COSTS_N_INSNS (7), /* Fma. */ - COSTS_N_INSNS (3), /* Addsub. */ - COSTS_N_INSNS (1), /* Fpconst. */ - COSTS_N_INSNS (2), /* Neg. */ - COSTS_N_INSNS (1), /* Compare. */ - COSTS_N_INSNS (3), /* Widen. */ - COSTS_N_INSNS (3), /* Narrow. */ - COSTS_N_INSNS (3), /* Toint. */ - COSTS_N_INSNS (3), /* Fromint. */ - COSTS_N_INSNS (3) /* Roundint. */ + COSTS_N_INSNS (15), /* div. */ + COSTS_N_INSNS (3), /* mult. */ + COSTS_N_INSNS (7), /* mult_addsub. */ + COSTS_N_INSNS (7), /* fma. */ + COSTS_N_INSNS (3), /* addsub. */ + COSTS_N_INSNS (1), /* fpconst. */ + COSTS_N_INSNS (2), /* neg. */ + COSTS_N_INSNS (1), /* compare. */ + COSTS_N_INSNS (3), /* widen. */ + COSTS_N_INSNS (3), /* narrow. */ + COSTS_N_INSNS (3), /* toint. */ + COSTS_N_INSNS (3), /* fromint. */ + COSTS_N_INSNS (3) /* roundint. */ }, /* FP DFmode */ { - COSTS_N_INSNS (30), /* Div. */ - COSTS_N_INSNS (3), /* Mult. */ - COSTS_N_INSNS (7), /* Mult_addsub. */ - COSTS_N_INSNS (7), /* Fma. */ - COSTS_N_INSNS (3), /* Addsub. */ - COSTS_N_INSNS (1), /* Fpconst. */ - COSTS_N_INSNS (2), /* Neg. */ - COSTS_N_INSNS (1), /* Compare. */ - COSTS_N_INSNS (3), /* Widen. */ - COSTS_N_INSNS (3), /* Narrow. */ - COSTS_N_INSNS (3), /* Toint. */ - COSTS_N_INSNS (3), /* Fromint. */ - COSTS_N_INSNS (3) /* Roundint. */ + COSTS_N_INSNS (30), /* div. */ + COSTS_N_INSNS (3), /* mult. */ + COSTS_N_INSNS (7), /* mult_addsub. */ + COSTS_N_INSNS (7), /* fma. */ + COSTS_N_INSNS (3), /* addsub. */ + COSTS_N_INSNS (1), /* fpconst. */ + COSTS_N_INSNS (2), /* neg. */ + COSTS_N_INSNS (1), /* compare. */ + COSTS_N_INSNS (3), /* widen. */ + COSTS_N_INSNS (3), /* narrow. */ + COSTS_N_INSNS (3), /* toint. */ + COSTS_N_INSNS (3), /* fromint. */ + COSTS_N_INSNS (3) /* roundint. */ } }, /* Vector */ { - COSTS_N_INSNS (1) /* Alu. */ + COSTS_N_INSNS (1) /* alu. */ } }; diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index b562986..b49f43e 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -970,99 +970,99 @@ const struct cpu_cost_table cortexa9_extra_costs = { /* ALU */ { - 0, /* Arith. */ - 0, /* Logical. */ - 0, /* Shift. */ - COSTS_N_INSNS (1), /* Shift_reg. */ - COSTS_N_INSNS (1), /* Arith_shift. */ - COSTS_N_INSNS (2), /* Arith_shift_reg. */ - 0, /* Log_shift. */ - COSTS_N_INSNS (1), /* Log_shift_reg. */ - COSTS_N_INSNS (1), /* Extend. */ - COSTS_N_INSNS (2), /* Extend_arith. */ - COSTS_N_INSNS (1), /* Bfi. */ - COSTS_N_INSNS (1), /* Bfx. */ - 0, /* Clz. */ + 0, /* arith. */ + 0, /* logical. */ + 0, /* shift. */ + COSTS_N_INSNS (1), /* shift_reg. */ + COSTS_N_INSNS (1), /* arith_shift. */ + COSTS_N_INSNS (2), /* arith_shift_reg. */ + 0, /* log_shift. */ + COSTS_N_INSNS (1), /* log_shift_reg. */ + COSTS_N_INSNS (1), /* extend. */ + COSTS_N_INSNS (2), /* extend_arith. */ + COSTS_N_INSNS (1), /* bfi. */ + COSTS_N_INSNS (1), /* bfx. */ + 0, /* clz. */ 0, /* non_exec. */ true /* non_exec_costs_exec. */ }, { /* MULT SImode */ { - COSTS_N_INSNS (3), /* Simple. */ - COSTS_N_INSNS (3), /* Flag_setting. */ - COSTS_N_INSNS (2), /* Extend. */ - COSTS_N_INSNS (3), /* Add. */ - COSTS_N_INSNS (2), /* Extend_add. */ - COSTS_N_INSNS (30) /* Idiv. No HW div on Cortex A9. */ + COSTS_N_INSNS (3), /* simple. */ + COSTS_N_INSNS (3), /* flag_setting. */ + COSTS_N_INSNS (2), /* extend. */ + COSTS_N_INSNS (3), /* add. */ + COSTS_N_INSNS (2), /* extend_add. */ + COSTS_N_INSNS (30) /* idiv. No HW div on Cortex A9. */ }, /* MULT DImode */ { - 0, /* Simple (N/A). */ - 0, /* Flag_setting (N/A). */ - COSTS_N_INSNS (4), /* Extend. */ - 0, /* Add (N/A). */ - COSTS_N_INSNS (4), /* Extend_add. */ - 0 /* Idiv (N/A). */ + 0, /* simple (N/A). */ + 0, /* flag_setting (N/A). */ + COSTS_N_INSNS (4), /* extend. */ + 0, /* add (N/A). */ + COSTS_N_INSNS (4), /* extend_add. */ + 0 /* idiv (N/A). */ } }, /* LD/ST */ { - COSTS_N_INSNS (2), /* Load. */ - COSTS_N_INSNS (2), /* Load_sign_extend. */ - COSTS_N_INSNS (2), /* Ldrd. */ - COSTS_N_INSNS (2), /* Ldm_1st. */ - 1, /* Ldm_regs_per_insn_1st. */ - 2, /* Ldm_regs_per_insn_subsequent. */ - COSTS_N_INSNS (5), /* Loadf. */ - COSTS_N_INSNS (5), /* Loadd. */ - COSTS_N_INSNS (1), /* Load_unaligned. */ - COSTS_N_INSNS (2), /* Store. */ - COSTS_N_INSNS (2), /* Strd. */ - COSTS_N_INSNS (2), /* Stm_1st. */ - 1, /* Stm_regs_per_insn_1st. */ - 2, /* Stm_regs_per_insn_subsequent. */ - COSTS_N_INSNS (1), /* Storef. */ - COSTS_N_INSNS (1), /* Stored. */ - COSTS_N_INSNS (1) /* Store_unaligned. */ + COSTS_N_INSNS (2), /* load. */ + COSTS_N_INSNS (2), /* load_sign_extend. */ + COSTS_N_INSNS (2), /* ldrd. */ + COSTS_N_INSNS (2), /* ldm_1st. */ + 1, /* ldm_regs_per_insn_1st. */ + 2, /* ldm_regs_per_insn_subsequent. */ + COSTS_N_INSNS (5), /* loadf. */ + COSTS_N_INSNS (5), /* loadd. */ + COSTS_N_INSNS (1), /* load_unaligned. */ + COSTS_N_INSNS (2), /* store. */ + COSTS_N_INSNS (2), /* strd. */ + COSTS_N_INSNS (2), /* stm_1st. */ + 1, /* stm_regs_per_insn_1st. */ + 2, /* stm_regs_per_insn_subsequent. */ + COSTS_N_INSNS (1), /* storef. */ + COSTS_N_INSNS (1), /* stored. */ + COSTS_N_INSNS (1) /* store_unaligned. */ }, { /* FP SFmode */ { - COSTS_N_INSNS (14), /* Div. */ - COSTS_N_INSNS (4), /* Mult. */ - COSTS_N_INSNS (7), /* Mult_addsub. */ - COSTS_N_INSNS (30), /* Fma. */ - COSTS_N_INSNS (3), /* Addsub. */ - COSTS_N_INSNS (1), /* Fpconst. */ - COSTS_N_INSNS (1), /* Neg. */ - COSTS_N_INSNS (3), /* Compare. */ - COSTS_N_INSNS (3), /* Widen. */ - COSTS_N_INSNS (3), /* Narrow. */ - COSTS_N_INSNS (3), /* Toint. */ - COSTS_N_INSNS (3), /* Fromint. */ - COSTS_N_INSNS (3) /* Roundint. */ + COSTS_N_INSNS (14), /* div. */ + COSTS_N_INSNS (4), /* mult. */ + COSTS_N_INSNS (7), /* mult_addsub. */ + COSTS_N_INSNS (30), /* fma. */ + COSTS_N_INSNS (3), /* addsub. */ + COSTS_N_INSNS (1), /* fpconst. */ + COSTS_N_INSNS (1), /* neg. */ + COSTS_N_INSNS (3), /* compare. */ + COSTS_N_INSNS (3), /* widen. */ + COSTS_N_INSNS (3), /* narrow. */ + COSTS_N_INSNS (3), /* toint. */ + COSTS_N_INSNS (3), /* fromint. */ + COSTS_N_INSNS (3) /* roundint. */ }, /* FP DFmode */ { - COSTS_N_INSNS (24), /* Div. */ - COSTS_N_INSNS (5), /* Mult. */ - COSTS_N_INSNS (8), /* Mult_addsub. */ - COSTS_N_INSNS (30), /* Fma. */ - COSTS_N_INSNS (3), /* Addsub. */ - COSTS_N_INSNS (1), /* Fpconst. */ - COSTS_N_INSNS (1), /* Neg. */ - COSTS_N_INSNS (3), /* Compare. */ - COSTS_N_INSNS (3), /* Widen. */ - COSTS_N_INSNS (3), /* Narrow. */ - COSTS_N_INSNS (3), /* Toint. */ - COSTS_N_INSNS (3), /* Fromint. */ - COSTS_N_INSNS (3) /* Roundint. */ + COSTS_N_INSNS (24), /* div. */ + COSTS_N_INSNS (5), /* mult. */ + COSTS_N_INSNS (8), /* mult_addsub. */ + COSTS_N_INSNS (30), /* fma. */ + COSTS_N_INSNS (3), /* addsub. */ + COSTS_N_INSNS (1), /* fpconst. */ + COSTS_N_INSNS (1), /* neg. */ + COSTS_N_INSNS (3), /* compare. */ + COSTS_N_INSNS (3), /* widen. */ + COSTS_N_INSNS (3), /* narrow. */ + COSTS_N_INSNS (3), /* toint. */ + COSTS_N_INSNS (3), /* fromint. */ + COSTS_N_INSNS (3) /* roundint. */ } }, /* Vector */ { - COSTS_N_INSNS (1) /* Alu. */ + COSTS_N_INSNS (1) /* alu. */ } }; @@ -1071,19 +1071,19 @@ const struct cpu_cost_table cortexa7_extra_costs = { /* ALU */ { - 0, /* Arith. */ - 0, /* Logical. */ - COSTS_N_INSNS (1), /* Shift. */ - COSTS_N_INSNS (1), /* Shift_reg. */ - COSTS_N_INSNS (1), /* Arith_shift. */ - COSTS_N_INSNS (1), /* Arith_shift_reg. */ - COSTS_N_INSNS (1), /* Log_shift. */ - COSTS_N_INSNS (1), /* Log_shift_reg. */ - COSTS_N_INSNS (1), /* Extend. */ - COSTS_N_INSNS (1), /* Extend_arith. */ - COSTS_N_INSNS (1), /* Bfi. */ - COSTS_N_INSNS (1), /* Bfx. */ - COSTS_N_INSNS (1), /* Clz. */ + 0, /* arith. */ + 0, /* logical. */ + COSTS_N_INSNS (1), /* shift. */ + COSTS_N_INSNS (1), /* shift_reg. */ + COSTS_N_INSNS (1), /* arith_shift. */ + COSTS_N_INSNS (1), /* arith_shift_reg. */ + COSTS_N_INSNS (1), /* log_shift. */ + COSTS_N_INSNS (1), /* log_shift_reg. */ + COSTS_N_INSNS (1), /* extend. */ + COSTS_N_INSNS (1), /* extend_arith. */ + COSTS_N_INSNS (1), /* bfi. */ + COSTS_N_INSNS (1), /* bfx. */ + COSTS_N_INSNS (1), /* clz. */ 0, /* non_exec. */ true /* non_exec_costs_exec. */ }, @@ -1091,80 +1091,80 @@ const struct cpu_cost_table cortexa7_extra_costs = { /* MULT SImode */ { - 0, /* Simple. */ - COSTS_N_INSNS (1), /* Flag_setting. */ - COSTS_N_INSNS (1), /* Extend. */ - COSTS_N_INSNS (1), /* Add. */ - COSTS_N_INSNS (1), /* Extend_add. */ - COSTS_N_INSNS (7) /* Idiv. */ + 0, /* simple. */ + COSTS_N_INSNS (1), /* flag_setting. */ + COSTS_N_INSNS (1), /* extend. */ + COSTS_N_INSNS (1), /* add. */ + COSTS_N_INSNS (1), /* extend_add. */ + COSTS_N_INSNS (7) /* idiv. */ }, /* MULT DImode */ { - 0, /* Simple (N/A). */ - 0, /* Flag_setting (N/A). */ - COSTS_N_INSNS (1), /* Extend. */ - 0, /* Add. */ - COSTS_N_INSNS (2), /* Extend_add. */ - 0 /* Idiv (N/A). */ + 0, /* simple (N/A). */ + 0, /* flag_setting (N/A). */ + COSTS_N_INSNS (1), /* extend. */ + 0, /* add. */ + COSTS_N_INSNS (2), /* extend_add. */ + 0 /* idiv (N/A). */ } }, /* LD/ST */ { - COSTS_N_INSNS (1), /* Load. */ - COSTS_N_INSNS (1), /* Load_sign_extend. */ - COSTS_N_INSNS (3), /* Ldrd. */ - COSTS_N_INSNS (1), /* Ldm_1st. */ - 1, /* Ldm_regs_per_insn_1st. */ - 2, /* Ldm_regs_per_insn_subsequent. */ - COSTS_N_INSNS (2), /* Loadf. */ - COSTS_N_INSNS (2), /* Loadd. */ - COSTS_N_INSNS (1), /* Load_unaligned. */ - COSTS_N_INSNS (1), /* Store. */ - COSTS_N_INSNS (3), /* Strd. */ - COSTS_N_INSNS (1), /* Stm_1st. */ - 1, /* Stm_regs_per_insn_1st. */ - 2, /* Stm_regs_per_insn_subsequent. */ - COSTS_N_INSNS (2), /* Storef. */ - COSTS_N_INSNS (2), /* Stored. */ - COSTS_N_INSNS (1) /* Store_unaligned. */ + COSTS_N_INSNS (1), /* load. */ + COSTS_N_INSNS (1), /* load_sign_extend. */ + COSTS_N_INSNS (3), /* ldrd. */ + COSTS_N_INSNS (1), /* ldm_1st. */ + 1, /* ldm_regs_per_insn_1st. */ + 2, /* ldm_regs_per_insn_subsequent. */ + COSTS_N_INSNS (2), /* loadf. */ + COSTS_N_INSNS (2), /* loadd. */ + COSTS_N_INSNS (1), /* load_unaligned. */ + COSTS_N_INSNS (1), /* store. */ + COSTS_N_INSNS (3), /* strd. */ + COSTS_N_INSNS (1), /* stm_1st. */ + 1, /* stm_regs_per_insn_1st. */ + 2, /* stm_regs_per_insn_subsequent. */ + COSTS_N_INSNS (2), /* storef. */ + COSTS_N_INSNS (2), /* stored. */ + COSTS_N_INSNS (1) /* store_unaligned. */ }, { /* FP SFmode */ { - COSTS_N_INSNS (15), /* Div. */ - COSTS_N_INSNS (3), /* Mult. */ - COSTS_N_INSNS (7), /* Mult_addsub. */ - COSTS_N_INSNS (7), /* Fma. */ - COSTS_N_INSNS (3), /* Addsub. */ - COSTS_N_INSNS (3), /* Fpconst. */ - COSTS_N_INSNS (3), /* Neg. */ - COSTS_N_INSNS (3), /* Compare. */ - COSTS_N_INSNS (3), /* Widen. */ - COSTS_N_INSNS (3), /* Narrow. */ - COSTS_N_INSNS (3), /* Toint. */ - COSTS_N_INSNS (3), /* Fromint. */ - COSTS_N_INSNS (3) /* Roundint. */ + COSTS_N_INSNS (15), /* div. */ + COSTS_N_INSNS (3), /* mult. */ + COSTS_N_INSNS (7), /* mult_addsub. */ + COSTS_N_INSNS (7), /* fma. */ + COSTS_N_INSNS (3), /* addsub. */ + COSTS_N_INSNS (3), /* fpconst. */ + COSTS_N_INSNS (3), /* neg. */ + COSTS_N_INSNS (3), /* compare. */ + COSTS_N_INSNS (3), /* widen. */ + COSTS_N_INSNS (3), /* narrow. */ + COSTS_N_INSNS (3), /* toint. */ + COSTS_N_INSNS (3), /* fromint. */ + COSTS_N_INSNS (3) /* roundint. */ }, /* FP DFmode */ { - COSTS_N_INSNS (30), /* Div. */ - COSTS_N_INSNS (6), /* Mult. */ - COSTS_N_INSNS (10), /* Mult_addsub. */ - COSTS_N_INSNS (7), /* Fma. */ - COSTS_N_INSNS (3), /* Addsub. */ - COSTS_N_INSNS (3), /* Fpconst. */ - COSTS_N_INSNS (3), /* Neg. */ - COSTS_N_INSNS (3), /* Compare. */ - COSTS_N_INSNS (3), /* Widen. */ - COSTS_N_INSNS (3), /* Narrow. */ - COSTS_N_INSNS (3), /* Toint. */ - COSTS_N_INSNS (3), /* Fromint. */ - COSTS_N_INSNS (3) /* Roundint. */ + COSTS_N_INSNS (30), /* div. */ + COSTS_N_INSNS (6), /* mult. */ + COSTS_N_INSNS (10), /* mult_addsub. */ + COSTS_N_INSNS (7), /* fma. */ + COSTS_N_INSNS (3), /* addsub. */ + COSTS_N_INSNS (3), /* fpconst. */ + COSTS_N_INSNS (3), /* neg. */ + COSTS_N_INSNS (3), /* compare. */ + COSTS_N_INSNS (3), /* widen. */ + COSTS_N_INSNS (3), /* narrow. */ + COSTS_N_INSNS (3), /* toint. */ + COSTS_N_INSNS (3), /* fromint. */ + COSTS_N_INSNS (3) /* roundint. */ } }, /* Vector */ { - COSTS_N_INSNS (1) /* Alu. */ + COSTS_N_INSNS (1) /* alu. */ } }; @@ -1172,99 +1172,99 @@ const struct cpu_cost_table cortexa12_extra_costs = { /* ALU */ { - 0, /* Arith. */ - 0, /* Logical. */ - 0, /* Shift. */ - COSTS_N_INSNS (1), /* Shift_reg. */ - COSTS_N_INSNS (1), /* Arith_shift. */ - COSTS_N_INSNS (1), /* Arith_shift_reg. */ - COSTS_N_INSNS (1), /* Log_shift. */ - COSTS_N_INSNS (1), /* Log_shift_reg. */ - 0, /* Extend. */ - COSTS_N_INSNS (1), /* Extend_arith. */ - 0, /* Bfi. */ - COSTS_N_INSNS (1), /* Bfx. */ - COSTS_N_INSNS (1), /* Clz. */ + 0, /* arith. */ + 0, /* logical. */ + 0, /* shift. */ + COSTS_N_INSNS (1), /* shift_reg. */ + COSTS_N_INSNS (1), /* arith_shift. */ + COSTS_N_INSNS (1), /* arith_shift_reg. */ + COSTS_N_INSNS (1), /* log_shift. */ + COSTS_N_INSNS (1), /* log_shift_reg. */ + 0, /* extend. */ + COSTS_N_INSNS (1), /* extend_arith. */ + 0, /* bfi. */ + COSTS_N_INSNS (1), /* bfx. */ + COSTS_N_INSNS (1), /* clz. */ 0, /* non_exec. */ true /* non_exec_costs_exec. */ }, /* MULT SImode */ { { - COSTS_N_INSNS (2), /* Simple. */ - COSTS_N_INSNS (3), /* Flag_setting. */ - COSTS_N_INSNS (2), /* Extend. */ - COSTS_N_INSNS (3), /* Add. */ - COSTS_N_INSNS (2), /* Extend_add. */ - COSTS_N_INSNS (18) /* Idiv. */ + COSTS_N_INSNS (2), /* simple. */ + COSTS_N_INSNS (3), /* flag_setting. */ + COSTS_N_INSNS (2), /* extend. */ + COSTS_N_INSNS (3), /* add. */ + COSTS_N_INSNS (2), /* extend_add. */ + COSTS_N_INSNS (18) /* idiv. */ }, /* MULT DImode */ { - 0, /* Simple (N/A). */ - 0, /* Flag_setting (N/A). */ - COSTS_N_INSNS (3), /* Extend. */ - 0, /* Add (N/A). */ - COSTS_N_INSNS (3), /* Extend_add. */ - 0 /* Idiv (N/A). */ + 0, /* simple (N/A). */ + 0, /* flag_setting (N/A). */ + COSTS_N_INSNS (3), /* extend. */ + 0, /* add (N/A). */ + COSTS_N_INSNS (3), /* extend_add. */ + 0 /* idiv (N/A). */ } }, /* LD/ST */ { - COSTS_N_INSNS (3), /* Load. */ - COSTS_N_INSNS (3), /* Load_sign_extend. */ - COSTS_N_INSNS (3), /* Ldrd. */ - COSTS_N_INSNS (3), /* Ldm_1st. */ - 1, /* Ldm_regs_per_insn_1st. */ - 2, /* Ldm_regs_per_insn_subsequent. */ - COSTS_N_INSNS (3), /* Loadf. */ - COSTS_N_INSNS (3), /* Loadd. */ - 0, /* Load_unaligned. */ - 0, /* Store. */ - 0, /* Strd. */ - 0, /* Stm_1st. */ - 1, /* Stm_regs_per_insn_1st. */ - 2, /* Stm_regs_per_insn_subsequent. */ - COSTS_N_INSNS (2), /* Storef. */ - COSTS_N_INSNS (2), /* Stored. */ - 0 /* Store_unaligned. */ + COSTS_N_INSNS (3), /* load. */ + COSTS_N_INSNS (3), /* load_sign_extend. */ + COSTS_N_INSNS (3), /* ldrd. */ + COSTS_N_INSNS (3), /* ldm_1st. */ + 1, /* ldm_regs_per_insn_1st. */ + 2, /* ldm_regs_per_insn_subsequent. */ + COSTS_N_INSNS (3), /* loadf. */ + COSTS_N_INSNS (3), /* loadd. */ + 0, /* load_unaligned. */ + 0, /* store. */ + 0, /* strd. */ + 0, /* stm_1st. */ + 1, /* stm_regs_per_insn_1st. */ + 2, /* stm_regs_per_insn_subsequent. */ + COSTS_N_INSNS (2), /* storef. */ + COSTS_N_INSNS (2), /* stored. */ + 0 /* store_unaligned. */ }, { /* FP SFmode */ { - COSTS_N_INSNS (17), /* Div. */ - COSTS_N_INSNS (4), /* Mult. */ - COSTS_N_INSNS (8), /* Mult_addsub. */ - COSTS_N_INSNS (8), /* Fma. */ - COSTS_N_INSNS (4), /* Addsub. */ - COSTS_N_INSNS (2), /* Fpconst. */ - COSTS_N_INSNS (2), /* Neg. */ - COSTS_N_INSNS (2), /* Compare. */ - COSTS_N_INSNS (4), /* Widen. */ - COSTS_N_INSNS (4), /* Narrow. */ - COSTS_N_INSNS (4), /* Toint. */ - COSTS_N_INSNS (4), /* Fromint. */ - COSTS_N_INSNS (4) /* Roundint. */ + COSTS_N_INSNS (17), /* div. */ + COSTS_N_INSNS (4), /* mult. */ + COSTS_N_INSNS (8), /* mult_addsub. */ + COSTS_N_INSNS (8), /* fma. */ + COSTS_N_INSNS (4), /* addsub. */ + COSTS_N_INSNS (2), /* fpconst. */ + COSTS_N_INSNS (2), /* neg. */ + COSTS_N_INSNS (2), /* compare. */ + COSTS_N_INSNS (4), /* widen. */ + COSTS_N_INSNS (4), /* narrow. */ + COSTS_N_INSNS (4), /* toint. */ + COSTS_N_INSNS (4), /* fromint. */ + COSTS_N_INSNS (4) /* roundint. */ }, /* FP DFmode */ { - COSTS_N_INSNS (31), /* Div. */ - COSTS_N_INSNS (4), /* Mult. */ - COSTS_N_INSNS (8), /* Mult_addsub. */ - COSTS_N_INSNS (8), /* Fma. */ - COSTS_N_INSNS (4), /* Addsub. */ - COSTS_N_INSNS (2), /* Fpconst. */ - COSTS_N_INSNS (2), /* Neg. */ - COSTS_N_INSNS (2), /* Compare. */ - COSTS_N_INSNS (4), /* Widen. */ - COSTS_N_INSNS (4), /* Narrow. */ - COSTS_N_INSNS (4), /* Toint. */ - COSTS_N_INSNS (4), /* Fromint. */ - COSTS_N_INSNS (4) /* Roundint. */ + COSTS_N_INSNS (31), /* div. */ + COSTS_N_INSNS (4), /* mult. */ + COSTS_N_INSNS (8), /* mult_addsub. */ + COSTS_N_INSNS (8), /* fma. */ + COSTS_N_INSNS (4), /* addsub. */ + COSTS_N_INSNS (2), /* fpconst. */ + COSTS_N_INSNS (2), /* neg. */ + COSTS_N_INSNS (2), /* compare. */ + COSTS_N_INSNS (4), /* widen. */ + COSTS_N_INSNS (4), /* narrow. */ + COSTS_N_INSNS (4), /* toint. */ + COSTS_N_INSNS (4), /* fromint. */ + COSTS_N_INSNS (4) /* roundint. */ } }, /* Vector */ { - COSTS_N_INSNS (1) /* Alu. */ + COSTS_N_INSNS (1) /* alu. */ } }; @@ -1272,99 +1272,99 @@ const struct cpu_cost_table cortexa15_extra_costs = { /* ALU */ { - 0, /* Arith. */ - 0, /* Logical. */ - 0, /* Shift. */ - 0, /* Shift_reg. */ - COSTS_N_INSNS (1), /* Arith_shift. */ - COSTS_N_INSNS (1), /* Arith_shift_reg. */ - COSTS_N_INSNS (1), /* Log_shift. */ - COSTS_N_INSNS (1), /* Log_shift_reg. */ - 0, /* Extend. */ - COSTS_N_INSNS (1), /* Extend_arith. */ - COSTS_N_INSNS (1), /* Bfi. */ - 0, /* Bfx. */ - 0, /* Clz. */ + 0, /* arith. */ + 0, /* logical. */ + 0, /* shift. */ + 0, /* shift_reg. */ + COSTS_N_INSNS (1), /* arith_shift. */ + COSTS_N_INSNS (1), /* arith_shift_reg. */ + COSTS_N_INSNS (1), /* log_shift. */ + COSTS_N_INSNS (1), /* log_shift_reg. */ + 0, /* extend. */ + COSTS_N_INSNS (1), /* extend_arith. */ + COSTS_N_INSNS (1), /* bfi. */ + 0, /* bfx. */ + 0, /* clz. */ 0, /* non_exec. */ true /* non_exec_costs_exec. */ }, /* MULT SImode */ { { - COSTS_N_INSNS (2), /* Simple. */ - COSTS_N_INSNS (3), /* Flag_setting. */ - COSTS_N_INSNS (2), /* Extend. */ - COSTS_N_INSNS (2), /* Add. */ - COSTS_N_INSNS (2), /* Extend_add. */ - COSTS_N_INSNS (18) /* Idiv. */ + COSTS_N_INSNS (2), /* simple. */ + COSTS_N_INSNS (3), /* flag_setting. */ + COSTS_N_INSNS (2), /* extend. */ + COSTS_N_INSNS (2), /* add. */ + COSTS_N_INSNS (2), /* extend_add. */ + COSTS_N_INSNS (18) /* idiv. */ }, /* MULT DImode */ { - 0, /* Simple (N/A). */ - 0, /* Flag_setting (N/A). */ - COSTS_N_INSNS (3), /* Extend. */ - 0, /* Add (N/A). */ - COSTS_N_INSNS (3), /* Extend_add. */ - 0 /* Idiv (N/A). */ + 0, /* simple (N/A). */ + 0, /* flag_setting (N/A). */ + COSTS_N_INSNS (3), /* extend. */ + 0, /* add (N/A). */ + COSTS_N_INSNS (3), /* extend_add. */ + 0 /* idiv (N/A). */ } }, /* LD/ST */ { - COSTS_N_INSNS (3), /* Load. */ - COSTS_N_INSNS (3), /* Load_sign_extend. */ - COSTS_N_INSNS (3), /* Ldrd. */ - COSTS_N_INSNS (4), /* Ldm_1st. */ - 1, /* Ldm_regs_per_insn_1st. */ - 2, /* Ldm_regs_per_insn_subsequent. */ - COSTS_N_INSNS (4), /* Loadf. */ - COSTS_N_INSNS (4), /* Loadd. */ - 0, /* Load_unaligned. */ - 0, /* Store. */ - 0, /* Strd. */ - COSTS_N_INSNS (1), /* Stm_1st. */ - 1, /* Stm_regs_per_insn_1st. */ - 2, /* Stm_regs_per_insn_subsequent. */ - 0, /* Storef. */ - 0, /* Stored. */ - 0 /* Store_unaligned. */ + COSTS_N_INSNS (3), /* load. */ + COSTS_N_INSNS (3), /* load_sign_extend. */ + COSTS_N_INSNS (3), /* ldrd. */ + COSTS_N_INSNS (4), /* ldm_1st. */ + 1, /* ldm_regs_per_insn_1st. */ + 2, /* ldm_regs_per_insn_subsequent. */ + COSTS_N_INSNS (4), /* loadf. */ + COSTS_N_INSNS (4), /* loadd. */ + 0, /* load_unaligned. */ + 0, /* store. */ + 0, /* strd. */ + COSTS_N_INSNS (1), /* stm_1st. */ + 1, /* stm_regs_per_insn_1st. */ + 2, /* stm_regs_per_insn_subsequent. */ + 0, /* storef. */ + 0, /* stored. */ + 0 /* store_unaligned. */ }, { /* FP SFmode */ { - COSTS_N_INSNS (17), /* Div. */ - COSTS_N_INSNS (4), /* Mult. */ - COSTS_N_INSNS (8), /* Mult_addsub. */ - COSTS_N_INSNS (8), /* Fma. */ - COSTS_N_INSNS (4), /* Addsub. */ - COSTS_N_INSNS (2), /* Fpconst. */ - COSTS_N_INSNS (2), /* Neg. */ - COSTS_N_INSNS (5), /* Compare. */ - COSTS_N_INSNS (4), /* Widen. */ - COSTS_N_INSNS (4), /* Narrow. */ - COSTS_N_INSNS (4), /* Toint. */ - COSTS_N_INSNS (4), /* Fromint. */ - COSTS_N_INSNS (4) /* Roundint. */ + COSTS_N_INSNS (17), /* div. */ + COSTS_N_INSNS (4), /* mult. */ + COSTS_N_INSNS (8), /* mult_addsub. */ + COSTS_N_INSNS (8), /* fma. */ + COSTS_N_INSNS (4), /* addsub. */ + COSTS_N_INSNS (2), /* fpconst. */ + COSTS_N_INSNS (2), /* neg. */ + COSTS_N_INSNS (5), /* compare. */ + COSTS_N_INSNS (4), /* widen. */ + COSTS_N_INSNS (4), /* narrow. */ + COSTS_N_INSNS (4), /* toint. */ + COSTS_N_INSNS (4), /* fromint. */ + COSTS_N_INSNS (4) /* roundint. */ }, /* FP DFmode */ { - COSTS_N_INSNS (31), /* Div. */ - COSTS_N_INSNS (4), /* Mult. */ - COSTS_N_INSNS (8), /* Mult_addsub. */ - COSTS_N_INSNS (8), /* Fma. */ - COSTS_N_INSNS (4), /* Addsub. */ - COSTS_N_INSNS (2), /* Fpconst. */ - COSTS_N_INSNS (2), /* Neg. */ - COSTS_N_INSNS (2), /* Compare. */ - COSTS_N_INSNS (4), /* Widen. */ - COSTS_N_INSNS (4), /* Narrow. */ - COSTS_N_INSNS (4), /* Toint. */ - COSTS_N_INSNS (4), /* Fromint. */ - COSTS_N_INSNS (4) /* Roundint. */ + COSTS_N_INSNS (31), /* div. */ + COSTS_N_INSNS (4), /* mult. */ + COSTS_N_INSNS (8), /* mult_addsub. */ + COSTS_N_INSNS (8), /* fma. */ + COSTS_N_INSNS (4), /* addsub. */ + COSTS_N_INSNS (2), /* fpconst. */ + COSTS_N_INSNS (2), /* neg. */ + COSTS_N_INSNS (2), /* compare. */ + COSTS_N_INSNS (4), /* widen. */ + COSTS_N_INSNS (4), /* narrow. */ + COSTS_N_INSNS (4), /* toint. */ + COSTS_N_INSNS (4), /* fromint. */ + COSTS_N_INSNS (4) /* roundint. */ } }, /* Vector */ { - COSTS_N_INSNS (1) /* Alu. */ + COSTS_N_INSNS (1) /* alu. */ } }; @@ -1372,99 +1372,99 @@ const struct cpu_cost_table v7m_extra_costs = { /* ALU */ { - 0, /* Arith. */ - 0, /* Logical. */ - 0, /* Shift. */ - 0, /* Shift_reg. */ - 0, /* Arith_shift. */ - COSTS_N_INSNS (1), /* Arith_shift_reg. */ - 0, /* Log_shift. */ - COSTS_N_INSNS (1), /* Log_shift_reg. */ - 0, /* Extend. */ - COSTS_N_INSNS (1), /* Extend_arith. */ - 0, /* Bfi. */ - 0, /* Bfx. */ - 0, /* Clz. */ + 0, /* arith. */ + 0, /* logical. */ + 0, /* shift. */ + 0, /* shift_reg. */ + 0, /* arith_shift. */ + COSTS_N_INSNS (1), /* arith_shift_reg. */ + 0, /* log_shift. */ + COSTS_N_INSNS (1), /* log_shift_reg. */ + 0, /* extend. */ + COSTS_N_INSNS (1), /* extend_arith. */ + 0, /* bfi. */ + 0, /* bfx. */ + 0, /* clz. */ COSTS_N_INSNS (1), /* non_exec. */ false /* non_exec_costs_exec. */ }, { /* MULT SImode */ { - COSTS_N_INSNS (1), /* Simple. */ - COSTS_N_INSNS (1), /* Flag_setting. */ - COSTS_N_INSNS (2), /* Extend. */ - COSTS_N_INSNS (1), /* Add. */ - COSTS_N_INSNS (3), /* Extend_add. */ - COSTS_N_INSNS (8) /* Idiv. */ + COSTS_N_INSNS (1), /* simple. */ + COSTS_N_INSNS (1), /* flag_setting. */ + COSTS_N_INSNS (2), /* extend. */ + COSTS_N_INSNS (1), /* add. */ + COSTS_N_INSNS (3), /* extend_add. */ + COSTS_N_INSNS (8) /* idiv. */ }, /* MULT DImode */ { - 0, /* Simple (N/A). */ - 0, /* Flag_setting (N/A). */ - COSTS_N_INSNS (2), /* Extend. */ - 0, /* Add (N/A). */ - COSTS_N_INSNS (3), /* Extend_add. */ - 0 /* Idiv (N/A). */ + 0, /* simple (N/A). */ + 0, /* flag_setting (N/A). */ + COSTS_N_INSNS (2), /* extend. */ + 0, /* add (N/A). */ + COSTS_N_INSNS (3), /* extend_add. */ + 0 /* idiv (N/A). */ } }, /* LD/ST */ { - COSTS_N_INSNS (2), /* Load. */ - 0, /* Load_sign_extend. */ - COSTS_N_INSNS (3), /* Ldrd. */ - COSTS_N_INSNS (2), /* Ldm_1st. */ - 1, /* Ldm_regs_per_insn_1st. */ - 1, /* Ldm_regs_per_insn_subsequent. */ - COSTS_N_INSNS (2), /* Loadf. */ - COSTS_N_INSNS (3), /* Loadd. */ - COSTS_N_INSNS (1), /* Load_unaligned. */ - COSTS_N_INSNS (2), /* Store. */ - COSTS_N_INSNS (3), /* Strd. */ - COSTS_N_INSNS (2), /* Stm_1st. */ - 1, /* Stm_regs_per_insn_1st. */ - 1, /* Stm_regs_per_insn_subsequent. */ - COSTS_N_INSNS (2), /* Storef. */ - COSTS_N_INSNS (3), /* Stored. */ - COSTS_N_INSNS (1) /* Store_unaligned. */ + COSTS_N_INSNS (2), /* load. */ + 0, /* load_sign_extend. */ + COSTS_N_INSNS (3), /* ldrd. */ + COSTS_N_INSNS (2), /* ldm_1st. */ + 1, /* ldm_regs_per_insn_1st. */ + 1, /* ldm_regs_per_insn_subsequent. */ + COSTS_N_INSNS (2), /* loadf. */ + COSTS_N_INSNS (3), /* loadd. */ + COSTS_N_INSNS (1), /* load_unaligned. */ + COSTS_N_INSNS (2), /* store. */ + COSTS_N_INSNS (3), /* strd. */ + COSTS_N_INSNS (2), /* stm_1st. */ + 1, /* stm_regs_per_insn_1st. */ + 1, /* stm_regs_per_insn_subsequent. */ + COSTS_N_INSNS (2), /* storef. */ + COSTS_N_INSNS (3), /* stored. */ + COSTS_N_INSNS (1) /* store_unaligned. */ }, { /* FP SFmode */ { - COSTS_N_INSNS (7), /* Div. */ - COSTS_N_INSNS (2), /* Mult. */ - COSTS_N_INSNS (5), /* Mult_addsub. */ - COSTS_N_INSNS (3), /* Fma. */ - COSTS_N_INSNS (1), /* Addsub. */ - 0, /* Fpconst. */ - 0, /* Neg. */ - 0, /* Compare. */ - 0, /* Widen. */ - 0, /* Narrow. */ - 0, /* Toint. */ - 0, /* Fromint. */ - 0 /* Roundint. */ + COSTS_N_INSNS (7), /* div. */ + COSTS_N_INSNS (2), /* mult. */ + COSTS_N_INSNS (5), /* mult_addsub. */ + COSTS_N_INSNS (3), /* fma. */ + COSTS_N_INSNS (1), /* addsub. */ + 0, /* fpconst. */ + 0, /* neg. */ + 0, /* compare. */ + 0, /* widen. */ + 0, /* narrow. */ + 0, /* toint. */ + 0, /* fromint. */ + 0 /* roundint. */ }, /* FP DFmode */ { - COSTS_N_INSNS (15), /* Div. */ - COSTS_N_INSNS (5), /* Mult. */ - COSTS_N_INSNS (7), /* Mult_addsub. */ - COSTS_N_INSNS (7), /* Fma. */ - COSTS_N_INSNS (3), /* Addsub. */ - 0, /* Fpconst. */ - 0, /* Neg. */ - 0, /* Compare. */ - 0, /* Widen. */ - 0, /* Narrow. */ - 0, /* Toint. */ - 0, /* Fromint. */ - 0 /* Roundint. */ + COSTS_N_INSNS (15), /* div. */ + COSTS_N_INSNS (5), /* mult. */ + COSTS_N_INSNS (7), /* mult_addsub. */ + COSTS_N_INSNS (7), /* fma. */ + COSTS_N_INSNS (3), /* addsub. */ + 0, /* fpconst. */ + 0, /* neg. */ + 0, /* compare. */ + 0, /* widen. */ + 0, /* narrow. */ + 0, /* toint. */ + 0, /* fromint. */ + 0 /* roundint. */ } }, /* Vector */ { - COSTS_N_INSNS (1) /* Alu. */ + COSTS_N_INSNS (1) /* alu. */ } }; -- 2.7.4