diff options
author | Richard Henderson <rth@redhat.com> | 2004-06-08 09:29:57 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2004-06-08 09:29:57 -0700 |
commit | 7187798577a9a9035d1d492d1686217ff5ca30d7 (patch) | |
tree | 916bbf6a5966ddcddcc46c35c1346ae0899e2b22 /gcc/tree-gimple.c | |
parent | de101ad2f75511c715a846770e3cd446e49f882c (diff) | |
download | gcc-7187798577a9a9035d1d492d1686217ff5ca30d7.zip gcc-7187798577a9a9035d1d492d1686217ff5ca30d7.tar.gz gcc-7187798577a9a9035d1d492d1686217ff5ca30d7.tar.bz2 |
gimple-low.c (struct lower_data): Replace the_return_label and one_return_stmt with return_statements.
* gimple-low.c (struct lower_data): Replace the_return_label and
one_return_stmt with return_statements.
(lower_function_body): Process the entire list of return_statements.
(lower_return_expr): Check source value before unifying return_exprs.
* gimplify.c (gimplify_return_expr): Force the use of a temporary
for !aggregate_value_p.
* tree-gimple.c: Update RETURN_EXPR grammer.
From-SVN: r82768
Diffstat (limited to 'gcc/tree-gimple.c')
-rw-r--r-- | gcc/tree-gimple.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/tree-gimple.c b/gcc/tree-gimple.c index 4643ac6..d3231c0 100644 --- a/gcc/tree-gimple.c +++ b/gcc/tree-gimple.c @@ -79,7 +79,9 @@ Boston, MA 02111-1307, USA. */ GOTO_EXPR op0 -> LABEL_DECL | '*' ID | RETURN_EXPR - op0 -> RESULT_DECL | NULL_TREE + op0 -> NULL_TREE + | RESULT_DECL + | MODIFY_EXPR -> RESULT_DECL, varname | THROW_EXPR? do we need/want such a thing for opts, perhaps to generate an ERT_THROW region? I think so. Hmm...this would only work at the GIMPLE level, where we know that |