From 61222a29b5fe65308b4c064a59935f29789358cc Mon Sep 17 00:00:00 2001 From: kenner Date: Sat, 15 Feb 1997 23:41:08 +0000 Subject: [PATCH] (PRINT_OPERAND): Turned off: use default. (ASM_OUTPUT_{FLOAT,DOUBLE}_OPERAND): Defined. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@13646 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/config/m68k/tower-as.h | 37 +++++++++++++++++++++++++++++-------- 1 file changed, 29 insertions(+), 8 deletions(-) diff --git a/gcc/config/m68k/tower-as.h b/gcc/config/m68k/tower-as.h index 5f69aa868bd..46aa30a7478 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 "" -- 2.11.0