Commit 21a9616b by Jeff Law

c-common.c (type_for_mode): Only return TItype nodes when HOST_BITS_PER_WIDE_INT is >= 64 bits.

        * c-common.c (type_for_mode): Only return TItype nodes when
        HOST_BITS_PER_WIDE_INT is >= 64 bits.
        * c-decl.c (intTI_type_node, unsigned_intTI_type_node): Only declare
        when HOST_BITS_PER_WIDE_INT is >= 64 bits.
        (init_decl_processing): Only create TItype nodes when
        HOST_BITS_PER_WIDE_INT is >= 64 bits.
        * c-tree.h (intTI_type_node, unsigned_intTI_type_node): Only declare
        when HOST_BITS_PER_WIDE_INT is >= 64 bits.

From-SVN: r22912
parent 2a230e9d
...@@ -2146,8 +2146,10 @@ type_for_mode (mode, unsignedp) ...@@ -2146,8 +2146,10 @@ type_for_mode (mode, unsignedp)
if (mode == TYPE_MODE (intDI_type_node)) if (mode == TYPE_MODE (intDI_type_node))
return unsignedp ? unsigned_intDI_type_node : intDI_type_node; return unsignedp ? unsigned_intDI_type_node : intDI_type_node;
#if HOST_BITS_PER_WIDE_INT >= 64
if (mode == TYPE_MODE (intTI_type_node)) if (mode == TYPE_MODE (intTI_type_node))
return unsignedp ? unsigned_intTI_type_node : intTI_type_node; return unsignedp ? unsigned_intTI_type_node : intTI_type_node;
#endif
if (mode == TYPE_MODE (float_type_node)) if (mode == TYPE_MODE (float_type_node))
return float_type_node; return float_type_node;
......
...@@ -151,13 +151,17 @@ tree intQI_type_node; ...@@ -151,13 +151,17 @@ tree intQI_type_node;
tree intHI_type_node; tree intHI_type_node;
tree intSI_type_node; tree intSI_type_node;
tree intDI_type_node; tree intDI_type_node;
#if HOST_BITS_PER_WIDE_INT >= 64
tree intTI_type_node; tree intTI_type_node;
#endif
tree unsigned_intQI_type_node; tree unsigned_intQI_type_node;
tree unsigned_intHI_type_node; tree unsigned_intHI_type_node;
tree unsigned_intSI_type_node; tree unsigned_intSI_type_node;
tree unsigned_intDI_type_node; tree unsigned_intDI_type_node;
#if HOST_BITS_PER_WIDE_INT >= 64
tree unsigned_intTI_type_node; tree unsigned_intTI_type_node;
#endif
/* a VOID_TYPE node. */ /* a VOID_TYPE node. */
...@@ -3041,8 +3045,10 @@ init_decl_processing () ...@@ -3041,8 +3045,10 @@ init_decl_processing ()
intDI_type_node = make_signed_type (GET_MODE_BITSIZE (DImode)); intDI_type_node = make_signed_type (GET_MODE_BITSIZE (DImode));
pushdecl (build_decl (TYPE_DECL, NULL_TREE, intDI_type_node)); pushdecl (build_decl (TYPE_DECL, NULL_TREE, intDI_type_node));
#if HOST_BITS_PER_WIDE_INT >= 64
intTI_type_node = make_signed_type (GET_MODE_BITSIZE (TImode)); intTI_type_node = make_signed_type (GET_MODE_BITSIZE (TImode));
pushdecl (build_decl (TYPE_DECL, NULL_TREE, intTI_type_node)); pushdecl (build_decl (TYPE_DECL, NULL_TREE, intTI_type_node));
#endif
unsigned_intQI_type_node = make_unsigned_type (GET_MODE_BITSIZE (QImode)); unsigned_intQI_type_node = make_unsigned_type (GET_MODE_BITSIZE (QImode));
pushdecl (build_decl (TYPE_DECL, NULL_TREE, unsigned_intQI_type_node)); pushdecl (build_decl (TYPE_DECL, NULL_TREE, unsigned_intQI_type_node));
...@@ -3056,8 +3062,10 @@ init_decl_processing () ...@@ -3056,8 +3062,10 @@ init_decl_processing ()
unsigned_intDI_type_node = make_unsigned_type (GET_MODE_BITSIZE (DImode)); unsigned_intDI_type_node = make_unsigned_type (GET_MODE_BITSIZE (DImode));
pushdecl (build_decl (TYPE_DECL, NULL_TREE, unsigned_intDI_type_node)); pushdecl (build_decl (TYPE_DECL, NULL_TREE, unsigned_intDI_type_node));
#if HOST_BITS_PER_WIDE_INT >= 64
unsigned_intTI_type_node = make_unsigned_type (GET_MODE_BITSIZE (TImode)); unsigned_intTI_type_node = make_unsigned_type (GET_MODE_BITSIZE (TImode));
pushdecl (build_decl (TYPE_DECL, NULL_TREE, unsigned_intTI_type_node)); pushdecl (build_decl (TYPE_DECL, NULL_TREE, unsigned_intTI_type_node));
#endif
float_type_node = make_node (REAL_TYPE); float_type_node = make_node (REAL_TYPE);
TYPE_PRECISION (float_type_node) = FLOAT_TYPE_SIZE; TYPE_PRECISION (float_type_node) = FLOAT_TYPE_SIZE;
......
...@@ -213,7 +213,9 @@ extern tree double_ftype_double; ...@@ -213,7 +213,9 @@ extern tree double_ftype_double;
extern tree double_ftype_double_double; extern tree double_ftype_double_double;
extern tree double_type_node; extern tree double_type_node;
extern tree float_type_node; extern tree float_type_node;
#if HOST_BITS_PER_WIDE_INT >= 64
extern tree intTI_type_node; extern tree intTI_type_node;
#endif
extern tree intDI_type_node; extern tree intDI_type_node;
extern tree intHI_type_node; extern tree intHI_type_node;
extern tree intQI_type_node; extern tree intQI_type_node;
...@@ -243,7 +245,9 @@ extern tree signed_wchar_type_node; ...@@ -243,7 +245,9 @@ extern tree signed_wchar_type_node;
extern tree string_ftype_ptr_ptr; extern tree string_ftype_ptr_ptr;
extern tree string_type_node; extern tree string_type_node;
extern tree unsigned_char_type_node; extern tree unsigned_char_type_node;
#if HOST_BITS_PER_WIDE_INT >= 64
extern tree unsigned_intTI_type_node; extern tree unsigned_intTI_type_node;
#endif
extern tree unsigned_intDI_type_node; extern tree unsigned_intDI_type_node;
extern tree unsigned_intHI_type_node; extern tree unsigned_intHI_type_node;
extern tree unsigned_intQI_type_node; extern tree unsigned_intQI_type_node;
......
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