aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1995-01-13 17:54:35 -0500
committerRichard Kenner <kenner@gcc.gnu.org>1995-01-13 17:54:35 -0500
commit3c058ff1e7fbb4f3a14f30d194e5a0679062a907 (patch)
tree51c790cb6dbfafecd7bde1a1e999d55a104afc28 /gcc
parent9356b79f64c9acf44c1802902423683827d19be1 (diff)
downloadgcc-3c058ff1e7fbb4f3a14f30d194e5a0679062a907.zip
gcc-3c058ff1e7fbb4f3a14f30d194e5a0679062a907.tar.gz
gcc-3c058ff1e7fbb4f3a14f30d194e5a0679062a907.tar.bz2
(ASM_FILE_START): New macro.
From-SVN: r8740
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/i386/isc.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc/config/i386/isc.h b/gcc/config/i386/isc.h
index 16f7142..72a07fe 100644
--- a/gcc/config/i386/isc.h
+++ b/gcc/config/i386/isc.h
@@ -60,3 +60,25 @@
80-bit XFmode insns, so don't generate them. */
#undef LONG_DOUBLE_TYPE_SIZE
#define LONG_DOUBLE_TYPE_SIZE 64
+
+/* The ISC assembler does not like a .file directive with a name
+ longer than 14 characters. Truncating it will not permit
+ debugging to work properly, but at least we won't get an error
+ message. */
+
+#undef ASM_FILE_START
+#define ASM_FILE_START(FILE) \
+ do { \
+ char c; \
+ int max = 0; \
+ char *string = dump_base_name; \
+ \
+ fputs ("\t.file\t\"", FILE); \
+ \
+ while ((c = *string++) != 0 && max++ < 14) { \
+ if (c == '\"' || c == '\\') \
+ putc ('\\', FILE); \
+ putc (c, FILE); \
+ } \
+ fputs ("\"\n", FILE); \
+ } while (0)