c6a13190a1
gcc/: * godump.c: New file. * common.opt (fdump-go-spec=): New option. * tree.h: Add comments for TYPE_SYMTAB_ADDRESS and friends. (TYPE_SYMTAB_IS_ADDRESS, TYPE_SYMTAB_IS_POINTER): Define. (TYPE_SYMTAB_IS_DIE): Define. (struct tree_type): Change GTY for symtab field to use TYPE_SYMTAB_IS_ADDRESS and friends and to use a debug_hooks field to pick the union field. * debug.h (struct gcc_debug_hooks): Add tree_type_symtab_field. (dump_go_spec_init): Declare. * toplev.c (process_options): Handle flag_dump_go_spec. * debug.c: Include "tree.h". (do_nothing_debug_hooks): Set tree_type_symtab_field. * dwarf2out.c (dwarf2_debug_hooks): Likewise. * dbxout.c (dbx_debug_hooks): Likewise. (xcoff_debug_hooks): Likewise. * vmsdbgout.c (vmsdbg_debug_hooks): Likewise. * sdbout.c (sdb_debug_hooks): Likewise. Do not define if SDB_DEBUGGING_INFO is not defined. * doc/invoke.texi (Option Summary): Mention -fdump-go-spec. (Overall Options): Document -fdump-go-spec. * Makefile.in (OBJS-common): Add godump.o. (debug.o): Add dependency on $(TREE_H). (godump.o): New target. (GTFILES): Add $(srcdir)/godump.c. gcc/c-family/: * c-lex.c (init_c_lex): Set macro debug callbacks if flag_dump_go_spec is set. From-SVN: r166770
149 lines
4.0 KiB
C
149 lines
4.0 KiB
C
/* Do-nothing debug hooks for GCC.
|
|
Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2010
|
|
Free Software Foundation, Inc.
|
|
|
|
This program 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.
|
|
|
|
This program 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 this program; see the file COPYING3. If not see
|
|
<http://www.gnu.org/licenses/>. */
|
|
|
|
#include "config.h"
|
|
#include "system.h"
|
|
#include "coretypes.h"
|
|
#include "tm.h"
|
|
#include "tree.h"
|
|
#include "debug.h"
|
|
|
|
/* The do-nothing debug hooks. */
|
|
const struct gcc_debug_hooks do_nothing_debug_hooks =
|
|
{
|
|
debug_nothing_charstar,
|
|
debug_nothing_charstar,
|
|
debug_nothing_void,
|
|
debug_nothing_int_charstar,
|
|
debug_nothing_int_charstar,
|
|
debug_nothing_int_charstar,
|
|
debug_nothing_int,
|
|
debug_nothing_int_int, /* begin_block */
|
|
debug_nothing_int_int, /* end_block */
|
|
debug_true_const_tree, /* ignore_block */
|
|
debug_nothing_int_charstar_int_bool, /* source_line */
|
|
debug_nothing_int_charstar, /* begin_prologue */
|
|
debug_nothing_int_charstar, /* end_prologue */
|
|
debug_nothing_int_charstar, /* begin_epilogue */
|
|
debug_nothing_int_charstar, /* end_epilogue */
|
|
debug_nothing_tree, /* begin_function */
|
|
debug_nothing_int, /* end_function */
|
|
debug_nothing_tree, /* function_decl */
|
|
debug_nothing_tree, /* global_decl */
|
|
debug_nothing_tree_int, /* type_decl */
|
|
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_int, /* handle_pch */
|
|
debug_nothing_rtx, /* var_location */
|
|
debug_nothing_void, /* switch_text_section */
|
|
debug_nothing_tree, /* direct_call */
|
|
debug_nothing_tree_int, /* virtual_call_token */
|
|
debug_nothing_rtx_rtx, /* copy_call_info */
|
|
debug_nothing_uid, /* virtual_call */
|
|
debug_nothing_tree_tree, /* set_name */
|
|
0, /* start_end_main_source_file */
|
|
TYPE_SYMTAB_IS_ADDRESS /* tree_type_symtab_field */
|
|
};
|
|
|
|
/* This file contains implementations of each debug hook that do
|
|
nothing. */
|
|
|
|
void
|
|
debug_nothing_void (void)
|
|
{
|
|
}
|
|
|
|
void
|
|
debug_nothing_tree (tree decl ATTRIBUTE_UNUSED)
|
|
{
|
|
}
|
|
|
|
void
|
|
debug_nothing_tree_tree (tree t1 ATTRIBUTE_UNUSED,
|
|
tree t2 ATTRIBUTE_UNUSED)
|
|
{
|
|
}
|
|
|
|
void
|
|
debug_nothing_tree_tree_tree_bool (tree t1 ATTRIBUTE_UNUSED,
|
|
tree t2 ATTRIBUTE_UNUSED,
|
|
tree t3 ATTRIBUTE_UNUSED,
|
|
bool b1 ATTRIBUTE_UNUSED)
|
|
{
|
|
}
|
|
|
|
bool
|
|
debug_true_const_tree (const_tree block ATTRIBUTE_UNUSED)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
void
|
|
debug_nothing_rtx (rtx insn ATTRIBUTE_UNUSED)
|
|
{
|
|
}
|
|
|
|
void
|
|
debug_nothing_rtx_rtx (rtx insn ATTRIBUTE_UNUSED,
|
|
rtx new_insn ATTRIBUTE_UNUSED)
|
|
{
|
|
}
|
|
|
|
void
|
|
debug_nothing_charstar (const char *main_filename ATTRIBUTE_UNUSED)
|
|
{
|
|
}
|
|
|
|
void
|
|
debug_nothing_int_charstar (unsigned int line ATTRIBUTE_UNUSED,
|
|
const char *text ATTRIBUTE_UNUSED)
|
|
{
|
|
}
|
|
|
|
void
|
|
debug_nothing_int_charstar_int_bool (unsigned int line ATTRIBUTE_UNUSED,
|
|
const char *text ATTRIBUTE_UNUSED,
|
|
int discriminator ATTRIBUTE_UNUSED,
|
|
bool is_stmt ATTRIBUTE_UNUSED)
|
|
{
|
|
}
|
|
|
|
void
|
|
debug_nothing_int (unsigned int line ATTRIBUTE_UNUSED)
|
|
{
|
|
}
|
|
|
|
void
|
|
debug_nothing_int_int (unsigned int line ATTRIBUTE_UNUSED,
|
|
unsigned int n ATTRIBUTE_UNUSED)
|
|
{
|
|
}
|
|
|
|
void
|
|
debug_nothing_tree_int (tree decl ATTRIBUTE_UNUSED,
|
|
int local ATTRIBUTE_UNUSED)
|
|
{
|
|
}
|
|
|
|
void
|
|
debug_nothing_uid (int uid ATTRIBUTE_UNUSED)
|
|
{
|
|
}
|