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]

Re: Delete dead (?) code in expand_expr_real_2


On Tue, Mar 06, 2012 at 06:17:52AM -0500, Richard Kenner wrote:
> > I don't see how a VAR_DECL can ever get a DECL_RTL equal to one of
> > the mentioned regs.
> 
> Doesn't that happen when you have a local variable that's a
> variable-sized object?  What would have changed that would cause it to
> no longer happen? This is tree-level stuff, not RTL.

VLA VAR_DECLs have just DECL_HAS_VALUE_EXPR_P set and DECL_VALUE_EXPR being
INDIRECT_REF (or MEM_REF now?) dereferencing some DECL_ARTIFICIAL VAR_DECL
that is initialized from alloca builtin.    So the VLA VAR_DECLs don't have
any DECL_RTL at all (kept for debug info purposes only), and the artificial
pointer to it will just have as DECL_RTL some pseudo or so.

	Jakub


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