OSDN Git Service

* calls.c (expand_call): Only destroy temporaries at the end
authormrs <mrs@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 13 May 1994 00:19:57 +0000 (00:19 +0000)
committermrs <mrs@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 13 May 1994 00:19:57 +0000 (00:19 +0000)
commit34e2ddcdb6cfa92b20f2311a554553ec66dfccae
tree3f07160e300eeeba7a188bb0fe8b6d16a89335b0
parent88ecd17009e4b6573467ef3a7c642b5bde0d28d1
    * 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7289 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/calls.c
gcc/emit-rtl.c
gcc/expr.c
gcc/flags.h
gcc/toplev.c
gcc/tree.def