diff options
author | Vineet Gupta <vineetg@rivosinc.com> | 2024-12-04 10:49:33 -0800 |
---|---|---|
committer | Vineet Gupta <vineetg@rivosinc.com> | 2024-12-04 11:00:37 -0800 |
commit | 5598aa81c937be031dc856a38c250b256953f988 (patch) | |
tree | ca161b231814661252bcd80227d08e2db4f88433 | |
parent | 7bef3482f27ce13ba7e6c4f43943f28a49e63a40 (diff) | |
download | gcc-5598aa81c937be031dc856a38c250b256953f988.zip gcc-5598aa81c937be031dc856a38c250b256953f988.tar.gz gcc-5598aa81c937be031dc856a38c250b256953f988.tar.bz2 |
sched1: debug/model: dump predecessor list and BB num [NFC]
This is broken out of predecessor promotion patch so that debugging can
proceed during stage1 restrictions.
gcc/ChangeLog:
* haifa-sched.cc (model_choose_insn): Dump unscheduled_preds.
(model_dump_pressure_summary): Dump bb->index.
(model_start_schedule): Pass bb.
* sched-rgn.cc (debug_dependencies): Dump SD_LIST_HARD_BACK deps.
Signed-off-by: Vineet Gupta <vineetg@rivosinc.com>
-rw-r--r-- | gcc/haifa-sched.cc | 10 | ||||
-rw-r--r-- | gcc/sched-rgn.cc | 14 |
2 files changed, 17 insertions, 7 deletions
diff --git a/gcc/haifa-sched.cc b/gcc/haifa-sched.cc index cd4b6ba..4d39775 100644 --- a/gcc/haifa-sched.cc +++ b/gcc/haifa-sched.cc @@ -3762,10 +3762,10 @@ model_choose_insn (void) count = param_max_sched_ready_insns; while (count > 0 && insn) { - fprintf (sched_dump, ";;\t+--- %d [%d, %d, %d, %d]\n", + fprintf (sched_dump, ";;\t+--- %d [%d, %d, %d, %d][%d]\n", INSN_UID (insn->insn), insn->model_priority, insn->depth + insn->alap, insn->depth, - INSN_PRIORITY (insn->insn)); + INSN_PRIORITY (insn->insn), insn->unscheduled_preds); count--; insn = insn->next; } @@ -3859,11 +3859,11 @@ model_reset_queue_indices (void) to sched_dump. */ static void -model_dump_pressure_summary (void) +model_dump_pressure_summary (basic_block bb) { int pci, cl; - fprintf (sched_dump, ";; Pressure summary:"); + fprintf (sched_dump, ";; Pressure summary (bb %d):", bb->index); for (pci = 0; pci < ira_pressure_classes_num; pci++) { cl = ira_pressure_classes[pci]; @@ -3902,7 +3902,7 @@ model_start_schedule (basic_block bb) model_curr_point = 0; initiate_reg_pressure_info (df_get_live_in (bb)); if (sched_verbose >= 1) - model_dump_pressure_summary (); + model_dump_pressure_summary (bb); } /* Free the information associated with GROUP. */ diff --git a/gcc/sched-rgn.cc b/gcc/sched-rgn.cc index 3d8cff7..bedccc9 100644 --- a/gcc/sched-rgn.cc +++ b/gcc/sched-rgn.cc @@ -2855,15 +2855,25 @@ void debug_dependencies (rtx_insn *head, rtx_insn *tail) else print_reservation (sched_dump, insn); - fprintf (sched_dump, "\t: "); + fprintf (sched_dump, "\t: FW:"); { sd_iterator_def sd_it; dep_t dep; FOR_EACH_DEP (insn, SD_LIST_FORW, sd_it, dep) - fprintf (sched_dump, "%d%s%s ", INSN_UID (DEP_CON (dep)), + fprintf (sched_dump, " %d%s%s%s", INSN_UID (DEP_CON (dep)), + DEP_TYPE (dep) == REG_DEP_TRUE ? "t" : "", DEP_NONREG (dep) ? "n" : "", DEP_MULTIPLE (dep) ? "m" : ""); + if (sched_verbose >= 5) + { + fprintf (sched_dump, "\n;;\t\t\t\t\t\t: BK:"); + FOR_EACH_DEP (insn, SD_LIST_HARD_BACK, sd_it, dep) + fprintf (sched_dump, " %d%s%s%s", INSN_UID (DEP_PRO (dep)), + DEP_TYPE (dep) == REG_DEP_TRUE ? "t" : "", + DEP_NONREG (dep) ? "n" : "", + DEP_MULTIPLE (dep) ? "m" : ""); + } } fprintf (sched_dump, "\n"); } |