diff options
author | Richard Stallman <rms@gnu.org> | 1992-07-12 21:12:57 +0000 |
---|---|---|
committer | Richard Stallman <rms@gnu.org> | 1992-07-12 21:12:57 +0000 |
commit | 978d7af3bf7e66c5721cc274915c5665cc3a9dbe (patch) | |
tree | 5e17f7ad74758f309c30c1c6b60a6745f357538c /gcc | |
parent | 9f86614ba30595a95ae46d82d81b936fe00b3d39 (diff) | |
download | gcc-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.h | 49 |
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)) + |