summaryrefslogtreecommitdiff
path: root/contrib/gcc/config/mips/sni-gas.h
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/gcc/config/mips/sni-gas.h')
-rw-r--r--contrib/gcc/config/mips/sni-gas.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/contrib/gcc/config/mips/sni-gas.h b/contrib/gcc/config/mips/sni-gas.h
new file mode 100644
index 0000000000000..5b3699820f378
--- /dev/null
+++ b/contrib/gcc/config/mips/sni-gas.h
@@ -0,0 +1,38 @@
+/* Enable debugging. */
+#define DBX_DEBUGGING_INFO
+#define SDB_DEBUGGING_INFO
+#define MIPS_DEBUGGING_INFO
+
+#define DWARF_DEBUGGING_INFO
+#undef PREFERRED_DEBUGGING_TYPE
+#define PREFERRED_DEBUGGING_TYPE DWARF_DEBUG
+
+/* We need to use .esize and .etype instead of .size and .type to
+ avoid conflicting with ELF directives. These are only recognized
+ by gas, anyhow, not the native assembler. */
+#undef PUT_SDB_SIZE
+#define PUT_SDB_SIZE(a) \
+do { \
+ extern FILE *asm_out_text_file; \
+ fprintf (asm_out_text_file, "\t.esize\t%d;", (a)); \
+} while (0)
+
+#undef PUT_SDB_TYPE
+#define PUT_SDB_TYPE(a) \
+do { \
+ extern FILE *asm_out_text_file; \
+ fprintf (asm_out_text_file, "\t.etype\t0x%x;", (a)); \
+} while (0)
+
+
+/* This is how to equate one symbol to another symbol. The syntax used is
+ `SYM1=SYM2'. Note that this is different from the way equates are done
+ with most svr4 assemblers, where the syntax is `.set SYM1,SYM2'. */
+
+#define ASM_OUTPUT_DEF(FILE,LABEL1,LABEL2) \
+ do { fprintf ((FILE), "\t"); \
+ assemble_name (FILE, LABEL1); \
+ fprintf (FILE, " = "); \
+ assemble_name (FILE, LABEL2); \
+ fprintf (FILE, "\n"); \
+ } while (0)