diff options
-rw-r--r-- | gcc/ChangeLog | 20 | ||||
-rw-r--r-- | gcc/machmode.h | 14 | ||||
-rw-r--r-- | gcc/rtl.c | 22 | ||||
-rw-r--r-- | gcc/rtl.h | 8 |
4 files changed, 42 insertions, 22 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0273b76..0b784c5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,23 @@ +2001-12-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> + + * machmode.h (mode_name, mode_class, mode_size, mode_unit_size, + mode_bitsize, mode_mask_array, mode_wider_mode): Set array size in + declaration to NUM_MACHINE_MODES. + (mode_size, mode_unit_size): Set array type to unsigned char. + (mode_bitsize): Set array type to unsigned short. + + * rtl.c (rtx_length): Set array type to unsigned char. + (rtx_length, rtx_name, rtx_format, rtx_class): Set array size to + NUM_RTX_CODE. + (mode_bitsize): Set array type to unsigned short. + (mode_size, mode_unit_size): Set array type to unsigned char. + (mode_name, mode_class, mode_bitsize, mode_size, mode_unit_size, + mode_wider_mode, mode_mask_array): Set array size to + NUM_MACHINE_MODES. + + * rtl.h (rtx_length, rtx_name, rtx_format, rtx_class): Set array + size in declaration to NUM_RTX_CODE. + 2001-12-17 Richard Henderson <rth@redhat.com> * config/alpha/alpha.md (unop): Encode RB as $sp. diff --git a/gcc/machmode.h b/gcc/machmode.h index f0363bd..9b2ad8f 100644 --- a/gcc/machmode.h +++ b/gcc/machmode.h @@ -38,7 +38,7 @@ MAX_MACHINE_MODE }; /* Get the name of mode MODE as a string. */ -extern const char * const mode_name[]; +extern const char * const mode_name[NUM_MACHINE_MODES]; #define GET_MODE_NAME(MODE) (mode_name[(int) (MODE)]) enum mode_class { MODE_RANDOM, MODE_INT, MODE_FLOAT, MODE_PARTIAL_INT, MODE_CC, @@ -49,7 +49,7 @@ enum mode_class { MODE_RANDOM, MODE_INT, MODE_FLOAT, MODE_PARTIAL_INT, MODE_CC, /* Get the general kind of object that mode MODE represents (integer, floating, complex, etc.) */ -extern const enum mode_class mode_class[]; +extern const enum mode_class mode_class[NUM_MACHINE_MODES]; #define GET_MODE_CLASS(MODE) (mode_class[(int) (MODE)]) /* Nonzero if MODE is an integral mode. */ @@ -77,12 +77,12 @@ extern const enum mode_class mode_class[]; /* Get the size in bytes of an object of mode MODE. */ -extern const unsigned int mode_size[]; +extern const unsigned char mode_size[NUM_MACHINE_MODES]; #define GET_MODE_SIZE(MODE) (mode_size[(int) (MODE)]) /* Get the size in bytes of the basic parts of an object of mode MODE. */ -extern const unsigned int mode_unit_size[]; +extern const unsigned char mode_unit_size[NUM_MACHINE_MODES]; #define GET_MODE_UNIT_SIZE(MODE) (mode_unit_size[(int) (MODE)]) /* Get the number of units in the object. */ @@ -93,7 +93,7 @@ extern const unsigned int mode_unit_size[]; /* Get the size in bits of an object of mode MODE. */ -extern const unsigned int mode_bitsize[]; +extern const unsigned short mode_bitsize[NUM_MACHINE_MODES]; #define GET_MODE_BITSIZE(MODE) (mode_bitsize[(int) (MODE)]) #endif /* not HAVE_MACHINE_MODES */ @@ -103,7 +103,7 @@ extern const unsigned int mode_bitsize[]; /* Get a bitmask containing 1 for all bits in a word that fit within mode MODE. */ -extern const unsigned HOST_WIDE_INT mode_mask_array[]; +extern const unsigned HOST_WIDE_INT mode_mask_array[NUM_MACHINE_MODES]; #define GET_MODE_MASK(MODE) mode_mask_array[(int) (MODE)] @@ -114,7 +114,7 @@ extern const unsigned HOST_WIDE_INT mode_mask_array[]; /* Get the next wider natural mode (eg, QI -> HI -> SI -> DI -> TI). */ -extern const unsigned char mode_wider_mode[]; +extern const unsigned char mode_wider_mode[NUM_MACHINE_MODES]; #define GET_MODE_WIDER_MODE(MODE) ((enum machine_mode)mode_wider_mode[(int) (MODE)]) /* Return the mode for data of a given size SIZE and mode class CLASS. @@ -96,7 +96,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #define DEF_RTL_EXPR(ENUM, NAME, FORMAT, CLASS) sizeof FORMAT - 1 , -const int rtx_length[NUM_RTX_CODE + 1] = { +const unsigned char rtx_length[NUM_RTX_CODE] = { #include "rtl.def" }; @@ -106,7 +106,7 @@ const int rtx_length[NUM_RTX_CODE + 1] = { #define DEF_RTL_EXPR(ENUM, NAME, FORMAT, CLASS) NAME , -const char * const rtx_name[] = { +const char * const rtx_name[NUM_RTX_CODE] = { #include "rtl.def" /* rtl expressions are documented here */ }; @@ -117,7 +117,7 @@ const char * const rtx_name[] = { #define DEF_MACHMODE(SYM, NAME, CLASS, BITSIZE, SIZE, UNIT, WIDER) NAME, -const char * const mode_name[] = { +const char * const mode_name[NUM_MACHINE_MODES] = { #include "machmode.def" }; @@ -127,7 +127,7 @@ const char * const mode_name[] = { #define DEF_MACHMODE(SYM, NAME, CLASS, BITSIZE, SIZE, UNIT, WIDER) CLASS, -const enum mode_class mode_class[] = { +const enum mode_class mode_class[NUM_MACHINE_MODES] = { #include "machmode.def" }; @@ -138,7 +138,7 @@ const enum mode_class mode_class[] = { #define DEF_MACHMODE(SYM, NAME, CLASS, BITSIZE, SIZE, UNIT, WIDER) BITSIZE, -const unsigned int mode_bitsize[] = { +const unsigned short mode_bitsize[NUM_MACHINE_MODES] = { #include "machmode.def" }; @@ -149,7 +149,7 @@ const unsigned int mode_bitsize[] = { #define DEF_MACHMODE(SYM, NAME, CLASS, BITSIZE, SIZE, UNIT, WIDER) SIZE, -const unsigned int mode_size[] = { +const unsigned char mode_size[NUM_MACHINE_MODES] = { #include "machmode.def" }; @@ -160,7 +160,7 @@ const unsigned int mode_size[] = { #define DEF_MACHMODE(SYM, NAME, CLASS, BITSIZE, SIZE, UNIT, WIDER) UNIT, -const unsigned int mode_unit_size[] = { +const unsigned char mode_unit_size[NUM_MACHINE_MODES] = { #include "machmode.def" /* machine modes are documented here */ }; @@ -173,7 +173,7 @@ const unsigned int mode_unit_size[] = { #define DEF_MACHMODE(SYM, NAME, CLASS, BITSIZE, SIZE, UNIT, WIDER) \ (unsigned char) WIDER, -const unsigned char mode_wider_mode[] = { +const unsigned char mode_wider_mode[NUM_MACHINE_MODES] = { #include "machmode.def" /* machine modes are documented here */ }; @@ -184,7 +184,7 @@ const unsigned char mode_wider_mode[] = { /* Indexed by machine mode, gives mask of significant bits in mode. */ -const unsigned HOST_WIDE_INT mode_mask_array[] = { +const unsigned HOST_WIDE_INT mode_mask_array[NUM_MACHINE_MODES] = { #include "machmode.def" }; @@ -214,7 +214,7 @@ const enum machine_mode class_narrowest_mode[(int) MAX_MODE_CLASS] = { rtx's of that code. The sequence is a C string in which each character describes one operand. */ -const char * const rtx_format[] = { +const char * const rtx_format[NUM_RTX_CODE] = { /* "*" undefined. can cause a warning message "0" field is unused (or used in a phase-dependent manner) @@ -249,7 +249,7 @@ const char * const rtx_format[] = { /* Indexed by rtx code, gives a character representing the "class" of that rtx code. See rtl.def for documentation on the defined classes. */ -const char rtx_class[] = { +const char rtx_class[NUM_RTX_CODE] = { #define DEF_RTL_EXPR(ENUM, NAME, FORMAT, CLASS) CLASS, #include "rtl.def" /* rtl expressions are defined here */ #undef DEF_RTL_EXPR @@ -51,16 +51,16 @@ enum rtx_code { #define NUM_RTX_CODE ((int)LAST_AND_UNUSED_RTX_CODE) /* The cast here, saves many elsewhere. */ -extern const int rtx_length[]; +extern const unsigned char rtx_length[NUM_RTX_CODE]; #define GET_RTX_LENGTH(CODE) (rtx_length[(int) (CODE)]) -extern const char * const rtx_name[]; +extern const char * const rtx_name[NUM_RTX_CODE]; #define GET_RTX_NAME(CODE) (rtx_name[(int) (CODE)]) -extern const char * const rtx_format[]; +extern const char * const rtx_format[NUM_RTX_CODE]; #define GET_RTX_FORMAT(CODE) (rtx_format[(int) (CODE)]) -extern const char rtx_class[]; +extern const char rtx_class[NUM_RTX_CODE]; #define GET_RTX_CLASS(CODE) (rtx_class[(int) (CODE)]) /* The flags and bitfields of an ADDR_DIFF_VEC. BASE is the base label |