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]

[patch] Remove unreachable code from update_alias_info


Hello,

there is a piece of code in update_alias_info that handles the case when
a base variable of a ssa name (that is a non-virtual use in stmt) may be aliased.
This never happens.

Bootstrapped & regtested on i686.

Zdenek

	* tree-ssa-structalias.c (update_alias_info): Remove handling
	of may_be_aliased (SSA_NAME_VAR (op)) case.

Index: tree-ssa-structalias.c
===================================================================
*** tree-ssa-structalias.c	(revision 108520)
--- tree-ssa-structalias.c	(working copy)
*************** update_alias_info (tree stmt, struct ali
*** 3011,3021 ****
        var = SSA_NAME_VAR (op);
        v_ann = var_ann (var);
  
!       /* If the operand's variable may be aliased, keep track of how
! 	 many times we've referenced it.  This is used for alias
! 	 grouping in compute_flow_insensitive_aliasing.  */
!       if (may_be_aliased (var))
! 	NUM_REFERENCES_INC (v_ann);
  
        /* We are only interested in pointers.  */
        if (!POINTER_TYPE_P (TREE_TYPE (op)))
--- 3011,3019 ----
        var = SSA_NAME_VAR (op);
        v_ann = var_ann (var);
  
!       /* The base variable of a ssa name must be a gimple reg, and thus
! 	 it cannot be aliased.  */
!       gcc_assert (!may_be_aliased (var));
  
        /* We are only interested in pointers.  */
        if (!POINTER_TYPE_P (TREE_TYPE (op)))


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