OSDN Git Service

* stor-layout.c (layout_type): Remove obsolete code.
authorebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 21 Sep 2009 05:55:22 +0000 (05:55 +0000)
committerebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 21 Sep 2009 05:55:22 +0000 (05:55 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151913 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/stor-layout.c

index 1f06b5d..47c3dfb 100644 (file)
@@ -1,3 +1,7 @@
+2009-09-21  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * stor-layout.c (layout_type): Remove obsolete code.
+
 2009-09-20  H.J. Lu  <hongjiu.lu@intel.com>
 
        PR middle-end/41395
index 8ff286c..18360bb 100644 (file)
@@ -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);
          }