diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2009-04-21 17:05:09 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2009-04-21 17:05:09 +0000 |
commit | b4680ca1ec22b7c8b316fb1ccf8abe306ad398f9 (patch) | |
tree | ba7bd7f71baab2ae605732799c219e06e9ac1bbc /gcc/ada/gcc-interface/ada-tree.h | |
parent | 350916301fe8afa02464e3ca84c70015ce2cf74b (diff) | |
download | gcc-b4680ca1ec22b7c8b316fb1ccf8abe306ad398f9.zip gcc-b4680ca1ec22b7c8b316fb1ccf8abe306ad398f9.tar.gz gcc-b4680ca1ec22b7c8b316fb1ccf8abe306ad398f9.tar.bz2 |
ada-tree.h (TYPE_RM_SIZE_NUM): Delete.
* ada-tree.h (TYPE_RM_SIZE_NUM): Delete.
(TYPE_RM_SIZE): Access TYPE_LANG_SLOT_1 directly for integral types.
* decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>: Remove useless
support code for packed array types and assert its uselessness.
<E_Signed_Integer_Subtype>: Reuse entity identifier in more places and
adjust for TYPE_RM_SIZE change.
<all> Fix nits in comments. Use Original_Array_Type accessor instead
of Associated_Node_For_Itype accessor for packed array types.
(make_packable_type): Likewise.
(maybe_pad_type): Likewise.
(set_rm_size): Likewise. Rework conditional statement. Adjust for
TYPE_RM_SIZE change.
(make_type_from_size): Adjust for TYPE_RM_SIZE change.
(rm_size): Fix nits in comments. Rework conditional statements.
* misc.c (gnat_print_type): Adjust for TYPE_RM_SIZE change.
* trans.c (Attribute_to_gnu): Fix nits in comments.
* utils.c (gnat_init_decl_processing): Use more appropriate function
to initialize the size_type_node. Adjust for TYPE_RM_SIZE change.
From-SVN: r146530
Diffstat (limited to 'gcc/ada/gcc-interface/ada-tree.h')
-rw-r--r-- | gcc/ada/gcc-interface/ada-tree.h | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/gcc/ada/gcc-interface/ada-tree.h b/gcc/ada/gcc-interface/ada-tree.h index 846dc90..8d1f6a8 100644 --- a/gcc/ada/gcc-interface/ada-tree.h +++ b/gcc/ada/gcc-interface/ada-tree.h @@ -6,7 +6,7 @@ * * * C Header File * * * - * Copyright (C) 1992-2008, Free Software Foundation, Inc. * + * Copyright (C) 1992-2009, Free Software Foundation, Inc. * * * * GNAT is free software; you can redistribute it and/or modify it under * * terms of the GNU General Public License as published by the Free Soft- * @@ -162,6 +162,10 @@ struct lang_type GTY(()) {tree t; }; cico parameter passing mechanism refer to the routine gnat_to_gnu_entity. */ #define TYPE_CI_CO_LIST(NODE) TYPE_LANG_SLOT_1 (FUNCTION_TYPE_CHECK (NODE)) +/* For integral types, this is the RM Size of the type. */ +#define TYPE_RM_SIZE(NODE) \ + TYPE_LANG_SLOT_1 (TREE_CHECK3 (NODE, ENUMERAL_TYPE, BOOLEAN_TYPE, INTEGER_TYPE)) + /* For an INTEGER_TYPE with TYPE_MODULAR_P, this is the value of the modulus. */ #define TYPE_MODULUS(NODE) GET_TYPE_LANG_SPECIFIC (INTEGER_TYPE_CHECK (NODE)) @@ -182,13 +186,6 @@ struct lang_type GTY(()) {tree t; }; #define SET_TYPE_DIGITS_VALUE(NODE, X) \ SET_TYPE_LANG_SPECIFIC (INTEGER_TYPE_CHECK (NODE), X) -/* For numeric types, stores the RM_Size of the type. */ -#define TYPE_RM_SIZE_NUM(NODE) TYPE_LANG_SLOT_1 (NUMERICAL_TYPE_CHECK (NODE)) - -#define TYPE_RM_SIZE(NODE) \ - (INTEGRAL_TYPE_P (NODE) || TREE_CODE (NODE) == REAL_TYPE \ - ? TYPE_RM_SIZE_NUM (NODE) : 0) - /* For a RECORD_TYPE that is a fat pointer, point to the type for the unconstrained object. Likewise for a RECORD_TYPE that is pointed to by a thin pointer. */ |