aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Stallman <rms@gnu.org>1992-07-12 21:12:57 +0000
committerRichard Stallman <rms@gnu.org>1992-07-12 21:12:57 +0000
commit978d7af3bf7e66c5721cc274915c5665cc3a9dbe (patch)
tree5e17f7ad74758f309c30c1c6b60a6745f357538c /gcc
parent9f86614ba30595a95ae46d82d81b936fe00b3d39 (diff)
downloadgcc-978d7af3bf7e66c5721cc274915c5665cc3a9dbe.zip
gcc-978d7af3bf7e66c5721cc274915c5665cc3a9dbe.tar.gz
gcc-978d7af3bf7e66c5721cc274915c5665cc3a9dbe.tar.bz2
(ASM_OUTPUT_ALIGNED_COMMON): #undef this.
(ASM_OUTPUT_ASCII): New overriding definition. (ASM_OUTPUT_CASE_END): New overriding definition. From-SVN: r1577
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/m68k/m68kv4.h49
1 files changed, 49 insertions, 0 deletions
diff --git a/gcc/config/m68k/m68kv4.h b/gcc/config/m68k/m68kv4.h
index 6954883..2cf5dc4 100644
--- a/gcc/config/m68k/m68kv4.h
+++ b/gcc/config/m68k/m68kv4.h
@@ -181,3 +181,52 @@ do { \
#undef BIGGEST_ALIGNMENT
#define BIGGEST_ALIGNMENT 64
+
+/* SVR4 m68k assembler is bitching on the `comm i,1,1' which askes for
+ 1 byte alignment. Don't generate alignment for COMMON seems to be
+ safer until we the assembler is fixed. */
+#undef ASM_OUTPUT_ALIGNED_COMMON
+#undef ASM_OUTPUT_ALIGNED_LOCAL
+
+/* The `string' directive on m68k svr4 does not handle string with
+ escape char (ie., `\') right. Use normal way to output ASCII bytes
+ seems to be safer. */
+#undef ASM_OUTPUT_ASCII
+#define ASM_OUTPUT_ASCII(FILE,PTR,LEN) \
+{ \
+ register int sp = 0, lp = 0, ch; \
+ fprintf ((FILE), "\t%s ", BYTE_ASM_OP); \
+ do { \
+ ch = (PTR)[sp]; \
+ if (ch > ' ' && ! (ch & 0x80) && ch != '\\') \
+ { \
+ fprintf ((FILE), "'%c", ch); \
+ } \
+ else \
+ { \
+ fprintf ((FILE), "0x%x", ch); \
+ } \
+ if (++sp < (LEN)) \
+ { \
+ if ((sp % 10) == 0) \
+ { \
+ fprintf ((FILE), "\n\t%s ", BYTE_ASM_OP); \
+ } \
+ else \
+ { \
+ putc (',', (FILE)); \
+ } \
+ } \
+ } while (sp < (LEN)); \
+ putc ('\n', (FILE)); \
+}
+
+/* SVR4 m68k assembler is bitching on the syntax `2.b'. Change
+ it back to use the "LLDnnn-LLnnn" format. */
+
+#undef ASM_OUTPUT_CASE_END
+#define ASM_OUTPUT_CASE_END(FILE,NUM,TABLE) \
+ if (RTX_INTEGRATED_P (TABLE)) \
+ asm_fprintf (FILE, "\t%s %LLD%d,%LL%d\n",\
+ SET_ASM_OP, (NUM), (NUM))
+