* config/mips/mips.md (processor): Add xlp.
* config/mips/mips-cpus.def: Add xlp.
* config/mips/mips.c (mips_rtx_cost_data): Add costs for XLP, copy from
5KF for now.
* config/mips/mips.h (MIPS_ISA_LEVEL_SPEC): Handle xlp.
* doc/invoke.texi: Mention XLP.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@185712
138bc75d-0d04-0410-961f-
82ee72b054a4
+2012-03-22 Maxim Kuvyrkov <maxim@codesourcery.com>
+
+ * config/mips/mips-tables.opt: Update.
+ * config/mips/mips.md (processor): Add xlp.
+ * config/mips/mips-cpus.def: Add xlp.
+ * config/mips/mips.c (mips_rtx_cost_data): Add costs for XLP, copy from
+ 5KF for now.
+ * config/mips/mips.h (MIPS_ISA_LEVEL_SPEC): Handle xlp.
+ * doc/invoke.texi: Mention XLP.
+
2012-03-22 Jakub Jelinek <jakub@redhat.com>
PR middle-end/52547
MIPS_CPU ("octeon", PROCESSOR_OCTEON, 65, PTF_AVOID_BRANCHLIKELY)
MIPS_CPU ("octeon+", PROCESSOR_OCTEON, 65, PTF_AVOID_BRANCHLIKELY)
MIPS_CPU ("octeon2", PROCESSOR_OCTEON2, 65, PTF_AVOID_BRANCHLIKELY)
+MIPS_CPU ("xlp", PROCESSOR_XLP, 65, PTF_AVOID_BRANCHLIKELY)
EnumValue
Enum(mips_arch_opt_value) String(octeon2) Value(82) Canonical
+EnumValue
+Enum(mips_arch_opt_value) String(xlp) Value(83) Canonical
+
COSTS_N_INSNS (72), /* int_div_di */
1, /* branch_cost */
4 /* memory_latency */
+ },
+ { /* XLP */
+ /* These costs are the same as 5KF above. */
+ COSTS_N_INSNS (4), /* fp_add */
+ COSTS_N_INSNS (4), /* fp_mult_sf */
+ COSTS_N_INSNS (5), /* fp_mult_df */
+ COSTS_N_INSNS (17), /* fp_div_sf */
+ COSTS_N_INSNS (32), /* fp_div_df */
+ COSTS_N_INSNS (4), /* int_mult_si */
+ COSTS_N_INSNS (11), /* int_mult_di */
+ COSTS_N_INSNS (36), /* int_div_si */
+ COSTS_N_INSNS (68), /* int_div_di */
+ 1, /* branch_cost */
+ 4 /* memory_latency */
}
};
\f
|march=34k*|march=74k*|march=1004k*: -mips32r2} \
%{march=mips64|march=5k*|march=20k*|march=sb1*|march=sr71000 \
|march=xlr|march=loongson3a: -mips64} \
- %{march=mips64r2|march=octeon: -mips64r2} \
+ %{march=mips64r2|march=octeon|march=xlp: -mips64r2} \
%{!march=*: -" MULTILIB_ISA_DEFAULT "}}"
/* A spec that infers a -mhard-float or -msoft-float setting from an
sb1a
sr71000
xlr
+ xlp
])
(define_c_enum "unspec" [
@samp{sb1},
@samp{sr71000},
@samp{vr4100}, @samp{vr4111}, @samp{vr4120}, @samp{vr4130}, @samp{vr4300},
-@samp{vr5000}, @samp{vr5400}, @samp{vr5500}
-and @samp{xlr}.
+@samp{vr5000}, @samp{vr5400}, @samp{vr5500},
+@samp{xlr} and @samp{xlp}.
The special value @samp{from-abi} selects the
most compatible architecture for the selected ABI (that is,
@samp{mips1} for 32-bit ABIs and @samp{mips3} for 64-bit ABIs)@.