From 08014e8ab9673f0625a27d1e9e374107b4dbd7c7 Mon Sep 17 00:00:00 2001 From: ktkachov Date: Thu, 14 Dec 2017 15:53:36 +0000 Subject: [PATCH] [arm] Add -mverbose-cost-dump and de-verbosify cost dumps This patch adds an -mverbose-cost-dump option, similar to the one in aarch64. It makes the RTX cost dump print the RTX we're costing in the backend, as well as its cost. This can be distracting in other cost-related RTL dumps like combine's. So now we don't dump the backend information by default, but provide the power-user option -mverbose-cost-dump to enable the old verbose dumping. This option is for GCC developers debugging the compiler only, so no documentation are added. It's also trivially simple in functionality so no test is added either. Bootstrapped and tested on arm-none-linux-gnueabihf. Committed to trunk. * config/arm/arm.opt (mverbose-cost-dump): New option. * config/arm/arm.c (arm_rtx_costs): Use it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@255644 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 5 +++++ gcc/config/arm/arm.c | 2 +- gcc/config/arm/arm.opt | 4 ++++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b7c76314d18..8753aa0e4ec 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2017-12-14 Kyrylo Tkachov + + * config/arm/arm.opt (mverbose-cost-dump): New option. + * config/arm/arm.c (arm_rtx_costs): Use it. + 2017-12-14 Andreas Schwab PR bootstrap/83396 diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index f34b6e0d933..9b29a0a154e 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -11068,7 +11068,7 @@ arm_rtx_costs (rtx x, machine_mode mode ATTRIBUTE_UNUSED, int outer_code, current_tune->insn_extra_cost, total, speed); - if (dump_file && (dump_flags & TDF_DETAILS)) + if (dump_file && arm_verbose_cost) { print_rtl_single (dump_file, x); fprintf (dump_file, "\n%s cost: %d (%s)\n", speed ? "Hot" : "Cold", diff --git a/gcc/config/arm/arm.opt b/gcc/config/arm/arm.opt index 6060516dd40..48f64588598 100644 --- a/gcc/config/arm/arm.opt +++ b/gcc/config/arm/arm.opt @@ -254,6 +254,10 @@ mvectorize-with-neon-double Target Report RejectNegative Mask(NEON_VECTORIZE_DOUBLE) Use Neon double-word (rather than quad-word) registers for vectorization. +mverbose-cost-dump +Common Undocumented Var(arm_verbose_cost) Init(0) +Enable more verbose RTX cost dumps during debug. For GCC developers use only. + mword-relocations Target Report Var(target_word_relocations) Init(TARGET_DEFAULT_WORD_RELOCATIONS) Only generate absolute relocations on word sized values. -- 2.11.4.GIT