-void sdbout_init ();
-void sdbout_symbol ();
-void sdbout_types();
-
-static char *gen_fake_label PROTO((void));
-static int plain_type PROTO((tree));
-static int template_name_p PROTO((tree));
-static void sdbout_record_type_name PROTO((tree));
-static int plain_type_1 PROTO((tree, int));
-static void sdbout_block PROTO((tree));
-static void sdbout_syms PROTO((tree));
-static void sdbout_queue_anonymous_type PROTO((tree));
-static void sdbout_dequeue_anonymous_types PROTO((void));
-static void sdbout_type PROTO((tree));
-static void sdbout_field_types PROTO((tree));
-static void sdbout_one_type PROTO((tree));
-static void sdbout_parms PROTO((tree));
-static void sdbout_reg_parms PROTO((tree));
-\f
-/* Define the default sizes for various types. */
-
-#ifndef CHAR_TYPE_SIZE
-#define CHAR_TYPE_SIZE BITS_PER_UNIT
-#endif
-
-#ifndef SHORT_TYPE_SIZE
-#define SHORT_TYPE_SIZE (BITS_PER_UNIT * MIN ((UNITS_PER_WORD + 1) / 2, 2))
-#endif
-
-#ifndef INT_TYPE_SIZE
-#define INT_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef LONG_TYPE_SIZE
-#define LONG_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef LONG_LONG_TYPE_SIZE
-#define LONG_LONG_TYPE_SIZE (BITS_PER_WORD * 2)
-#endif
-
-#ifndef FLOAT_TYPE_SIZE
-#define FLOAT_TYPE_SIZE BITS_PER_WORD
+#include "sdbout.h"
+
+static void sdbout_init (const char *);
+static void sdbout_finish (const char *);
+static void sdbout_start_source_file (unsigned int, const char *);
+static void sdbout_end_source_file (unsigned int);
+static void sdbout_begin_block (unsigned int, unsigned int);
+static void sdbout_end_block (unsigned int, unsigned int);
+static void sdbout_source_line (unsigned int, const char *);
+static void sdbout_end_epilogue (unsigned int, const char *);
+static void sdbout_global_decl (tree);
+#ifndef MIPS_DEBUGGING_INFO
+static void sdbout_begin_prologue (unsigned int, const char *);