From: Kaveh R. Ghazi Date: Tue, 18 Jan 2000 22:56:37 +0000 (+0000) Subject: we32k-protos.h: New file. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=253f1045a1eeb94e750df4ec0f5904a3ccf7db09;p=gcc.git we32k-protos.h: New file. * we32k-protos.h: New file. * we32k.c: Fix compile time warnings. * we32k.h: Move prototypes to we32k-protos.h. Fix compile time warnings. From-SVN: r31491 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c4378451e61..95741993c25 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2000-01-18 Kaveh R. Ghazi + + * we32k-protos.h: New file. + + * we32k.c: Fix compile time warnings. + + * we32k.h: Move prototypes to we32k-protos.h. Fix compile time + warnings. + 2000-01-18 Kaveh R. Ghazi * calls.c (emit_call_1): Mark parameter with ATTRIBUTE_UNUSED. diff --git a/gcc/config/we32k/we32k-protos.h b/gcc/config/we32k/we32k-protos.h new file mode 100644 index 00000000000..cb11868a7e2 --- /dev/null +++ b/gcc/config/we32k/we32k-protos.h @@ -0,0 +1,26 @@ +/* Definitions of target machine for GNU compiler. AT&T we32000 version. + Copyright (C) 2000 + Free Software Foundation, Inc. + Contributed by John Wehle (john@feith1.uucp) + +This file is part of GNU CC. + +GNU CC is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 1, or (at your option) +any later version. + +GNU CC is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU CC; see the file COPYING. If not, write to +the Free Software Foundation, 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA. */ + +#ifdef RTX_CODE +extern void output_move_double PARAMS ((rtx *)); +extern void output_push_double PARAMS ((rtx *)); +#endif /* RTX_CODE */ diff --git a/gcc/config/we32k/we32k.c b/gcc/config/we32k/we32k.c index ef03232cb5d..3359704cc24 100644 --- a/gcc/config/we32k/we32k.c +++ b/gcc/config/we32k/we32k.c @@ -1,5 +1,5 @@ /* Subroutines for insn-output.c for AT&T we32000 Family. - Copyright (C) 1991, 1992, 1997, 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1991, 92, 97-99, 2000 Free Software Foundation, Inc. Contributed by John Wehle (john@feith1.uucp) This file is part of GNU CC. @@ -22,9 +22,13 @@ Boston, MA 02111-1307, USA. */ #include "config.h" #include "system.h" +#include "insn-config.h" #include "rtl.h" #include "function.h" #include "real.h" +#include "recog.h" +#include "output.h" +#include "tm_p.h" void output_move_double (operands) @@ -120,7 +124,7 @@ output_push_double (operands) lsw_operands[0] = adj_offsettable_operand (operands[0], 4); else if (GET_CODE (operands[0]) == CONST_DOUBLE) { - lsw_operands[0] = GEN_INT CONST_DOUBLE_HIGH (operands[0])); + lsw_operands[0] = GEN_INT (CONST_DOUBLE_HIGH (operands[0])); operands[0] = GEN_INT (CONST_DOUBLE_LOW (operands[0])); } else if (GET_CODE (operands[0]) == CONST_INT) diff --git a/gcc/config/we32k/we32k.h b/gcc/config/we32k/we32k.h index 7a66c734083..73a81e0338d 100644 --- a/gcc/config/we32k/we32k.h +++ b/gcc/config/we32k/we32k.h @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler. AT&T we32000 version. - Copyright (C) 1991, 92, 93, 94, 95, 96, 98, 1999 + Copyright (C) 1991, 92, 93, 94, 95, 96, 98, 99, 2000 Free Software Foundation, Inc. Contributed by John Wehle (john@feith1.uucp) @@ -42,7 +42,7 @@ extern int target_flags; An empty string NAME is used to identify the default VALUE. */ #define TARGET_SWITCHES \ - { { "", TARGET_DEFAULT}} + { { "", TARGET_DEFAULT, 0}} #define TARGET_DEFAULT 0 @@ -226,9 +226,9 @@ enum reg_class { NO_REGS, GENERAL_REGS, #define REG_CLASS_CONTENTS \ { \ - 0, /* NO_REGS */ \ - 0x000017ff, /* GENERAL_REGS */ \ - 0x0000ffff, /* ALL_REGS */ \ + {0}, /* NO_REGS */ \ + {0x000017ff}, /* GENERAL_REGS */ \ + {0x0000ffff}, /* ALL_REGS */ \ } /* The same information, inverted: @@ -810,7 +810,7 @@ enum reg_class { NO_REGS, GENERAL_REGS, /* AT&T's assembler can't handle floating constants written as floating. However, when cross-compiling, always use that in case format differs. */ -#ifdef CROSS_COMPILER +#ifdef CROSS_COMPILE #define ASM_OUTPUT_DOUBLE(FILE,VALUE) \ fprintf (FILE, "\t.double 0r%.20g\n", (VALUE)) @@ -823,16 +823,16 @@ enum reg_class { NO_REGS, GENERAL_REGS, #define ASM_OUTPUT_DOUBLE(FILE,VALUE) \ do { union { double d; long l[2];} tem; \ tem.d = (VALUE); \ - fprintf (FILE, "\t.word 0x%x, 0x%x\n", tem.l[0], tem.l[1]);\ + fprintf (FILE, "\t.word 0x%lx, 0x%lx\n", tem.l[0], tem.l[1]);\ } while (0) #define ASM_OUTPUT_FLOAT(FILE,VALUE) \ do { union { float f; long l;} tem; \ tem.f = (VALUE); \ - fprintf (FILE, "\t.word 0x%x\n", tem.l); \ + fprintf (FILE, "\t.word 0x%lx\n", tem.l); \ } while (0) -#endif /* not CROSS_COMPILER */ +#endif /* not CROSS_COMPILE */ /* This is how to output an assembler line defining an `int' constant. */ @@ -860,9 +860,9 @@ do { union { float f; long l;} tem; \ #define ASM_OUTPUT_ASCII(FILE,PTR,LEN) \ do { \ - unsigned char *s; \ + const unsigned char *s; \ int i; \ - for (i = 0, s = (unsigned char *)(PTR); i < (LEN); s++, i++) \ + for (i = 0, s = (const unsigned char *)(PTR); i < (LEN); s++, i++) \ { \ if ((i % 8) == 0) \ fprintf ((FILE),"%s\t.byte\t",(i?"\n":"")); \ @@ -907,7 +907,7 @@ do { \ /* The `space' pseudo in the text segment outputs nop insns rather than 0s, so we must output 0s explicitly in the text segment. */ -#define ASM_OUTPUT_SKIP(FILE,SIZE) \ +#define ASM_OUTPUT_SKIP(FILE,SIZE) do { \ if (in_text_section ()) \ { \ int i; \ @@ -923,7 +923,7 @@ do { \ } \ } \ else \ - fprintf ((FILE), "\t.set .,.+%u\n", (SIZE)) + fprintf ((FILE), "\t.set .,.+%u\n", (SIZE)); } while (0) /* This says how to output an assembler line to define a global common symbol. */ @@ -981,8 +981,7 @@ do { \ #define PRINT_OPERAND_PUNCT_VALID_P(CODE) 0 #define PRINT_OPERAND(FILE, X, CODE) \ -{ int i; \ - if (GET_CODE (X) == REG) \ +{ if (GET_CODE (X) == REG) \ fprintf (FILE, "%%%s", reg_names[REGNO (X)]); \ else if (GET_CODE (X) == MEM) \ output_address (XEXP (X, 0)); \