This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH][alias-improvements] Do not walk VOPs during GC
- From: Richard Guenther <rguenther at suse dot de>
- To: gcc-patches at gcc dot gnu dot org
- Date: Sat, 28 Feb 2009 21:40:15 +0100 (CET)
- Subject: [PATCH][alias-improvements] Do not walk VOPs during GC
This makes us not walk VOPs from statements during GC to avoid deep
recursion via the def-stmt links. We mark VOPs when iterating over
the ssa_names vector instead.
Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to the
branch.
Richard.
2009-02-28 Richard Guenther <rguenther@suse.de>
* gimple.h (struct gimple_statement_with_memory_ops_base):
Mark vdef and vuse members with GTY((skip (""))).
Index: gcc/gimple.h
===================================================================
*** gcc/gimple.h (revision 144472)
--- gcc/gimple.h (working copy)
*************** struct gimple_statement_with_memory_ops_
*** 364,372 ****
struct gimple_statement_with_ops_base opbase;
/* [ WORD 8-9 ]
! Virtual operands for this statement. */
! tree vdef;
! tree vuse;
};
--- 364,373 ----
struct gimple_statement_with_ops_base opbase;
/* [ WORD 8-9 ]
! Virtual operands for this statement. The GC will pick them
! up via the ssa_names array. */
! tree GTY((skip (""))) vdef;
! tree GTY((skip (""))) vuse;
};