2001-11-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+ * Makefile.in (dbxout.o): Depend on function.h.
+ * collect2.c (is_in_list): Hide unused function.
+ * dbxout.c: Include function.h.
+ (source_label_number, dbxout_source_line, dbxout_source_file,
+ dbxout_function_end, dbxout_begin_function): Wrap/move inside
+ macros controlling usage.
+ * gcc.c (TARGET_EXECUTABLE_SUFFIX): Undef before defining.
+ * output.h (exports_section): Prototype.
+
* convex.c (convex_output_function_prologue): Fix format specifier
warning.
(asm_declare_function_name): Fix signed/unsigned warning.
static int is_in_args PARAMS ((const char *, const char **, const char **));
#endif
#ifdef COLLECT_EXPORT_LIST
+#if 0
static int is_in_list PARAMS ((const char *, struct id *));
+#endif
static void write_aix_file PARAMS ((FILE *, struct id *));
static char *resolve_lib_name PARAMS ((const char *));
static int ignore_library PARAMS ((const char *));
#ifdef COLLECT_EXPORT_LIST
/* This function is really used only on AIX, but may be useful. */
+#if 0
static int
is_in_list (prefix, list)
const char *prefix;
return 0;
}
#endif
+#endif /* COLLECT_EXPORT_LIST */
/* Added for debugging purpose. */
#ifdef COLLECT_EXPORT_LIST
#include "tm_p.h"
#include "ggc.h"
#include "debug.h"
+#include "function.h"
#include "target.h"
#ifdef XCOFF_DEBUGGING_INFO
/* Number for the next N_SOL filename stabs label. The number 0 is reserved
for the N_SO filename stabs label. */
+#if defined (DBX_DEBUGGING_INFO) && !defined (DBX_OUTPUT_SOURCE_FILENAME)
static int source_label_number = 1;
+#endif
#ifdef DEBUG_SYMS_TEXT
#define FORCE_TEXT text_section ();
static void dbxout_finish PARAMS ((const char *));
static void dbxout_start_source_file PARAMS ((unsigned, const char *));
static void dbxout_end_source_file PARAMS ((unsigned));
-static void dbxout_source_line PARAMS ((unsigned int, const char *));
-static void dbxout_source_file PARAMS ((FILE *, const char *));
-static void dbxout_function_end PARAMS ((void));
static void dbxout_typedefs PARAMS ((tree));
static void dbxout_type_index PARAMS ((tree));
#if DBX_CONTIN_LENGTH > 0
static void dbxout_prepare_symbol PARAMS ((tree));
static void dbxout_finish_symbol PARAMS ((tree));
static void dbxout_block PARAMS ((tree, int, tree));
-static void dbxout_begin_function PARAMS ((tree));
static void dbxout_global_decl PARAMS ((tree));
\f
/* The debug hooks structure. */
#if defined (DBX_DEBUGGING_INFO)
+static void dbxout_source_line PARAMS ((unsigned int, const char *));
+static void dbxout_source_file PARAMS ((FILE *, const char *));
+static void dbxout_function_end PARAMS ((void));
+static void dbxout_begin_function PARAMS ((tree));
static void dbxout_begin_block PARAMS ((unsigned, unsigned));
static void dbxout_end_block PARAMS ((unsigned, unsigned));
static void dbxout_function_decl PARAMS ((tree));
};
#endif /* XCOFF_DEBUGGING_INFO */
\f
+#if defined (DBX_DEBUGGING_INFO)
static void
dbxout_function_end ()
{
assemble_name (asmfile, XSTR (XEXP (DECL_RTL (current_function_decl), 0), 0));
fprintf (asmfile, "\n");
}
+#endif /* DBX_DEBUGGING_INFO */
/* At the beginning of compilation, start writing the symbol table.
Initialize `typevec' and output the standard data types of C. */
#endif
}
+#if defined (DBX_DEBUGGING_INFO)
/* Output debugging info to FILE to switch to sourcefile FILENAME. */
static void
#endif
}
-#if defined (DBX_DEBUGGING_INFO)
-
/* Describe the beginning of an internal block within a function. */
static void
Usually this follows the function's code,
but on some systems, it comes before. */
+#if defined (DBX_DEBUGGING_INFO)
static void
dbxout_begin_function (decl)
tree decl;
if (DECL_NAME (DECL_RESULT (decl)) != 0)
dbxout_symbol (DECL_RESULT (decl), 1);
}
+#endif /* DBX_DEBUGGING_INFO */
#endif /* DBX_DEBUGGING_INFO || XCOFF_DEBUGGING_INFO */