]> git.pld-linux.org Git - packages/gcc.git/commitdiff
- outdated.
authorPaweł Sikora <pluto@pld-linux.org>
Mon, 21 Nov 2005 16:59:22 +0000 (16:59 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    gcc-pr22533.patch -> 1.3
    gcc-pr22550.patch -> 1.2

gcc-pr22533.patch [deleted file]
gcc-pr22550.patch [deleted file]

diff --git a/gcc-pr22533.patch b/gcc-pr22533.patch
deleted file mode 100644 (file)
index 31df6ce..0000000
+++ /dev/null
@@ -1,167 +0,0 @@
---- gcc/gcc/gimplify.c 20 Jul 2005 01:18:18 -0000      2.142
-+++ gcc/gcc/gimplify.c 24 Jul 2005 10:10:35 -0000
-@@ -298,6 +298,25 @@
-   return lab;
- }
-+static tree
-+gimplify_build_fold_addr_expr (tree t)
-+{
-+  if (TREE_CODE (t) == CONSTRUCTOR)
-+    {
-+      tree new_t;
-+      tree new_var
-+      = create_tmp_var (TREE_TYPE (t), "ATP");
-+      TREE_ADDRESSABLE (new_var) = 1;
-+      TREE_READONLY (new_var) = 1;
-+      DECL_INITIAL (new_var) = t;
-+      new_t = build1 (DECL_EXPR, void_type_node, new_var);
-+      t = build_fold_addr_expr (new_var);
-+      t = build2 (COMPOUND_EXPR, TREE_TYPE (t), new_t, t);
-+      return t;
-+    }
-+  return build_fold_addr_expr (t); 
-+}
-+
- /* Create a new temporary name with PREFIX.  Returns an identifier.  */
- static GTY(()) unsigned int tmp_var_id_num;
-@@ -3224,9 +3243,10 @@
-   t = unshare_expr (t);
-   t = SUBSTITUTE_PLACEHOLDER_IN_EXPR (t, op0);
-   args = tree_cons (NULL, t, NULL);
--  t = build_fold_addr_expr (op1);
-+
-+  t = gimplify_build_fold_addr_expr (op1);
-   args = tree_cons (NULL, t, args);
--  dest = build_fold_addr_expr (op0);
-+  dest = gimplify_build_fold_addr_expr (op0);
-   args = tree_cons (NULL, dest, args);
-   t = implicit_built_in_decls[BUILT_IN_MEMCMP];
-   t = build_function_call_expr (t, args);
-@@ -3443,7 +3463,7 @@
-       op0 = TREE_OPERAND (op0, 0);
-       *expr_p = fold_convert (TREE_TYPE (expr),
--                            build_fold_addr_expr (TREE_OPERAND (op0, 0)));
-+                            gimplify_build_fold_addr_expr (TREE_OPERAND (op0, 0)));
-       ret = GS_OK;
-       break;
-@@ -4473,7 +4493,7 @@
-       /* An lvalue will do.  Take the address of the expression, store it
-        in a temporary, and replace the expression with an INDIRECT_REF of
-        that temporary.  */
--      tmp = build_fold_addr_expr (*expr_p);
-+      tmp = gimplify_build_fold_addr_expr (*expr_p);
-       gimplify_expr (&tmp, pre_p, post_p, is_gimple_reg, fb_rvalue);
-       *expr_p = build1 (INDIRECT_REF, TREE_TYPE (TREE_TYPE (tmp)), tmp);
-     }
---- gcc/gcc/ada/trans.c        20 Jul 2005 01:18:53 -0000      1.101
-+++ gcc/gcc/ada/trans.c        24 Jul 2005 10:10:37 -0000
-@@ -3585,6 +3585,7 @@
-               else
-                 gnu_lhs = DECL_RESULT (current_function_decl);
-+#if 0
-               /* Do not remove the padding from GNU_RET_VAL if the inner
-                  type is self-referential since we want to allocate the fixed
-                  size in that case.  */
-@@ -3596,6 +3597,7 @@
-                   && (CONTAINS_PLACEHOLDER_P
-                       (TYPE_SIZE (TREE_TYPE (gnu_ret_val)))))
-                 gnu_ret_val = TREE_OPERAND (gnu_ret_val, 0);
-+#endif
-               if (TYPE_RETURNS_BY_REF_P (gnu_subprog_type)
-                   || By_Ref (gnat_node))
-@@ -4549,28 +4551,6 @@
-       *expr_p = TREE_OPERAND (*expr_p, 0);
-       return GS_OK;
--    case ADDR_EXPR:
--      /* If we're taking the address of a constant CONSTRUCTOR, force it to
--       be put into static memory.  We know it's going to be readonly given
--       the semantics we have and it's required to be static memory in
--       the case when the reference is in an elaboration procedure.  */
--      if (TREE_CODE (TREE_OPERAND (expr, 0)) == CONSTRUCTOR
--        && TREE_CONSTANT (TREE_OPERAND (expr, 0)))
--      {
--        tree new_var
--          = create_tmp_var (TREE_TYPE (TREE_OPERAND (expr, 0)), "C");
--
--        TREE_READONLY (new_var) = 1;
--        TREE_STATIC (new_var) = 1;
--        TREE_ADDRESSABLE (new_var) = 1;
--        DECL_INITIAL (new_var) = TREE_OPERAND (expr, 0);
--
--        TREE_OPERAND (expr, 0) = new_var;
--        recompute_tree_invarant_for_addr_expr (expr);
--        return GS_ALL_DONE;
--      }
--      return GS_UNHANDLED;
--
-     case COMPONENT_REF:
-       /* We have a kludge here.  If the FIELD_DECL is from a fat pointer and is
-        from an early dummy type, replace it with the proper FIELD_DECL.  */
-@@ -5361,7 +5341,7 @@
-     case UNCONSTRAINED_ARRAY_REF:
-     case INDIRECT_REF:
--    case CONSTRUCTOR:
-+/*    case CONSTRUCTOR:*/
-     case NULL_EXPR:
-     case SAVE_EXPR:
-       return true;
---- gcc/gcc/ada/utils2.c       20 Jul 2005 01:18:55 -0000      1.50
-+++ gcc/gcc/ada/utils2.c       24 Jul 2005 10:10:37 -0000
-@@ -45,6 +45,8 @@
- #include "einfo.h"
- #include "ada-tree.h"
- #include "gigi.h"
-+#include "tree-gimple.h"
-+#include "toplev.h"
- static tree find_common_type (tree, tree);
- static bool contains_save_expr_p (tree);
-@@ -1032,6 +1034,7 @@
-   tree operation_type = result_type;
-   tree result;
-   bool side_effects = false;
-+  tree before = NULL;
-   if (operation_type
-       && TREE_CODE (operation_type) == RECORD_TYPE
-@@ -1150,6 +1153,22 @@
-                               result);
-             break;
-           }
-+        else
-+          {
-+            tree new_var = create_tmp_var_raw (type, "C");
-+            TREE_ADDRESSABLE (new_var) = 1;
-+            TREE_READONLY (new_var) = 1;
-+            if (global_bindings_p ())
-+              TREE_STATIC (new_var) = 1;
-+            DECL_INITIAL (new_var) = operand;
-+            gnat_pushdecl (new_var, Empty);
-+            
-+            if (global_bindings_p ())
-+              rest_of_decl_compilation (new_var, 1, 0);
-+            else
-+              before = build1 (DECL_EXPR, void_type_node, new_var);
-+            operand = new_var;
-+          }
-         goto common;
-@@ -1198,6 +1217,9 @@
-       }
-       TREE_CONSTANT (result) = staticp (operand) || TREE_CONSTANT (operand);
-+      if (before)
-+        result = build2 (COMPOUND_EXPR, TREE_TYPE (result), before,
-+                            result);
-       break;
-     case INDIRECT_REF:
diff --git a/gcc-pr22550.patch b/gcc-pr22550.patch
deleted file mode 100644 (file)
index 281ebae..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-From: ja2morri at csclub dot uwaterloo dot ca (James A dot  Morrison)
-Date: Mon, 25 Jul 2005 10:37:52 -0400
-
-Hi,
-
-This fixes PR22550 by simply returning COND in vrp_evaluate_condition if
-it is an INTEGER_CST.  In PR22550 I believe the if (0) comes from
-merge_seq_blocks which is called after cleanup_control_flow in
-cleanup_tree_cfg.  This patch has been bootstrapped and regtested on ia64-linux
-with no new regressions, ok for mainline?
-
-Thanks,
-Jim
-
-2005-07-25  James A. Morrison  <phython@gcc.gnu.org>
-
-       PR tree-optimization/22550
-       * tree-vrp.c (vrp_evaluate_condition): Return COND if it is an
-       INTEGER_CST.
-
---- gcc/gcc/tree-vrp.c 20 Jul 2005 20:26:00 -0000      2.42
-+++ gcc/gcc/tree-vrp.c 25 Jul 2005 14:22:55 -0000
-@@ -3014,6 +3072,9 @@ compare_names (enum tree_code comp, tree
- tree
- vrp_evaluate_conditional (tree cond, bool use_equiv_p)
- {
-+  if (TREE_CODE (cond) == INTEGER_CST)
-+    return cond;
-+
-   gcc_assert (TREE_CODE (cond) == SSA_NAME
-               || TREE_CODE_CLASS (TREE_CODE (cond)) == tcc_comparison);
This page took 0.058096 seconds and 4 git commands to generate.