calls.c (expand_call): Only destroy temporaries at the end of function calls, if...
authorMike Stump <mrs@gcc.gnu.org>
Fri, 13 May 1994 00:19:57 +0000 (00:19 +0000)
committerMike Stump <mrs@gcc.gnu.org>
Fri, 13 May 1994 00:19:57 +0000 (00:19 +0000)
commit5dab5552a1f1e1a025b47ff2732e1ddaa6febae0
tree3f07160e300eeeba7a188bb0fe8b6d16a89335b0
parent51b8fc2c697ae80971166d44acd18a1cb2c0d19b
calls.c (expand_call): Only destroy temporaries at the end of function calls, if flag_short_temps is set.

        * calls.c (expand_call): Only destroy temporaries at the end
        of function calls, if flag_short_temps is set.
        * expr.c (safe_from_p, expand_expr): Handle CLEANUP_POINT_EXPRs.
        * expr.c (expand_expr): Improve handling of temporaries inside
        COND_EXPRs, cures call to sorry.
        * expr.c (defer_cleanups_to): New routine to handle the deferral
        of cleanups.
        * flags.h (flag_short_temps): New flag, to allow better control
        over the lifetime of temporaries.
        * toplev.c (flag_short_temps, lang_options): Ditto.
        * tree.def (CLEANUP_POINT_EXPR): Add, to allow better control over
        the lifetime of temporaries.

From-SVN: r7289
gcc/calls.c
gcc/emit-rtl.c
gcc/expr.c
gcc/flags.h
gcc/toplev.c
gcc/tree.def