c-common.c (type_for_mode): Handle TI types.

* c-common.c (type_for_mode): Handle TI types.
        * c-decl.c (intTI_type_node, unsigned_int_TI_type_node): Define.
        (init_decl_processing): Handle TI types.
        * c-tree.h (intTI_type_node, unsigned_int_TI_type_node): Declare.

From-SVN: r19355
This commit is contained in:
Jeffrey A Law 1998-04-21 13:25:56 +00:00 committed by Jeff Law
parent 1eeed24eb2
commit a6d7e15639
5 changed files with 28 additions and 0 deletions

View File

@ -1,5 +1,10 @@
Tue Apr 21 12:05:32 1998 Jeffrey A Law (law@cygnus.com)
* c-common.c (type_for_mode): Handle TI types.
* c-decl.c (intTI_type_node, unsigned_int_TI_type_node): Define.
(init_decl_processing): Handle TI types.
* c-tree.h (intTI_type_node, unsigned_int_TI_type_node): Declare.
* mips.c (block_move_loop): Test Pmode == DImode instead of
TARGET_MIPS64.
(expand_block_move, save_restore_insns): Likewise.

View File

@ -6,6 +6,16 @@ time as we can formally start documenting the interface this file will
serve as a repository for information on these interface and any incompatable
changes we've made.
Apr 21, 1998:
Front ends which link with c-common or other files from the C/C++
front-ends may need to handle TI types. Look for references to
[unsigned]int_DI_type_node in your front end. If you have references
to these variables, you'll need up update the front end.
To update the front end you must mirror all the code which currently
deals with intDI_type_node to also handle intTI_type_node.
Apr 7, 1998:
The interface between toplev.c and the language front ends for opening the
source file has changed:

View File

@ -2015,6 +2015,9 @@ type_for_mode (mode, unsignedp)
if (mode == TYPE_MODE (intDI_type_node))
return unsignedp ? unsigned_intDI_type_node : intDI_type_node;
if (mode == TYPE_MODE (intTI_type_node))
return unsignedp ? unsigned_intTI_type_node : intTI_type_node;
if (mode == TYPE_MODE (float_type_node))
return float_type_node;

View File

@ -143,11 +143,13 @@ tree intQI_type_node;
tree intHI_type_node;
tree intSI_type_node;
tree intDI_type_node;
tree intTI_type_node;
tree unsigned_intQI_type_node;
tree unsigned_intHI_type_node;
tree unsigned_intSI_type_node;
tree unsigned_intDI_type_node;
tree unsigned_intTI_type_node;
/* a VOID_TYPE node. */
@ -2986,6 +2988,9 @@ init_decl_processing ()
intDI_type_node = make_signed_type (GET_MODE_BITSIZE (DImode));
pushdecl (build_decl (TYPE_DECL, NULL_TREE, intDI_type_node));
intTI_type_node = make_signed_type (GET_MODE_BITSIZE (TImode));
pushdecl (build_decl (TYPE_DECL, NULL_TREE, intDI_type_node));
unsigned_intQI_type_node = make_unsigned_type (GET_MODE_BITSIZE (QImode));
pushdecl (build_decl (TYPE_DECL, NULL_TREE, unsigned_intQI_type_node));
@ -2998,6 +3003,9 @@ init_decl_processing ()
unsigned_intDI_type_node = make_unsigned_type (GET_MODE_BITSIZE (DImode));
pushdecl (build_decl (TYPE_DECL, NULL_TREE, unsigned_intDI_type_node));
unsigned_intTI_type_node = make_unsigned_type (GET_MODE_BITSIZE (TImode));
pushdecl (build_decl (TYPE_DECL, NULL_TREE, unsigned_intTI_type_node));
float_type_node = make_node (REAL_TYPE);
TYPE_PRECISION (float_type_node) = FLOAT_TYPE_SIZE;
pushdecl (build_decl (TYPE_DECL, ridpointers[(int) RID_FLOAT],

View File

@ -201,6 +201,7 @@ extern tree double_ftype_double;
extern tree double_ftype_double_double;
extern tree double_type_node;
extern tree float_type_node;
extern tree intTI_type_node;
extern tree intDI_type_node;
extern tree intHI_type_node;
extern tree intQI_type_node;
@ -230,6 +231,7 @@ extern tree signed_wchar_type_node;
extern tree string_ftype_ptr_ptr;
extern tree string_type_node;
extern tree unsigned_char_type_node;
extern tree unsigned_intTI_type_node;
extern tree unsigned_intDI_type_node;
extern tree unsigned_intHI_type_node;
extern tree unsigned_intQI_type_node;