Commit 8f9eb495 by Andreas Jaeger

gengenrtl.c: Add prototype for excluded_rtx.

	* gengenrtl.c: Add prototype for excluded_rtx.

	* real.h: Add prototype for exact_real_truncate.

From-SVN: r53607
parent fb49053f
2002-05-19 Andreas Jaeger <aj@suse.de>
* gengenrtl.c: Add prototype for excluded_rtx.
* real.h: Add prototype for exact_real_truncate.
2002-05-18 Richard Henderson <rth@redhat.com> 2002-05-18 Richard Henderson <rth@redhat.com>
* system.h (ENCODE_SECTION_INFO): Poison it. * system.h (ENCODE_SECTION_INFO): Poison it.
...@@ -25,16 +31,16 @@ ...@@ -25,16 +31,16 @@
referencing existing function. Make function static. referencing existing function. Make function static.
* config/a29k/a29k.c, config/a29k/a29k.h, config/arc/arc.c, * config/a29k/a29k.c, config/a29k/a29k.h, config/arc/arc.c,
config/arc/arc.h, config/arm/arm.c, config/arm/arm.h, config/arc/arc.h, config/arm/arm.c, config/arm/arm.h,
config/h8300/h8300.c, config/h8300/h8300.h, config/i370/i370.c, config/h8300/h8300.c, config/h8300/h8300.h, config/i370/i370.c,
config/i370/i370.h, config/i386/i386-interix.h, config/i386/i386.c, config/i370/i370.h, config/i386/i386-interix.h, config/i386/i386.c,
config/i386/i386.h, config/i386/interix.c, config/m88k/m88k.c, config/i386/i386.h, config/i386/interix.c, config/m88k/m88k.c,
config/m88k/m88k.h, config/mips/mips.c, config/mips/mips.h, config/m88k/m88k.h, config/mips/mips.c, config/mips/mips.h,
config/ns32k/ns32k.c, config/ns32k/ns32k.h, config/pa/pa.c, config/ns32k/ns32k.c, config/ns32k/ns32k.h, config/pa/pa.c,
config/pa/pa.h, config/romp/romp.c, config/romp/romp.h, config/pa/pa.h, config/romp/romp.c, config/romp/romp.h,
config/rs6000/linux64.h, config/rs6000/xcoff.h, config/s390/s390.c, config/rs6000/linux64.h, config/rs6000/xcoff.h, config/s390/s390.c,
config/s390/s390.h, config/sh/sh.c, config/sh/sh.h, config/s390/s390.h, config/sh/sh.c, config/sh/sh.h,
config/sparc/sparc.c, config/sparc/sparc.h, config/v850/v850.c, config/sparc/sparc.c, config/sparc/sparc.h, config/v850/v850.c,
config/v850/v850.h, config/vax/vax.c, config/vax/vms.h, config/v850/v850.h, config/vax/vax.c, config/vax/vms.h,
config/xtensa/xtensa.c, config/xtensa/xtensa.h: config/xtensa/xtensa.c, config/xtensa/xtensa.h:
Move ENCODE_SECTION_INFO to out-of-line function and add Move ENCODE_SECTION_INFO to out-of-line function and add
...@@ -92,10 +98,10 @@ ...@@ -92,10 +98,10 @@
* config/elfos.h, config/svr3.h, config/arm/aof.h, config/c4x/c4x.h, * config/elfos.h, config/svr3.h, config/arm/aof.h, config/c4x/c4x.h,
config/i386/dgux.h, config/i386/osfrose.h, config/i386/sco5.h, config/i386/dgux.h, config/i386/osfrose.h, config/i386/sco5.h,
config/i386/svr3gas.h, config/i860/paragon.h, config/ia64/aix.h, config/i386/svr3gas.h, config/i860/paragon.h, config/ia64/aix.h,
config/m32r/m32r.h, config/m68k/dpx2.h, config/m68k/lynx.h, config/m32r/m32r.h, config/m68k/dpx2.h, config/m68k/lynx.h,
config/m68k/m68k.h, config/m68k/tower-as.h, config/m88k/dgux.h, config/m68k/m68k.h, config/m68k/tower-as.h, config/m88k/dgux.h,
config/mcore/mcore-pe.h, config/mips/mips.h, config/mmix/mmix.h, config/mcore/mcore-pe.h, config/mips/mips.h, config/mmix/mmix.h,
config/pa/pa-linux.h, config/pa/pa.h, config/romp/romp.h, config/pa/pa-linux.h, config/pa/pa.h, config/romp/romp.h,
config/rs6000/lynx.h, config/rs6000/sysv4.h, config/s390/linux.h, config/rs6000/lynx.h, config/rs6000/sysv4.h, config/s390/linux.h,
config/sparc/sysv4.h, config/xtensa/elf.h, config/xtensa/linux.h config/sparc/sysv4.h, config/xtensa/elf.h, config/xtensa/linux.h
(SELECT_RTX_SECTION): Remove. (SELECT_RTX_SECTION): Remove.
...@@ -115,7 +121,7 @@ ...@@ -115,7 +121,7 @@
* config/mips/iris6.h (READONLY_DATA_SECTION_ASM_OP): Undef before * config/mips/iris6.h (READONLY_DATA_SECTION_ASM_OP): Undef before
redefining. redefining.
* config/mips/mips.c (mips_select_rtx_section): Make static. * config/mips/mips.c (mips_select_rtx_section): Make static.
Support ELF SHF_MERGE features. Support ELF SHF_MERGE features.
* config/mips/mips-protos.h: Update. * config/mips/mips-protos.h: Update.
* config/rs6000/xcoff.h (SELECT_RTX_SECTION): Move ... * config/rs6000/xcoff.h (SELECT_RTX_SECTION): Move ...
* config/rs6000/rs6000.c (rs6000_xcoff_select_rtx_section): ... here. * config/rs6000/rs6000.c (rs6000_xcoff_select_rtx_section): ... here.
...@@ -241,7 +247,7 @@ Sun May 19 00:24:23 CEST 2002 Jan Hubicka <jh@suse.cz> ...@@ -241,7 +247,7 @@ Sun May 19 00:24:23 CEST 2002 Jan Hubicka <jh@suse.cz>
2002-05-18 Jason Thorpe <thorpej@wasabisystems.com> 2002-05-18 Jason Thorpe <thorpej@wasabisystems.com>
* c-common.c (c_common_post_options): Warn if -Wformat-zero-length * c-common.c (c_common_post_options): Warn if -Wformat-zero-length
is used without -Wformat. is used without -Wformat.
* c-common.h (warn_format_zero_length): Declare extern. * c-common.h (warn_format_zero_length): Declare extern.
* c-decl.c (warn_options): Add "format-zero-length". * c-decl.c (warn_options): Add "format-zero-length".
* c-format.c (warn_format_zero_length): Declare. * c-format.c (warn_format_zero_length): Declare.
......
/* Generate code to allocate RTL structures. /* Generate code to allocate RTL structures.
Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc. Copyright (C) 1997, 1998, 1999, 2000, 2002 Free Software Foundation, Inc.
This file is part of GCC. This file is part of GCC.
...@@ -28,15 +28,15 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA ...@@ -28,15 +28,15 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "real.h" #include "real.h"
struct rtx_definition struct rtx_definition
{ {
const char *const enumname, *const name, *const format; const char *const enumname, *const name, *const format;
}; };
#define DEF_RTL_EXPR(ENUM, NAME, FORMAT, CLASS) { STRINGX(ENUM), NAME, FORMAT }, #define DEF_RTL_EXPR(ENUM, NAME, FORMAT, CLASS) { STRINGX(ENUM), NAME, FORMAT },
static const struct rtx_definition defs[] = static const struct rtx_definition defs[] =
{ {
#include "rtl.def" /* rtl expressions are documented here */ #include "rtl.def" /* rtl expressions are documented here */
}; };
...@@ -46,6 +46,7 @@ static const char *type_from_format PARAMS ((int)); ...@@ -46,6 +46,7 @@ static const char *type_from_format PARAMS ((int));
static const char *accessor_from_format PARAMS ((int)); static const char *accessor_from_format PARAMS ((int));
static int special_format PARAMS ((const char *)); static int special_format PARAMS ((const char *));
static int special_rtx PARAMS ((int)); static int special_rtx PARAMS ((int));
static int excluded_rtx PARAMS ((int));
static void find_formats PARAMS ((void)); static void find_formats PARAMS ((void));
static void gendecl PARAMS ((const char *)); static void gendecl PARAMS ((const char *));
static void genmacro PARAMS ((int)); static void genmacro PARAMS ((int));
...@@ -188,7 +189,7 @@ gendecl (format) ...@@ -188,7 +189,7 @@ gendecl (format)
{ {
const char *p; const char *p;
int i, pos; int i, pos;
printf ("extern rtx gen_rtx_fmt_%s\tPARAMS ((RTX_CODE, ", format); printf ("extern rtx gen_rtx_fmt_%s\tPARAMS ((RTX_CODE, ", format);
printf ("enum machine_mode mode"); printf ("enum machine_mode mode");
...@@ -213,7 +214,7 @@ gendecl (format) ...@@ -213,7 +214,7 @@ gendecl (format)
/* Generate macros to generate RTL of code IDX using the functions we /* Generate macros to generate RTL of code IDX using the functions we
write. */ write. */
static void static void
genmacro (idx) genmacro (idx)
int idx; int idx;
{ {
...@@ -253,7 +254,7 @@ gendef (format) ...@@ -253,7 +254,7 @@ gendef (format)
{ {
const char *p; const char *p;
int i, j; int i, j;
/* Start by writing the definition of the function name and the types /* Start by writing the definition of the function name and the types
of the arguments. */ of the arguments. */
......
...@@ -180,6 +180,11 @@ extern REAL_VALUE_TYPE ereal_from_double PARAMS ((HOST_WIDE_INT *)); ...@@ -180,6 +180,11 @@ extern REAL_VALUE_TYPE ereal_from_double PARAMS ((HOST_WIDE_INT *));
extern REAL_VALUE_TYPE real_value_truncate PARAMS ((enum machine_mode, extern REAL_VALUE_TYPE real_value_truncate PARAMS ((enum machine_mode,
REAL_VALUE_TYPE)); REAL_VALUE_TYPE));
/* Expansion of REAL_VALUE_TRUNCATE.
The result is in floating point, rounded to nearest or even. */
extern bool exact_real_truncate PARAMS ((enum machine_mode,
REAL_VALUE_TYPE *));
/* These return HOST_WIDE_INT: */ /* These return HOST_WIDE_INT: */
/* Convert a floating-point value to integer, rounding toward zero. */ /* Convert a floating-point value to integer, rounding toward zero. */
#define REAL_VALUE_FIX(x) (efixi (x)) #define REAL_VALUE_FIX(x) (efixi (x))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment