]> git.pld-linux.org Git - packages/gcc.git/commitdiff
- obsolete.
authorPaweł Sikora <pluto@pld-linux.org>
Thu, 7 Jul 2005 19:11:37 +0000 (19:11 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    gcc-pr22051.patch -> 1.3
    gcc-pr22071.patch -> 1.2

gcc-pr22051.patch [deleted file]
gcc-pr22071.patch [deleted file]

diff --git a/gcc-pr22051.patch b/gcc-pr22051.patch
deleted file mode 100644 (file)
index ed4819c..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-       * tree-ssa-dom.c (find_equivalent_equality_comparison): Do not
-       a eliminate type conversion which feeds an equality comparison
-       if the original type or either operand in the comparison is a
-       function pointer. 
-       
-*** gcc/gcc/tree-ssa-dom.c     24 Feb 2005 21:47:26 -0000      2.94
---- gcc/gcc/tree-ssa-dom.c     30 Jun 2005 23:07:18 -0000
-*************** find_equivalent_equality_comparison (tre
-*** 1929,1934 ****
---- 1929,1946 ----
-      {
-        tree def_rhs = TREE_OPERAND (def_stmt, 1);
-  
-+ 
-+       /* If either operand to the comparison is a pointer to
-+       a function, then we can not apply this optimization
-+       as some targets require function pointers to be
-+       canonicalized and in this case this optimization would
-+       eliminate a necessary canonicalization.  */
-+       if ((POINTER_TYPE_P (TREE_TYPE (op0))
-+         && TREE_CODE (TREE_TYPE (TREE_TYPE (op0))) == FUNCTION_TYPE)
-+        || (POINTER_TYPE_P (TREE_TYPE (op1))
-+            && TREE_CODE (TREE_TYPE (TREE_TYPE (op1))) == FUNCTION_TYPE))
-+      return NULL;
-+            
-        /* Now make sure the RHS of the MODIFY_EXPR is a typecast.  */
-        if ((TREE_CODE (def_rhs) == NOP_EXPR
-          || TREE_CODE (def_rhs) == CONVERT_EXPR)
-*************** find_equivalent_equality_comparison (tre
-*** 1942,1947 ****
---- 1954,1969 ----
-             > TYPE_PRECISION (TREE_TYPE (def_rhs)))
-           return NULL;
-  
-+        /* If the inner type of the conversion is a pointer to
-+           a function, then we can not apply this optimization
-+           as some targets require function pointers to be
-+           canonicalized.  This optimization would result in
-+           canonicalization of the pointer when it was not originally
-+           needed/intended.  */
-+        if (POINTER_TYPE_P (def_rhs_inner_type)
-+            && TREE_CODE (TREE_TYPE (def_rhs_inner_type)) == FUNCTION_TYPE)
-+          return NULL;
-+ 
-         /* What we want to prove is that if we convert OP1 to
-            the type of the object inside the NOP_EXPR that the
-            result is still equivalent to SRC. 
diff --git a/gcc-pr22071.patch b/gcc-pr22071.patch
deleted file mode 100644 (file)
index 33b7d4f..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
---- gcc/gcc/tree-ssa-structalias.c     2005/06/30 22:18:35     2.8
-+++ gcc/gcc/tree-ssa-structalias.c     2005/07/01 19:45:23     2.9
-@@ -1940,6 +1940,25 @@
- }
-+/* Return true if an access to [ACCESSPOS, ACCESSSIZE]
-+   overlaps with a field at [FIELDPOS, FIELDSIZE] */
-+
-+static bool
-+offset_overlaps_with_access (const unsigned HOST_WIDE_INT fieldpos,
-+                           const unsigned HOST_WIDE_INT fieldsize,
-+                           const unsigned HOST_WIDE_INT accesspos,
-+                           const unsigned HOST_WIDE_INT accesssize)
-+{
-+  if (fieldpos == accesspos && fieldsize == accesssize)
-+    return true;
-+  if (accesspos >= fieldpos && accesspos <= (fieldpos + fieldsize))
-+    return true;
-+  if (accesspos < fieldpos && (accesspos + accesssize > fieldpos))
-+    return true;
-+  
-+  return false;
-+}
-+
- /* Given a COMPONENT_REF T, return the constraint_expr for it.  */
- static struct constraint_expr
-@@ -2000,8 +2019,27 @@
-        we may have to do something cute here.  */
-       
-       if (result.offset < get_varinfo (result.var)->fullsize) 
--      result.var = first_vi_for_offset (get_varinfo (result.var), 
--                                        result.offset)->id;
-+      {
-+        /* It's also not true that the constraint will actually start at the
-+           right offset, it may start in some padding.  We only care about
-+           setting the constraint to the first actual field it touches, so
-+           walk to find it.  */ 
-+        varinfo_t curr;
-+        for (curr = get_varinfo (result.var); curr; curr = curr->next)
-+          {
-+            if (offset_overlaps_with_access (curr->offset, curr->size,
-+                                             result.offset, bitsize))
-+              {
-+                result.var = curr->id;
-+                break;
-+
-+              }
-+          }
-+        /* assert that we found *some* field there. The user couldn't be
-+           accessing *only* padding.  */
-+           
-+        gcc_assert (curr);
-+      }
-       else
-       if (dump_file && (dump_flags & TDF_DETAILS))
-         fprintf (dump_file, "Access to past the end of variable, ignoring\n");
This page took 0.27311 seconds and 4 git commands to generate.