/* Output sdb-format symbol table information from GNU compiler.
Copyright (C) 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009
+ 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
This file is part of GCC.
#include "debug.h"
#include "tree.h"
#include "ggc.h"
-#include "varray.h"
+#include "vec.h"
static GTY(()) tree anonymous_types;
/* Declarations whose debug info was deferred till end of compilation. */
-static GTY(()) varray_type deferred_global_decls;
+static GTY(()) VEC(tree,gc) *deferred_global_decls;
/* The C front end may call sdbout_symbol before sdbout_init runs.
We save all such decls in this list and output them when we get
#include "insn-config.h"
#include "reload.h"
#include "output.h"
+#include "diagnostic-core.h"
#include "toplev.h"
#include "tm_p.h"
#include "gsyms.h"
{
sdbout_init, /* init */
sdbout_finish, /* finish */
+ debug_nothing_void, /* assembly_start */
debug_nothing_int_charstar, /* define */
debug_nothing_int_charstar, /* undef */
sdbout_start_source_file, /* start_source_file */
sdbout_begin_prologue, /* begin_prologue */
debug_nothing_int_charstar, /* end_prologue */
#endif
+ debug_nothing_int_charstar, /* begin_epilogue */
sdbout_end_epilogue, /* end_epilogue */
sdbout_begin_function, /* begin_function */
sdbout_end_function, /* end_function */
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 */
{
tree child_type = BINFO_TYPE (child);
tree child_type_name;
-
+
if (TYPE_NAME (child_type) == 0)
continue;
if (TREE_CODE (TYPE_NAME (child_type)) == IDENTIFIER_NODE)
if (!DECL_INITIAL (decl) || !TREE_PUBLIC (decl))
sdbout_symbol (decl, 0);
else
- VARRAY_PUSH_TREE (deferred_global_decls, decl);
+ VEC_safe_push (tree, gc, deferred_global_decls, decl);
/* Output COFF information for non-global file-scope initialized
variables. */
sdbout_finish (const char *main_filename ATTRIBUTE_UNUSED)
{
size_t i;
+ tree decl;
- for (i = 0; i < VARRAY_ACTIVE_SIZE (deferred_global_decls); i++)
- sdbout_symbol (VARRAY_TREE (deferred_global_decls, i), 0);
+ for (i = 0; VEC_iterate (tree, deferred_global_decls, i, decl); i++)
+ sdbout_symbol (decl, 0);
}
/* Describe the beginning of an internal block within a function.
current_file->name = input_file_name;
#endif
- VARRAY_TREE_INIT (deferred_global_decls, 12, "deferred_global_decls");
+ deferred_global_decls = VEC_alloc (tree, gc, 12);
/* Emit debug information which was queued by sdbout_symbol before
we got here. */
{
0, /* init */
0, /* finish */
+ 0, /* assembly_start */
0, /* define */
0, /* undef */
0, /* start_source_file */
0, /* source_line */
0, /* begin_prologue */
0, /* end_prologue */
+ 0, /* begin_epilogue */
0, /* end_epilogue */
0, /* begin_function */
0, /* end_function */
0, /* switch_text_section */
0, /* direct_call */
0, /* virtual_call_token */
+ 0, /* copy_call_info */
0, /* virtual_call */
0, /* set_name */
0 /* start_end_main_source_file */