This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[tree-ssa] Minor cleanups



	* ssa.c: Revert caching of immediate dominators change made on
	Jan 28, 2003.

	* tree-dfa.c: Fix comment.

Index: ssa.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/ssa.c,v
retrieving revision 1.52.2.9
diff -c -3 -p -r1.52.2.9 ssa.c
*** ssa.c	12 Feb 2003 19:52:02 -0000	1.52.2.9
--- ssa.c	21 Feb 2003 15:47:38 -0000
*************** struct rename_context;
*** 170,177 ****
  static inline rtx * phi_alternative
    PARAMS ((rtx, int));
  static void compute_dominance_frontiers_1
!   PARAMS ((bitmap *frontiers, dominance_info idom, int bb,
! 	   sbitmap done, basic_block * cached_idoms));
  static void find_evaluations_1
    PARAMS ((rtx dest, rtx set, void *data));
  static void find_evaluations
--- 170,176 ----
  static inline rtx * phi_alternative
    PARAMS ((rtx, int));
  static void compute_dominance_frontiers_1
!   PARAMS ((bitmap *frontiers, dominance_info idom, int bb, sbitmap done));
  static void find_evaluations_1
    PARAMS ((rtx dest, rtx set, void *data));
  static void find_evaluations
*************** find_evaluations (evals, nregs)
*** 520,531 ****
  */
  
  static void
! compute_dominance_frontiers_1 (frontiers, idom, bb, done, cached_idoms)
       bitmap *frontiers;
       dominance_info idom;
       int bb;
       sbitmap done;
-      basic_block *cached_idoms;
  {
    basic_block b = BASIC_BLOCK (bb);
    edge e;
--- 519,529 ----
  */
  
  static void
! compute_dominance_frontiers_1 (frontiers, idom, bb, done)
       bitmap *frontiers;
       dominance_info idom;
       int bb;
       sbitmap done;
  {
    basic_block b = BASIC_BLOCK (bb);
    edge e;
*************** compute_dominance_frontiers_1 (frontiers
*** 567,574 ****
        {
          c = BASIC_BLOCK (i);
          if (! TEST_BIT (done, c->index))
!           compute_dominance_frontiers_1 (frontiers, idom, c->index,
! 				         done, cached_idoms);
        });
        
    /* Find blocks conforming to rule (1) above.  */
--- 565,571 ----
        {
          c = BASIC_BLOCK (i);
          if (! TEST_BIT (done, c->index))
!           compute_dominance_frontiers_1 (frontiers, idom, c->index, done);
        });
        
    /* Find blocks conforming to rule (1) above.  */
*************** compute_dominance_frontiers_1 (frontiers
*** 576,582 ****
      {
        if (e->dest == EXIT_BLOCK_PTR)
  	continue;
!       if (cached_idoms[e->dest->index]->index != bb)
          bitmap_set_bit (frontiers[bb], e->dest->index);
      }
  
--- 573,579 ----
      {
        if (e->dest == EXIT_BLOCK_PTR)
  	continue;
!       if (get_immediate_dominator (idom, e->dest)->index != bb)
          bitmap_set_bit (frontiers[bb], e->dest->index);
      }
  
*************** compute_dominance_frontiers_1 (frontiers
*** 589,595 ****
  
          EXECUTE_IF_SET_IN_BITMAP (frontiers[c->index], 0, x,
  	  {
! 	    if (cached_idoms[BASIC_BLOCK (x)->index]->index != bb)
  	      bitmap_set_bit (frontiers[bb], x);
  	  });
        });
--- 586,592 ----
  
          EXECUTE_IF_SET_IN_BITMAP (frontiers[c->index], 0, x,
  	  {
! 	    if (get_immediate_dominator (idom, BASIC_BLOCK (x))->index != bb)
  	      bitmap_set_bit (frontiers[bb], x);
  	  });
        });
*************** compute_dominance_frontiers (frontiers, 
*** 605,625 ****
       bitmap *frontiers;
       dominance_info idom;
  {
-   basic_block bb, *cached_idoms;
    sbitmap done = sbitmap_alloc (last_basic_block);
  
    timevar_push (TV_DOM_FRONTIERS);
  
    sbitmap_zero (done);
  
!   cached_idoms = xmalloc (n_basic_blocks * sizeof (bb));
  
-   FOR_EACH_BB (bb)
-     cached_idoms[bb->index] = get_immediate_dominator (idom, bb);
- 
-   compute_dominance_frontiers_1 (frontiers, idom, 0, done, cached_idoms);
- 
-   free (cached_idoms);
    sbitmap_free (done);
  
    timevar_pop (TV_DOM_FRONTIERS);
--- 602,615 ----
       bitmap *frontiers;
       dominance_info idom;
  {
    sbitmap done = sbitmap_alloc (last_basic_block);
  
    timevar_push (TV_DOM_FRONTIERS);
  
    sbitmap_zero (done);
  
!   compute_dominance_frontiers_1 (frontiers, idom, 0, done);
  
    sbitmap_free (done);
  
    timevar_pop (TV_DOM_FRONTIERS);
Index: tree-dfa.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/Attic/tree-dfa.c,v
retrieving revision 1.1.4.80
diff -c -3 -p -r1.1.4.80 tree-dfa.c
*** tree-dfa.c	20 Feb 2003 19:09:06 -0000	1.1.4.80
--- tree-dfa.c	21 Feb 2003 15:47:41 -0000
*************** find_vars_r (tp, walk_subtrees, data)
*** 2190,2196 ****
     same tree.
     
     Also add VAR to the ALIASED_OBJECTS set of varrays that are needed for
!    alias analysis.  DATA is an array with three two tables used to avoid
     adding the same variable more than once to its corresponding set as
     well as a bit indicating if we're processing a load or store.  Note
     that this function assumes that VAR is a valid SSA variable.  */
--- 2190,2196 ----
     same tree.
     
     Also add VAR to the ALIASED_OBJECTS set of varrays that are needed for
!    alias analysis.  DATA is an array with two hash tables used to avoid
     adding the same variable more than once to its corresponding set as
     well as a bit indicating if we're processing a load or store.  Note
     that this function assumes that VAR is a valid SSA variable.  */



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]