GCC Middle and Back End API Reference
|
Functions | |
static void | switch_dump () |
static void | restore_dump () |
void | sel_print_rtl () |
void | dump_insn_rtx_1 () |
void | dump_insn_rtx () |
DEBUG_FUNCTION void | debug_insn_rtx () |
void | dump_vinsn_1 () |
void | dump_vinsn () |
DEBUG_FUNCTION void | debug () |
DEBUG_FUNCTION void | debug_verbose () |
DEBUG_FUNCTION void | debug_vinsn () |
void | dump_expr_1 () |
void | dump_expr () |
DEBUG_FUNCTION void | debug_expr () |
void | dump_insn_1 () |
void | dump_insn () |
DEBUG_FUNCTION void | debug_insn () |
void | dump_av_set () |
void | dump_lv_set () |
static void | dump_ilist () |
void | dump_blist () |
void | dump_flist () |
void | dump_insn_vector () |
static void | print_hard_reg_set () |
void | dump_hard_reg_set () |
const char * | sel_print_insn () |
static void | replace_str_in_buf () |
static void | sel_prepare_string_for_dot_label () |
void | sel_print () |
static void | sel_dump_cfg_insn () |
static void | sel_dump_cfg_edge () |
static bool | has_preds_in_current_region_p () |
static void | sel_dump_cfg_2 () |
static void | sel_dump_cfg_1 () |
void | setup_dump_cfg_params () |
void | sel_debug_cfg_1 () |
DEBUG_FUNCTION void | debug_av_set () |
DEBUG_FUNCTION void | debug_lv_set () |
DEBUG_FUNCTION void | debug_ilist () |
DEBUG_FUNCTION void | debug_blist () |
DEBUG_FUNCTION void | debug_insn_vector () |
DEBUG_FUNCTION void | debug_hard_reg_set () |
void | sel_debug_cfg () |
DEBUG_FUNCTION rtx | debug_mem_addr_value () |
Variables | |
static int | sel_dump_cfg_flags = SEL_DUMP_CFG_FLAGS |
static int | sel_debug_cfg_flags = SEL_DUMP_CFG_FLAGS |
static bool | sel_dump_cfg_p |
static const char *const | sel_debug_cfg_root = "./" |
static const char *const | sel_debug_cfg_root_postfix_default = "" |
static const char * | sel_debug_cfg_root_postfix = "" |
static int | sel_dump_cfg_fileno = -1 |
static int | sel_debug_cfg_fileno = -1 |
bool | sched_dump_to_dot_p = false |
static int | dump_flist_insn_flags |
static FILE * | saved_sched_dump = NULL |
static int | dump_insn_rtx_flags = DUMP_INSN_RTX_UID | DUMP_INSN_RTX_PATTERN |
static int | dump_vinsn_flags |
static int | dump_expr_flags = DUMP_EXPR_ALL |
static int | debug_insn_rtx_flags = DUMP_INSN_RTX_ALL |
static int | debug_vinsn_flags = DUMP_VINSN_ALL |
static int | debug_expr_flags = DUMP_EXPR_ALL |
static int | debug_insn_flags = DUMP_INSN_ALL |
DEBUG_FUNCTION void debug | ( | ) |
DEBUG_FUNCTION void debug_av_set | ( | ) |
Dumps av_set AV to stderr.
DEBUG_FUNCTION void debug_blist | ( | ) |
Dump a boundary list BNDS to stderr.
DEBUG_FUNCTION void debug_expr | ( | ) |
Dump expression EXPR to stderr.
References dump_expr_1(), DUMP_EXPR_ALL, restore_dump(), sel_print(), and switch_dump().
DEBUG_FUNCTION void debug_hard_reg_set | ( | ) |
Dump a hard reg set SET to stderr.
DEBUG_FUNCTION void debug_ilist | ( | ) |
Dump an instruction list P to stderr.
References cselib_lookup(), and get_address_mode().
DEBUG_FUNCTION void debug_insn | ( | ) |
Dump INSN to stderr.
DEBUG_FUNCTION void debug_insn_rtx | ( | ) |
Dump INSN to stderr.
DEBUG_FUNCTION void debug_insn_vector | ( | ) |
Dump an insn vector SUCCS.
DEBUG_FUNCTION void debug_lv_set | ( | ) |
Dump LV to stderr.
DEBUG_FUNCTION rtx debug_mem_addr_value | ( | ) |
Print a current cselib value for X's address to stderr.
DEBUG_FUNCTION void debug_verbose | ( | ) |
Dump expression REF verbosely.
DEBUG_FUNCTION void debug_vinsn | ( | ) |
Dump vinsn VI to stderr.
void dump_av_set | ( | ) |
Dumps av_set AV.
References count, sched_dump_to_dot_p, and sel_print().
Referenced by compute_av_set_at_bb_end().
void dump_blist | ( | ) |
Dumps a list of boundaries pointed to by BNDS.
void dump_expr | ( | ) |
Dump expression EXPR with default flags.
Referenced by sel_dfa_new_cycle().
void dump_expr_1 | ( | ) |
void dump_flist | ( | ) |
Dumps a list of fences pointed to by L.
References print_hard_reg_set(), and sched_dump.
void dump_hard_reg_set | ( | ) |
Dumps a hard reg set SET using PREFIX.
References strstr().
|
static |
Dumps a list of instructions pointed to by P.
void dump_insn | ( | ) |
Dump insn I with default flags.
Referenced by dump_lv_set().
void dump_insn_1 | ( | ) |
Dump insn I honoring FLAGS.
void dump_insn_rtx | ( | ) |
Dump INSN with default flags.
void dump_insn_rtx_1 | ( | ) |
Dump insn INSN honoring FLAGS.
flags == -1 also means dumping all.
void dump_insn_vector | ( | ) |
Dumps an insn vector SUCCS.
References s_i_d.
void dump_lv_set | ( | ) |
void dump_vinsn | ( | ) |
Dump vinsn VI with default flags.
References debug_vinsn_flags, dump_vinsn_1(), restore_dump(), sel_print(), and switch_dump().
void dump_vinsn_1 | ( | ) |
|
static |
Return true if BB has a predesessor from current region. TODO: Either make this function to trace back through empty block or just remove those empty blocks.
References bb_note(), cur_insn, fences, and flist_lookup().
|
static |
Dumps a hard reg set SET to FILE using PREFIX.
Referenced by dump_flist().
|
static |
Functions for pretty printing of CFG.
FIXME: Using pretty-print here could simplify this stuff.
Replace all occurencies of STR1 to STR2 in BUF. The BUF must be large enough to hold the result.
Copy the rest of buf and '\0'.
Shift str by DIFF chars.
Copy str2.
|
static |
Restore previously switched dump.
Referenced by debug_expr(), and dump_vinsn().
void sel_debug_cfg | ( | void | ) |
Debug a cfg region with default flags.
void sel_debug_cfg_1 | ( | ) |
Debug a cfg region with FLAGS.
|
static |
Dump a cfg region to the file specified by TAG honoring flags. The file is created by the function.
|
static |
Dump a cfg region to the dot file F honoring FLAGS.
For simplicity, we dump notes from note_list in reversed order to that what they will appear in the code.
|
static |
Dump E to the dot file F.
|
static |
Dump INSN with FLAGS.
References sched_dump_to_dot_p, and switch_dump().
|
static |
Replace characters in BUF that have special meaning in .dot file. Similar to pp_write_text_as_dot_label_to_stream.
void sel_print | ( | ) |
This function acts like printf but dumps to the sched_dump file.
Referenced by advance_one_cycle(), code_motion_path_driver_cleanup(), compute_av_set_at_bb_end(), debug_expr(), dump_av_set(), dump_vinsn(), equal_after_moveup_path_p(), maybe_emit_renaming_copy(), moveup_set_expr(), moving_insn_creates_bookkeeping_block_p(), need_nop_to_preserve_insn_bb(), remove_insn_from_stream(), remove_insns_that_need_bookkeeping(), sel_dfa_new_cycle(), sel_region_init(), and undo_transformations().
const char* sel_print_insn | ( | ) |
Pretty print INSN. This is used as a hook.
'+' before insn means it is a new cycle start and it's not been scheduled yet. '>' - has been scheduled.
void sel_print_rtl | ( | ) |
Print an rtx X.
void setup_dump_cfg_params | ( | void | ) |
Setup cfg dumping flags. Used for debugging.
|
static |
Switch sched_dump to TO. It must not be called twice.
References saved_sched_dump, and sched_dump.
Referenced by debug_expr(), dump_vinsn(), and sel_dump_cfg_insn().
|
static |
Default flags for dumping expressions when debugging.
|
static |
Controls how an insn from stream should be dumped when debugging.
|
static |
Default flags for dumping insns when debugging.
|
static |
Default flags for dumping vinsns when debugging.
Referenced by dump_vinsn().
|
static |
Default flags for dumping expressions.
|
static |
Controls how insns from a fence list should be dumped.
|
static |
Functions for dumping instructions, av sets, and exprs.
Default flags for dumping insns.
|
static |
Default flags for dumping vinsns.
|
static |
The variable used to hold the value of sched_dump when temporarily switching dump output to the other source, e.g. the .dot file.
Referenced by switch_dump().
bool sched_dump_to_dot_p = false |
When this flag is on, we are dumping to the .dot file. When it is off, we are dumping to log. This is useful to differentiate formatting between log and .dot files.
Referenced by dump_av_set(), and sel_dump_cfg_insn().
|
static |
|
static |
|
static |
Variables that are used to build the cfg dump file name.
|
static |
|
static |
|
static |
|
static |
@verbatim
Instruction scheduling pass. Log dumping infrastructure. Copyright (C) 2006-2013 Free Software Foundation, Inc.
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version.
GCC is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with GCC; see the file COPYING3. If not see http://www.gnu.org/licenses/.
These variables control high-level pretty printing.
|
static |
True when a cfg should be dumped.