aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/mips/mips.h
diff options
context:
space:
mode:
authorMatthew Fortune <matthew.fortune@mips.com>2018-06-13 20:40:28 +0000
committerRobert Suchanek <rts@gcc.gnu.org>2018-06-13 20:40:28 +0000
commit30c0ee9ca68e62a066f2653da11c50f708666857 (patch)
treeeb64925dcae8e0e75f32d31b1b8b35f896611627 /gcc/config/mips/mips.h
parent1df5fce42a295ae8cb34c6a4aae30814679b0b59 (diff)
downloadgcc-30c0ee9ca68e62a066f2653da11c50f708666857.zip
gcc-30c0ee9ca68e62a066f2653da11c50f708666857.tar.gz
gcc-30c0ee9ca68e62a066f2653da11c50f708666857.tar.bz2
MIPS: Add support for P6600.
gcc/ChangeLog: 2018-06-13 Matthew Fortune <matthew.fortune@mips.com> Prachi Godbole <prachi.godbole@imgtec.com> * config/mips/mips-cpus.def: Define P6600. * config/mips/mips-tables.opt: Regenerate. * config/mips/mips.c (mips_ucbranch_type): New enum. (mips_rtx_cost_data): Add support for P6600. (mips_issue_rate): Likewise. (mips_multipass_dfa_lookahead): Likewise. (mips_avoid_hazard): Likewise. (mips_reorg_process_insns): Likewise. (mips_classify_branch_p6600): New function. * config/mips/mips.h (TUNE_P6600): New define. (MIPS_ISA_LEVEL_SPEC): Infer mips64r6 from p6600. (ENABLE_LD_ST_PAIRS): Enable load/store bonding for p6600. * config/mips/mips.md: Include p6600.md. (processor): Add p6600. * config/mips/p6600.md: New file. * doc/invoke.texi: Add p6600 to supported architectures. Co-Authored-By: Prachi Godbole <prachi.godbole@imgtec.com> From-SVN: r261570
Diffstat (limited to 'gcc/config/mips/mips.h')
-rw-r--r--gcc/config/mips/mips.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h
index 705434e..61c5ae2 100644
--- a/gcc/config/mips/mips.h
+++ b/gcc/config/mips/mips.h
@@ -317,6 +317,7 @@ struct mips_cpu_info {
|| mips_tune == PROCESSOR_SB1A)
#define TUNE_P5600 (mips_tune == PROCESSOR_P5600)
#define TUNE_I6400 (mips_tune == PROCESSOR_I6400)
+#define TUNE_P6600 (mips_tune == PROCESSOR_P6600)
/* Whether vector modes and intrinsics for ST Microelectronics
Loongson-2E/2F processors should be enabled. In o32 pairs of
@@ -782,7 +783,7 @@ struct mips_cpu_info {
%{march=mips64r2|march=loongson3a|march=octeon|march=xlp: -mips64r2} \
%{march=mips64r3: -mips64r3} \
%{march=mips64r5: -mips64r5} \
- %{march=mips64r6|march=i6400|march=i6500: -mips64r6}}"
+ %{march=mips64r6|march=i6400|march=i6500|march=p6600: -mips64r6}}"
/* A spec that injects the default multilib ISA if no architecture is
specified. */
@@ -3403,5 +3404,6 @@ struct GTY(()) machine_function {
performance can be degraded for those targets. Hence, do not bond for
micromips or fix_24k. */
#define ENABLE_LD_ST_PAIRS \
- (TARGET_LOAD_STORE_PAIRS && (TUNE_P5600 || TUNE_I6400) \
+ (TARGET_LOAD_STORE_PAIRS \
+ && (TUNE_P5600 || TUNE_I6400 || TUNE_P6600) \
&& !TARGET_MICROMIPS && !TARGET_FIX_24K)