From f7554e8cffcd6f3f99c66e18b5af15311fbce2c3 Mon Sep 17 00:00:00 2001 From: Jeffrey A Law Date: Tue, 21 Apr 1998 13:27:12 +0000 Subject: [PATCH] cp-tree.h (intTI_type_node, [...]): Declare. * cp-tree.h (intTI_type_node, unsigned_intTI_type_node): Declare. * decl.c (intTI_type_node, unsigned_intTI_type_node): Define. (init_decl_processing): Handle TI types. * typeck.c (unsigned_type, signed_type): Handle TI types. From-SVN: r19356 --- gcc/cp/ChangeLog | 7 +++++++ gcc/cp/cp-tree.h | 1 + gcc/cp/decl.c | 6 ++++++ gcc/cp/typeck.c | 4 ++++ 4 files changed, 18 insertions(+) diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 3e277e232ec..d8f4204cbe2 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,10 @@ +Tue Apr 21 14:22:00 1998 Jeffrey A Law (law@cygnus.com) + + * cp-tree.h (intTI_type_node, unsigned_intTI_type_node): Declare. + * decl.c (intTI_type_node, unsigned_intTI_type_node): Define. + (init_decl_processing): Handle TI types. + * typeck.c (unsigned_type, signed_type): Handle TI types. + Sat Apr 18 15:25:21 1998 Jim Wilson * g++spec.c (lang_specific_driver): New argument in_added_libraries. diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h index e2f68aa816f..8b943c43a21 100644 --- a/gcc/cp/cp-tree.h +++ b/gcc/cp/cp-tree.h @@ -171,6 +171,7 @@ extern tree intQI_type_node, unsigned_intQI_type_node; extern tree intHI_type_node, unsigned_intHI_type_node; extern tree intSI_type_node, unsigned_intSI_type_node; extern tree intDI_type_node, unsigned_intDI_type_node; +extern tree intTI_type_node, unsigned_intTI_type_node; extern int current_function_returns_value; extern int current_function_returns_null; diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 2a966a2f830..164d7068613 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -222,11 +222,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, and the same, packaged in a TREE_LIST. */ @@ -5115,6 +5117,8 @@ init_decl_processing () pushdecl (build_decl (TYPE_DECL, NULL_TREE, intSI_type_node)); 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, intTI_type_node)); unsigned_intQI_type_node = make_unsigned_type (GET_MODE_BITSIZE (QImode)); pushdecl (build_decl (TYPE_DECL, NULL_TREE, unsigned_intQI_type_node)); unsigned_intHI_type_node = make_unsigned_type (GET_MODE_BITSIZE (HImode)); @@ -5123,6 +5127,8 @@ init_decl_processing () pushdecl (build_decl (TYPE_DECL, NULL_TREE, unsigned_intSI_type_node)); 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; diff --git a/gcc/cp/typeck.c b/gcc/cp/typeck.c index 4080a8ee6b7..36acd58d3cc 100644 --- a/gcc/cp/typeck.c +++ b/gcc/cp/typeck.c @@ -1229,6 +1229,8 @@ unsigned_type (type) return long_unsigned_type_node; if (type1 == long_long_integer_type_node) return long_long_unsigned_type_node; + if (type1 == intTI_type_node) + return unsigned_intTI_type_node; if (type1 == intDI_type_node) return unsigned_intDI_type_node; if (type1 == intSI_type_node) @@ -1258,6 +1260,8 @@ signed_type (type) return long_integer_type_node; if (type1 == long_long_unsigned_type_node) return long_long_integer_type_node; + if (type1 == unsigned_intTI_type_node) + return intTI_type_node; if (type1 == unsigned_intDI_type_node) return intDI_type_node; if (type1 == unsigned_intSI_type_node) -- 2.30.2