diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1997-02-15 18:41:08 -0500 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1997-02-15 18:41:08 -0500 |
commit | cbd9173403528e13cb4bcc60122bb420dab60a9b (patch) | |
tree | e9bc504a8ccb2d91fb76d16ddcecfe8c355d6471 /gcc | |
parent | 6a1ce4261fc24e5c52a47c1d40b07483249b0215 (diff) | |
download | gcc-cbd9173403528e13cb4bcc60122bb420dab60a9b.zip gcc-cbd9173403528e13cb4bcc60122bb420dab60a9b.tar.gz gcc-cbd9173403528e13cb4bcc60122bb420dab60a9b.tar.bz2 |
(PRINT_OPERAND): Turned off: use default.
(ASM_OUTPUT_{FLOAT,DOUBLE}_OPERAND): Defined.
From-SVN: r13646
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/config/m68k/tower-as.h | 37 |
1 files changed, 29 insertions, 8 deletions
diff --git a/gcc/config/m68k/tower-as.h b/gcc/config/m68k/tower-as.h index 5f69aa8..46aa30a 100644 --- a/gcc/config/m68k/tower-as.h +++ b/gcc/config/m68k/tower-as.h @@ -1,6 +1,6 @@ /* Definitions of target machine for GNU compiler. For NCR Tower 32/4x0 and 32/6x0 running System V Release 3. - Copyright (C) 1990, 1993, 1994, 1996 Free Software Foundation, Inc. + Copyright (C) 1990, 1993, 1994, 1996, 1997 Free Software Foundation, Inc. Contributed by Robert Andersson (ra@intsys.no), International Systems, Oslo, Norway. @@ -50,6 +50,12 @@ Boston, MA 02111-1307, USA. */ #undef LOCAL_LABEL_PREFIX #define LOCAL_LABEL_PREFIX "" +/* The prefix to add to user-visible assembler symbols. */ +/* We do not want leading underscores. */ + +#undef USER_LABEL_PREFIX +#define USER_LABEL_PREFIX "" + /* These four macros control how m68k.md is expanded. */ #define MOTOROLA /* Use Motorola syntax rather than "MIT" */ @@ -323,6 +329,27 @@ do { long l; \ #define ASM_OUTPUT_SKIP(FILE,SIZE) \ fprintf (FILE, "\tspace %d\n", (SIZE)) +/* Output a float value (represented as a C double) as an immediate operand. + This macro is a 68k-specific macro. */ + +#undef ASM_OUTPUT_FLOAT_OPERAND +#define ASM_OUTPUT_FLOAT_OPERAND(CODE,FILE,VALUE) \ + do { long l; \ + REAL_VALUE_TO_TARGET_SINGLE (r, l); \ + /* Use hex representation even if CODE is f. as needs it. */ \ + fprintf ((FILE), "&0x%lx", l); \ + } while (0) + +/* Output a double value (represented as a C double) as an immediate operand. + This macro is a 68k-specific macro. */ +#undef ASM_OUTPUT_DOUBLE_OPERAND +#define ASM_OUTPUT_DOUBLE_OPERAND(FILE,VALUE) \ + do { long l[2]; \ + REAL_VALUE_TO_TARGET_DOUBLE (VALUE, l); \ + fprintf ((FILE), "&0x%lx%08lx", l[0], l[1]); \ + } while (0) + +#if 0 #undef PRINT_OPERAND #define PRINT_OPERAND(FILE, X, CODE) \ { if (CODE == '.') fprintf (FILE, "."); \ @@ -354,6 +381,7 @@ do { long l; \ REAL_VALUE_FROM_CONST_DOUBLE (r, X); \ ASM_OUTPUT_LONG_DOUBLE_OPERAND (FILE, r); } \ else { putc ('&', FILE); output_addr_const (FILE, X); }} +#endif /* Note that this contains a kludge that knows that the only reason we have an address (plus (label_ref...) (reg...)) @@ -586,10 +614,3 @@ do { fprintf (asm_out_file, "\ttag\t"); \ assemble_name (FILE, NAME); \ fprintf (FILE, ",-(%%sp)\n"); \ } while (0) - -/* The prefix to add to user-visible assembler symbols. */ - -/* We do not want leading underscores. */ - -#undef USER_LABEL_PREFIX -#define USER_LABEL_PREFIX "" |