+2017-01-09 Andrew Pinski <apinski@cavium.com>
+
+ * config/aarch64/aarch64-cores.def: Add thunderx2t99. Change vulcan
+ to reference thunderx2t99 for the tuning structure
+ * config/aarch64/aarch64-cost-tables.h (vulcan_extra_costs): Rename to ...
+ (thunderx2t99_extra_costs): This.
+ * config/aarch64/aarch64-tune.md: Regenerate.
+ * config/aarch64/aarch64.c (vulcan_addrcost_table): Rename to ...
+ (vulcan_addrcost_table): This.
+ (vulcan_regmove_cost): Rename to ...
+ (thunderx2t99_regmove_cost): This.
+ (vulcan_vector_cost): Rename to ...
+ (thunderx2t99_vector_cost): this.
+ (vulcan_branch_cost): Rename to ...
+ (thunderx2t99_branch_cost): This.
+ (vulcan_tunings): Rename to ...
+ (thunderx2t99_tunings): This and s/vulcan/thunderx2t99 .
+ * doc/invoke.texi (AARCH64/mtune): Add thunderx2t99.
+
2017-01-09 Martin Jambor <mjambor@suse.cz>
PR ipa/78365
/* V8.1 Architecture Processors. */
/* Broadcom ('B') cores. */
-AARCH64_CORE("vulcan", vulcan, cortexa57, 8_1A, AARCH64_FL_FOR_ARCH8_1 | AARCH64_FL_CRYPTO, vulcan, 0x42, 0x516, -1)
+AARCH64_CORE("thunderx2t99", thunderx2t99, cortexa57, 8_1A, AARCH64_FL_FOR_ARCH8_1 | AARCH64_FL_CRYPTO, thunderx2t99, 0x42, 0x516, -1)
+AARCH64_CORE("vulcan", vulcan, cortexa57, 8_1A, AARCH64_FL_FOR_ARCH8_1 | AARCH64_FL_CRYPTO, thunderx2t99, 0x42, 0x516, -1)
/* V8 big.LITTLE implementations. */
}
};
-const struct cpu_cost_table vulcan_extra_costs =
+const struct cpu_cost_table thunderx2t99_extra_costs =
{
/* ALU */
{
;; -*- buffer-read-only: t -*-
;; Generated automatically by gentune.sh from aarch64-cores.def
(define_attr "tune"
- "cortexa35,cortexa53,cortexa57,cortexa72,cortexa73,exynosm1,falkor,qdf24xx,thunderx,thunderxt88p1,thunderxt88,thunderxt81,thunderxt83,xgene1,vulcan,cortexa57cortexa53,cortexa72cortexa53,cortexa73cortexa35,cortexa73cortexa53"
+ "cortexa35,cortexa53,cortexa57,cortexa72,cortexa73,exynosm1,falkor,qdf24xx,thunderx,thunderxt88p1,thunderxt88,thunderxt81,thunderxt83,xgene1,thunderx2t99,vulcan,cortexa57cortexa53,cortexa72cortexa53,cortexa73cortexa35,cortexa73cortexa53"
(const (symbol_ref "((enum attr_tune) aarch64_tune)")))
0 /* imm_offset */
};
-static const struct cpu_addrcost_table vulcan_addrcost_table =
+static const struct cpu_addrcost_table thunderx2t99_addrcost_table =
{
{
0, /* hi */
4 /* FP2FP */
};
-static const struct cpu_regmove_cost vulcan_regmove_cost =
+static const struct cpu_regmove_cost thunderx2t99_regmove_cost =
{
1, /* GP2GP */
/* Avoid the use of int<->fp moves for spilling. */
};
/* Costs for vector insn classes for Vulcan. */
-static const struct cpu_vector_cost vulcan_vector_cost =
+static const struct cpu_vector_cost thunderx2t99_vector_cost =
{
6, /* scalar_stmt_cost */
4, /* scalar_load_cost */
};
/* Branch costs for Vulcan. */
-static const struct cpu_branch_cost vulcan_branch_cost =
+static const struct cpu_branch_cost thunderx2t99_branch_cost =
{
1, /* Predictable. */
3 /* Unpredictable. */
(AARCH64_EXTRA_TUNE_NONE) /* tune_flags. */
};
-static const struct tune_params vulcan_tunings =
+static const struct tune_params thunderx2t99_tunings =
{
- &vulcan_extra_costs,
- &vulcan_addrcost_table,
- &vulcan_regmove_cost,
- &vulcan_vector_cost,
- &vulcan_branch_cost,
+ &thunderx2t99_extra_costs,
+ &thunderx2t99_addrcost_table,
+ &thunderx2t99_regmove_cost,
+ &thunderx2t99_vector_cost,
+ &thunderx2t99_branch_cost,
&generic_approx_modes,
4, /* memmov_cost. */
4, /* issue_rate. */
@samp{cortex-a72}, @samp{cortex-a73}, @samp{exynos-m1}, @samp{falkor},
@samp{qdf24xx}, @samp{xgene1}, @samp{vulcan}, @samp{thunderx},
@samp{thunderxt88}, @samp{thunderxt88p1}, @samp{thunderxt81},
-@samp{thunderxt83}, @samp{cortex-a57.cortex-a53}, @samp{cortex-a72.cortex-a53},
-@samp{cortex-a73.cortex-a35}, @samp{cortex-a73.cortex-a53}, @samp{native}.
+@samp{thunderxt83}, @samp{thunderx2t99}, @samp{cortex-a57.cortex-a53},
+@samp{cortex-a72.cortex-a53}, @samp{cortex-a73.cortex-a35},
+@samp{cortex-a73.cortex-a53}, @samp{native}.
The values @samp{cortex-a57.cortex-a53}, @samp{cortex-a72.cortex-a53},
@samp{cortex-a73.cortex-a35}, @samp{cortex-a73.cortex-a53}