From cc1cc1c7ea63b83095e67d3790e9d78a12382ac3 Mon Sep 17 00:00:00 2001
From: law <law@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Thu, 8 Oct 1998 04:37:30 +0000
Subject: [PATCH]         * 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@22912 138bc75d-0d04-0410-961f-82ee72b054a4
---
 gcc/c-common.c | 2 ++
 gcc/c-decl.c   | 8 ++++++++
 gcc/c-tree.h   | 4 ++++
 3 files changed, 14 insertions(+)

diff --git a/gcc/c-common.c b/gcc/c-common.c
index 5fcf1bc9a507..820473f836c3 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -2146,8 +2146,10 @@ type_for_mode (mode, unsignedp)
   if (mode == TYPE_MODE (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))
     return unsignedp ? unsigned_intTI_type_node : intTI_type_node;
+#endif
 
   if (mode == TYPE_MODE (float_type_node))
     return float_type_node;
diff --git a/gcc/c-decl.c b/gcc/c-decl.c
index 0b6e0186225c..99b4ad5ab523 100644
--- a/gcc/c-decl.c
+++ b/gcc/c-decl.c
@@ -151,13 +151,17 @@ tree intQI_type_node;
 tree intHI_type_node;
 tree intSI_type_node;
 tree intDI_type_node;
+#if HOST_BITS_PER_WIDE_INT >= 64
 tree intTI_type_node;
+#endif
 
 tree unsigned_intQI_type_node;
 tree unsigned_intHI_type_node;
 tree unsigned_intSI_type_node;
 tree unsigned_intDI_type_node;
+#if HOST_BITS_PER_WIDE_INT >= 64
 tree unsigned_intTI_type_node;
+#endif
 
 /* a VOID_TYPE node.  */
 
@@ -3041,8 +3045,10 @@ init_decl_processing ()
   intDI_type_node = make_signed_type (GET_MODE_BITSIZE (DImode));
   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));
   pushdecl (build_decl (TYPE_DECL, NULL_TREE, intTI_type_node));
+#endif
 
   unsigned_intQI_type_node = make_unsigned_type (GET_MODE_BITSIZE (QImode));
   pushdecl (build_decl (TYPE_DECL, NULL_TREE, unsigned_intQI_type_node));
@@ -3056,8 +3062,10 @@ 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));
 
+#if HOST_BITS_PER_WIDE_INT >= 64
   unsigned_intTI_type_node = make_unsigned_type (GET_MODE_BITSIZE (TImode));
   pushdecl (build_decl (TYPE_DECL, NULL_TREE, unsigned_intTI_type_node));
+#endif
 
   float_type_node = make_node (REAL_TYPE);
   TYPE_PRECISION (float_type_node) = FLOAT_TYPE_SIZE;
diff --git a/gcc/c-tree.h b/gcc/c-tree.h
index c615ac2bee50..3e73299d47b9 100644
--- a/gcc/c-tree.h
+++ b/gcc/c-tree.h
@@ -213,7 +213,9 @@ extern tree double_ftype_double;
 extern tree double_ftype_double_double;
 extern tree double_type_node;
 extern tree float_type_node;
+#if HOST_BITS_PER_WIDE_INT >= 64
 extern tree intTI_type_node;
+#endif
 extern tree intDI_type_node;
 extern tree intHI_type_node;
 extern tree intQI_type_node;
@@ -243,7 +245,9 @@ extern tree signed_wchar_type_node;
 extern tree string_ftype_ptr_ptr;
 extern tree string_type_node;
 extern tree unsigned_char_type_node;
+#if HOST_BITS_PER_WIDE_INT >= 64
 extern tree unsigned_intTI_type_node;
+#endif
 extern tree unsigned_intDI_type_node;
 extern tree unsigned_intHI_type_node;
 extern tree unsigned_intQI_type_node;
-- 
GitLab