[tree-ssa] Lowering of VLA's, part 2

Zdenek Dvorak rakdver@atrey.karlin.mff.cuni.cz
Wed Aug 27 22:00:00 GMT 2003


Hello,

> >     gimplify_stmt (&BIND_EXPR_BODY (bind_expr));
> > +   if (gimplify_ctxp->save_stack)
> > +     {
> > +       tree stack_save, stack_restore;
> > + 
> > +       /* Save stack on entry and restore it on exit.  Add a try_finally
> > + 	 block to achieve this.  */
> > +       build_stack_save_restore (&stack_save, &stack_restore); 
> > +       add_tree (stack_save, pre_p);
> > +       BIND_EXPR_BODY (bind_expr) = build (TRY_FINALLY_EXPR, void_type_node,
> > + 					  BIND_EXPR_BODY (bind_expr),
> > + 					  stack_restore);
> 
> The stack save should also go inside the BIND_EXPR, but before the
> TRY_FINALLY_EXPR.
> 
> Also, you need to make sure that you don't add these again if the BIND_EXPR
> gets gimplified again.

is there some standard way to achieve this, or do I have to devise some
ugly hack for it?

Zdenek



More information about the Gcc-patches mailing list