summaryrefslogtreecommitdiff
path: root/gcc/stor-layout.c
diff options
context:
space:
mode:
authorebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>2009-09-21 05:55:22 +0000
committerebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>2009-09-21 05:55:22 +0000
commitf00a8c410398ad5e71d76107d50b4e51362557ac (patch)
tree51af1a212be0bb000965f32bdc30d8b8569d4703 /gcc/stor-layout.c
parent7e0b573f947f18728eccc30e0f4bc1d84fea5152 (diff)
downloadgcc-f00a8c410398ad5e71d76107d50b4e51362557ac.tar.gz
* stor-layout.c (layout_type): Remove obsolete code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151913 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/stor-layout.c')
-rw-r--r--gcc/stor-layout.c33
1 files changed, 6 insertions, 27 deletions
diff --git a/gcc/stor-layout.c b/gcc/stor-layout.c
index 8ff286cb813..18360bb422d 100644
--- a/gcc/stor-layout.c
+++ b/gcc/stor-layout.c
@@ -1956,8 +1956,8 @@ layout_type (tree type)
{
tree ub = TYPE_MAX_VALUE (index);
tree lb = TYPE_MIN_VALUE (index);
+ tree element_size = TYPE_SIZE (element);
tree length;
- tree element_size;
/* The initial subtraction should happen in the original type so
that (possible) negative values are handled appropriately. */
@@ -1968,23 +1968,6 @@ layout_type (tree type)
TREE_TYPE (lb),
ub, lb)));
- /* Special handling for arrays of bits (for Chill). */
- element_size = TYPE_SIZE (element);
- if (TYPE_PACKED (type) && INTEGRAL_TYPE_P (element)
- && (integer_zerop (TYPE_MAX_VALUE (element))
- || integer_onep (TYPE_MAX_VALUE (element)))
- && host_integerp (TYPE_MIN_VALUE (element), 1))
- {
- HOST_WIDE_INT maxvalue
- = tree_low_cst (TYPE_MAX_VALUE (element), 1);
- HOST_WIDE_INT minvalue
- = tree_low_cst (TYPE_MIN_VALUE (element), 1);
-
- if (maxvalue - minvalue == 1
- && (maxvalue == 1 || maxvalue == 0))
- element_size = integer_one_node;
- }
-
/* If neither bound is a constant and sizetype is signed, make
sure the size is never negative. We should really do this
if *either* bound is non-constant, but this is the best
@@ -1998,15 +1981,11 @@ layout_type (tree type)
fold_convert (bitsizetype,
length));
- /* If we know the size of the element, calculate the total
- size directly, rather than do some division thing below.
- This optimization helps Fortran assumed-size arrays
- (where the size of the array is determined at runtime)
- substantially.
- Note that we can't do this in the case where the size of
- the elements is one bit since TYPE_SIZE_UNIT cannot be
- set correctly in that case. */
- if (TYPE_SIZE_UNIT (element) != 0 && ! integer_onep (element_size))
+ /* If we know the size of the element, calculate the total size
+ directly, rather than do some division thing below. This
+ optimization helps Fortran assumed-size arrays (where the
+ size of the array is determined at runtime) substantially. */
+ if (TYPE_SIZE_UNIT (element))
TYPE_SIZE_UNIT (type)
= size_binop (MULT_EXPR, TYPE_SIZE_UNIT (element), length);
}