1/* Do-nothing debug hooks for GCC.
2   Copyright (C) 2001-2020 Free Software Foundation, Inc.
3
4   This program is free software; you can redistribute it and/or modify it
5   under the terms of the GNU General Public License as published by the
6   Free Software Foundation; either version 3, or (at your option) any
7   later version.
8
9   This program is distributed in the hope that it will be useful,
10   but WITHOUT ANY WARRANTY; without even the implied warranty of
11   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12   GNU General Public License for more details.
13
14   You should have received a copy of the GNU General Public License
15   along with this program; see the file COPYING3.  If not see
16   <http://www.gnu.org/licenses/>.  */
17
18#include "config.h"
19#include "system.h"
20#include "coretypes.h"
21#include "tree.h"
22#include "debug.h"
23
24/* The do-nothing debug hooks.  */
25const struct gcc_debug_hooks do_nothing_debug_hooks =
26{
27  debug_nothing_charstar,
28  debug_nothing_charstar,
29  debug_nothing_charstar,			/* early_finish */
30  debug_nothing_void,
31  debug_nothing_int_charstar,
32  debug_nothing_int_charstar,
33  debug_nothing_int_charstar,
34  debug_nothing_int,
35  debug_nothing_int_int,	         /* begin_block */
36  debug_nothing_int_int,	         /* end_block */
37  debug_true_const_tree,	         /* ignore_block */
38  debug_nothing_int_int_charstar_int_bool, /* source_line */
39  debug_nothing_int_int_charstar,	 /* begin_prologue */
40  debug_nothing_int_charstar,	         /* end_prologue */
41  debug_nothing_int_charstar,	         /* begin_epilogue */
42  debug_nothing_int_charstar,	         /* end_epilogue */
43  debug_nothing_tree,		         /* begin_function */
44  debug_nothing_int,		         /* end_function */
45  debug_nothing_tree,		         /* register_main_translation_unit */
46  debug_nothing_tree,		         /* function_decl */
47  debug_nothing_tree,	         	 /* early_global_decl */
48  debug_nothing_tree,	         	 /* late_global_decl */
49  debug_nothing_tree_int,		 /* type_decl */
50  debug_nothing_tree_tree_tree_bool_bool,/* imported_module_or_decl */
51  debug_false_tree_charstarstar_uhwistar,/* die_ref_for_decl */
52  debug_nothing_tree_charstar_uhwi,      /* register_external_die */
53  debug_nothing_tree,		         /* deferred_inline_function */
54  debug_nothing_tree,		         /* outlining_inline_function */
55  debug_nothing_rtx_code_label,	         /* label */
56  debug_nothing_int,		         /* handle_pch */
57  debug_nothing_rtx_insn,	         /* var_location */
58  debug_nothing_tree,	         	 /* inline_entry */
59  debug_nothing_tree,			 /* size_function */
60  debug_nothing_void,                    /* switch_text_section */
61  debug_nothing_tree_tree,		 /* set_name */
62  0,                                     /* start_end_main_source_file */
63  TYPE_SYMTAB_IS_ADDRESS                 /* tree_type_symtab_field */
64};
65
66/* This file contains implementations of each debug hook that do
67   nothing.  */
68
69void
70debug_nothing_void (void)
71{
72}
73
74void
75debug_nothing_tree (tree decl ATTRIBUTE_UNUSED)
76{
77}
78
79void
80debug_nothing_tree_tree (tree t1 ATTRIBUTE_UNUSED,
81			 tree t2 ATTRIBUTE_UNUSED)
82{
83}
84
85void
86debug_nothing_tree_tree_tree_bool_bool (tree t1 ATTRIBUTE_UNUSED,
87					tree t2 ATTRIBUTE_UNUSED,
88					tree t3 ATTRIBUTE_UNUSED,
89					bool b1 ATTRIBUTE_UNUSED,
90					bool b2 ATTRIBUTE_UNUSED)
91{
92}
93
94bool
95debug_true_const_tree (const_tree block ATTRIBUTE_UNUSED)
96{
97  return true;
98}
99
100void
101debug_nothing_rtx_insn (rtx_insn *insn ATTRIBUTE_UNUSED)
102{
103}
104
105void
106debug_nothing_rtx_code_label (rtx_code_label *label ATTRIBUTE_UNUSED)
107{
108}
109
110void
111debug_nothing_charstar (const char *main_filename ATTRIBUTE_UNUSED)
112{
113}
114
115void
116debug_nothing_int_charstar (unsigned int line ATTRIBUTE_UNUSED,
117			    const char *text ATTRIBUTE_UNUSED)
118{
119}
120
121void
122debug_nothing_int_int_charstar (unsigned int line ATTRIBUTE_UNUSED,
123				unsigned int column ATTRIBUTE_UNUSED,
124				const char *text ATTRIBUTE_UNUSED)
125{
126}
127
128void
129debug_nothing_int_int_charstar_int_bool (unsigned int line ATTRIBUTE_UNUSED,
130					 unsigned int column ATTRIBUTE_UNUSED,
131					 const char *text ATTRIBUTE_UNUSED,
132					 int discriminator ATTRIBUTE_UNUSED,
133					 bool is_stmt ATTRIBUTE_UNUSED)
134{
135}
136
137void
138debug_nothing_int (unsigned int line ATTRIBUTE_UNUSED)
139{
140}
141
142void
143debug_nothing_int_int (unsigned int line ATTRIBUTE_UNUSED,
144		       unsigned int n ATTRIBUTE_UNUSED)
145{
146}
147
148void
149debug_nothing_tree_int (tree decl ATTRIBUTE_UNUSED,
150			int local ATTRIBUTE_UNUSED)
151{
152}
153
154bool
155debug_false_tree_charstarstar_uhwistar (tree, const char **,
156					unsigned HOST_WIDE_INT *)
157{
158  return false;
159}
160
161void
162debug_nothing_tree_charstar_uhwi (tree, const char *,
163				  unsigned HOST_WIDE_INT)
164{
165}
166