Debug hooks: use rtx_insn and rtx_code_label
2014-08-21 David Malcolm <dmalcolm@redhat.com> * debug.h (struct gcc_debug_hooks): Strengthen param 1 of hook "label" from rtx to rtx_code_label *. Strengthen param 1 of "var_location" hook from rtx to rtx_insn *. (debug_nothing_rtx): Delete in favor of... (debug_nothing_rtx_code_label): New prototype. (debug_nothing_rtx_rtx): Delete unused prototype. (debug_nothing_rtx_insn): New prototype. * final.c (final_scan_insn): Add checked cast to rtx_insn * when invoking debug_hooks->var_location (in two places, one in a NOTE case of a switch statement, the other guarded by a CALL_P conditional. Add checked cast to rtx_code_label * when invoking debug_hooks->label (within CODE_LABEL case of switch statement). * dbxout.c (dbx_debug_hooks): Update "label" hook from debug_nothing_rtx to debug_nothing_rtx_code_label. Update "var_location" from debug_nothing_rtx to debug_nothing_rtx_insn. (xcoff_debug_hooks): Likewise. * debug.c (do_nothing_debug_hooks): Likewise. (debug_nothing_rtx): Delete in favor of... (debug_nothing_rtx_insn): New function. (debug_nothing_rtx_rtx): Delete unused function. (debug_nothing_rtx_code_label): New function. * dwarf2out.c (dwarf2_debug_hooks): Update "label" hook from debug_nothing_rtx to debug_nothing_rtx_code_label. (dwarf2out_var_location): Strengthen param "loc_note" from rtx to rtx_insn *. * sdbout.c (sdb_debug_hooks): Update "var_location" hook from debug_nothing_rtx to debug_nothing_rtx_insn. (sdbout_label): Strengthen param "insn" from rtx to rtx_code_label *. * vmsdbgout.c (vmsdbg_debug_hooks): Update "label" hook from debug_nothing_rtx to debug_nothing_rtx_code_label. Update "var_location" hook from debug_nothing_rtx to debug_nothing_rtx_insn. From-SVN: r214259
This commit is contained in:
parent
95770ca320
commit
f630fc6ab0
@ -1,3 +1,41 @@
|
||||
2014-08-21 David Malcolm <dmalcolm@redhat.com>
|
||||
|
||||
* debug.h (struct gcc_debug_hooks): Strengthen param 1 of hook
|
||||
"label" from rtx to rtx_code_label *. Strengthen param 1 of
|
||||
"var_location" hook from rtx to rtx_insn *.
|
||||
(debug_nothing_rtx): Delete in favor of...
|
||||
(debug_nothing_rtx_code_label): New prototype.
|
||||
(debug_nothing_rtx_rtx): Delete unused prototype.
|
||||
(debug_nothing_rtx_insn): New prototype.
|
||||
|
||||
* final.c (final_scan_insn): Add checked cast to rtx_insn * when
|
||||
invoking debug_hooks->var_location (in two places, one in a NOTE
|
||||
case of a switch statement, the other guarded by a CALL_P
|
||||
conditional. Add checked cast to rtx_code_label * when invoking
|
||||
debug_hooks->label (within CODE_LABEL case of switch statement).
|
||||
|
||||
* dbxout.c (dbx_debug_hooks): Update "label" hook from
|
||||
debug_nothing_rtx to debug_nothing_rtx_code_label. Update
|
||||
"var_location" from debug_nothing_rtx to debug_nothing_rtx_insn.
|
||||
(xcoff_debug_hooks): Likewise.
|
||||
* debug.c (do_nothing_debug_hooks): Likewise.
|
||||
(debug_nothing_rtx): Delete in favor of...
|
||||
(debug_nothing_rtx_insn): New function.
|
||||
(debug_nothing_rtx_rtx): Delete unused function.
|
||||
(debug_nothing_rtx_code_label): New function.
|
||||
* dwarf2out.c (dwarf2_debug_hooks): Update "label" hook from
|
||||
debug_nothing_rtx to debug_nothing_rtx_code_label.
|
||||
(dwarf2out_var_location): Strengthen param "loc_note" from rtx
|
||||
to rtx_insn *.
|
||||
* sdbout.c (sdb_debug_hooks): Update "var_location" hook from
|
||||
debug_nothing_rtx to debug_nothing_rtx_insn.
|
||||
(sdbout_label): Strengthen param "insn" from rtx to
|
||||
rtx_code_label *.
|
||||
* vmsdbgout.c (vmsdbg_debug_hooks): Update "label" hook from
|
||||
debug_nothing_rtx to debug_nothing_rtx_code_label. Update
|
||||
"var_location" hook from debug_nothing_rtx to
|
||||
debug_nothing_rtx_insn.
|
||||
|
||||
2014-08-21 David Malcolm <dmalcolm@redhat.com>
|
||||
|
||||
* recog.h (insn_output_fn): Update this function typedef to match
|
||||
|
@ -371,9 +371,9 @@ const struct gcc_debug_hooks dbx_debug_hooks =
|
||||
debug_nothing_tree_tree_tree_bool, /* imported_module_or_decl */
|
||||
debug_nothing_tree, /* deferred_inline_function */
|
||||
debug_nothing_tree, /* outlining_inline_function */
|
||||
debug_nothing_rtx, /* label */
|
||||
debug_nothing_rtx_code_label, /* label */
|
||||
dbxout_handle_pch, /* handle_pch */
|
||||
debug_nothing_rtx, /* var_location */
|
||||
debug_nothing_rtx_insn, /* var_location */
|
||||
debug_nothing_void, /* switch_text_section */
|
||||
debug_nothing_tree_tree, /* set_name */
|
||||
0, /* start_end_main_source_file */
|
||||
@ -407,9 +407,9 @@ const struct gcc_debug_hooks xcoff_debug_hooks =
|
||||
debug_nothing_tree_tree_tree_bool, /* imported_module_or_decl */
|
||||
debug_nothing_tree, /* deferred_inline_function */
|
||||
debug_nothing_tree, /* outlining_inline_function */
|
||||
debug_nothing_rtx, /* label */
|
||||
debug_nothing_rtx_code_label, /* label */
|
||||
dbxout_handle_pch, /* handle_pch */
|
||||
debug_nothing_rtx, /* var_location */
|
||||
debug_nothing_rtx_insn, /* var_location */
|
||||
debug_nothing_void, /* switch_text_section */
|
||||
debug_nothing_tree_tree, /* set_name */
|
||||
0, /* start_end_main_source_file */
|
||||
|
@ -48,9 +48,9 @@ const struct gcc_debug_hooks do_nothing_debug_hooks =
|
||||
debug_nothing_tree_tree_tree_bool, /* imported_module_or_decl */
|
||||
debug_nothing_tree, /* deferred_inline_function */
|
||||
debug_nothing_tree, /* outlining_inline_function */
|
||||
debug_nothing_rtx, /* label */
|
||||
debug_nothing_rtx_code_label, /* label */
|
||||
debug_nothing_int, /* handle_pch */
|
||||
debug_nothing_rtx, /* var_location */
|
||||
debug_nothing_rtx_insn, /* var_location */
|
||||
debug_nothing_void, /* switch_text_section */
|
||||
debug_nothing_tree_tree, /* set_name */
|
||||
0, /* start_end_main_source_file */
|
||||
@ -91,13 +91,12 @@ debug_true_const_tree (const_tree block ATTRIBUTE_UNUSED)
|
||||
}
|
||||
|
||||
void
|
||||
debug_nothing_rtx (rtx insn ATTRIBUTE_UNUSED)
|
||||
debug_nothing_rtx_insn (rtx_insn *insn ATTRIBUTE_UNUSED)
|
||||
{
|
||||
}
|
||||
|
||||
void
|
||||
debug_nothing_rtx_rtx (rtx insn ATTRIBUTE_UNUSED,
|
||||
rtx new_insn ATTRIBUTE_UNUSED)
|
||||
debug_nothing_rtx_code_label (rtx_code_label *label ATTRIBUTE_UNUSED)
|
||||
{
|
||||
}
|
||||
|
||||
|
@ -119,14 +119,14 @@ struct gcc_debug_hooks
|
||||
|
||||
/* Called from final_scan_insn for any CODE_LABEL insn whose
|
||||
LABEL_NAME is non-null. */
|
||||
void (* label) (rtx);
|
||||
void (* label) (rtx_code_label *);
|
||||
|
||||
/* Called after the start and before the end of writing a PCH file.
|
||||
The parameter is 0 if after the start, 1 if before the end. */
|
||||
void (* handle_pch) (unsigned int);
|
||||
|
||||
/* Called from final_scan_insn for any NOTE_INSN_VAR_LOCATION note. */
|
||||
void (* var_location) (rtx);
|
||||
void (* var_location) (rtx_insn *);
|
||||
|
||||
/* Called from final_scan_insn if there is a switch between hot and cold
|
||||
text sections. */
|
||||
@ -160,8 +160,8 @@ extern void debug_nothing_tree_tree (tree, tree);
|
||||
extern void debug_nothing_tree_int (tree, int);
|
||||
extern void debug_nothing_tree_tree_tree_bool (tree, tree, tree, bool);
|
||||
extern bool debug_true_const_tree (const_tree);
|
||||
extern void debug_nothing_rtx (rtx);
|
||||
extern void debug_nothing_rtx_rtx (rtx, rtx);
|
||||
extern void debug_nothing_rtx_insn (rtx_insn *);
|
||||
extern void debug_nothing_rtx_code_label (rtx_code_label *);
|
||||
|
||||
/* Hooks for various debug formats. */
|
||||
extern const struct gcc_debug_hooks do_nothing_debug_hooks;
|
||||
|
@ -2434,7 +2434,7 @@ static void dwarf2out_imported_module_or_decl (tree, tree, tree, bool);
|
||||
static void dwarf2out_imported_module_or_decl_1 (tree, tree, tree,
|
||||
dw_die_ref);
|
||||
static void dwarf2out_abstract_function (tree);
|
||||
static void dwarf2out_var_location (rtx);
|
||||
static void dwarf2out_var_location (rtx_insn *);
|
||||
static void dwarf2out_begin_function (tree);
|
||||
static void dwarf2out_end_function (unsigned int);
|
||||
static void dwarf2out_set_name (tree, tree);
|
||||
@ -2474,7 +2474,7 @@ const struct gcc_debug_hooks dwarf2_debug_hooks =
|
||||
emitting the abstract description of inline functions until
|
||||
something tries to reference them. */
|
||||
dwarf2out_abstract_function, /* outlining_inline_function */
|
||||
debug_nothing_rtx, /* label */
|
||||
debug_nothing_rtx_code_label, /* label */
|
||||
debug_nothing_int, /* handle_pch */
|
||||
dwarf2out_var_location,
|
||||
dwarf2out_switch_text_section,
|
||||
@ -21285,7 +21285,7 @@ static unsigned int first_loclabel_num_not_at_text_label;
|
||||
our lookup table. */
|
||||
|
||||
static void
|
||||
dwarf2out_var_location (rtx loc_note)
|
||||
dwarf2out_var_location (rtx_insn *loc_note)
|
||||
{
|
||||
char loclabel[MAX_ARTIFICIAL_LABEL_BYTES + 2];
|
||||
struct var_loc_node *newloc;
|
||||
|
@ -2343,7 +2343,7 @@ final_scan_insn (rtx insn, FILE *file, int optimize_p ATTRIBUTE_UNUSED,
|
||||
case NOTE_INSN_VAR_LOCATION:
|
||||
case NOTE_INSN_CALL_ARG_LOCATION:
|
||||
if (!DECL_IGNORED_P (current_function_decl))
|
||||
debug_hooks->var_location (insn);
|
||||
debug_hooks->var_location (as_a <rtx_insn *> (insn));
|
||||
break;
|
||||
|
||||
default:
|
||||
@ -2381,7 +2381,7 @@ final_scan_insn (rtx insn, FILE *file, int optimize_p ATTRIBUTE_UNUSED,
|
||||
CC_STATUS_INIT;
|
||||
|
||||
if (!DECL_IGNORED_P (current_function_decl) && LABEL_NAME (insn))
|
||||
debug_hooks->label (insn);
|
||||
debug_hooks->label (as_a <rtx_code_label *> (insn));
|
||||
|
||||
app_disable ();
|
||||
|
||||
@ -2984,7 +2984,7 @@ final_scan_insn (rtx insn, FILE *file, int optimize_p ATTRIBUTE_UNUSED,
|
||||
assemble_external (t);
|
||||
}
|
||||
if (!DECL_IGNORED_P (current_function_decl))
|
||||
debug_hooks->var_location (insn);
|
||||
debug_hooks->var_location (as_a <rtx_insn *> (insn));
|
||||
}
|
||||
|
||||
/* Output assembler code from the template. */
|
||||
|
@ -125,7 +125,7 @@ static void sdbout_end_prologue (unsigned int, const char *);
|
||||
static void sdbout_begin_function (tree);
|
||||
static void sdbout_end_function (unsigned int);
|
||||
static void sdbout_toplevel_data (tree);
|
||||
static void sdbout_label (rtx);
|
||||
static void sdbout_label (rtx_code_label *);
|
||||
static char *gen_fake_label (void);
|
||||
static int plain_type (tree);
|
||||
static int template_name_p (tree);
|
||||
@ -302,7 +302,7 @@ const struct gcc_debug_hooks sdb_debug_hooks =
|
||||
debug_nothing_tree, /* outlining_inline_function */
|
||||
sdbout_label, /* label */
|
||||
debug_nothing_int, /* handle_pch */
|
||||
debug_nothing_rtx, /* var_location */
|
||||
debug_nothing_rtx_insn, /* var_location */
|
||||
debug_nothing_void, /* switch_text_section */
|
||||
debug_nothing_tree_tree, /* set_name */
|
||||
0, /* start_end_main_source_file */
|
||||
@ -1597,7 +1597,7 @@ sdbout_end_epilogue (unsigned int line ATTRIBUTE_UNUSED,
|
||||
is present. */
|
||||
|
||||
static void
|
||||
sdbout_label (rtx insn)
|
||||
sdbout_label (rtx_code_label *insn)
|
||||
{
|
||||
PUT_SDB_DEF (LABEL_NAME (insn));
|
||||
PUT_SDB_VAL (insn);
|
||||
|
@ -193,9 +193,9 @@ const struct gcc_debug_hooks vmsdbg_debug_hooks
|
||||
debug_nothing_tree_tree_tree_bool, /* imported_module_or_decl */
|
||||
debug_nothing_tree, /* deferred_inline_function */
|
||||
vmsdbgout_abstract_function,
|
||||
debug_nothing_rtx, /* label */
|
||||
debug_nothing_rtx_code_label, /* label */
|
||||
debug_nothing_int, /* handle_pch */
|
||||
debug_nothing_rtx, /* var_location */
|
||||
debug_nothing_rtx_insn, /* var_location */
|
||||
debug_nothing_void, /* switch_text_section */
|
||||
debug_nothing_tree_tree, /* set_name */
|
||||
0, /* start_end_main_source_file */
|
||||
|
Loading…
Reference in New Issue
Block a user