diff options
| author | steven <steven@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-11-24 11:41:38 +0000 |
|---|---|---|
| committer | steven <steven@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-11-24 11:41:38 +0000 |
| commit | 7d8ca8b7ad7202c662ef55779e9db73f3144e3d6 (patch) | |
| tree | b1c2513f30d70b29ff11a260b5524e5f0785c12c /gcc/java/java-tree.h | |
| parent | 57548910722f59a3ff1f72f72c6370447c2c3314 (diff) | |
| download | ppe42-gcc-7d8ca8b7ad7202c662ef55779e9db73f3144e3d6.tar.gz ppe42-gcc-7d8ca8b7ad7202c662ef55779e9db73f3144e3d6.zip | |
gcc/
* expr.c (expand_expr_real_1): Remove cases for EXIT_BLOCK_EXPR
and LABELED_BLOCK_EXPR.
* gimplify.c (gimplify_labeled_block_expr): Remove.
(gimplify_exit_block_expr): Remove.
(gimplify_expr): Don't call them.
* tree-inline.c (copy_body_r): Don't handle EXIT_BLOCK_EXPR
and LABELED_BLOCK_EXPR.
(estimate_num_insns_1): Likewise.
(walk_tree): Likewise.
* tree-pretty-print.c (dump_generic_node): Don't handle
EXIT_BLOCK_EXPR and LABELED_BLOCK_EXPR.
* tree.def (EXIT_BLOCK_EXPR): Moved to java-tree.def.
(LABELED_BLOCK_EXPR): Likewise.
* tree.h (LABELED_BLOCK_LABEL): Moved to java-tree.h.
(LABELED_BLOCK_BODY): Likewise.
(EXIT_BLOCK_LABELED_BLOCK): Likewise.
(EXIT_BLOCK_RETURN): Removed.
java/
* java-gimplify.c (java_gimplify_labeled_block_expr): New function.
(java_gimplify_exit_block_expr): New function.
(java_gimplify_expr): Use them to gimplify EXIT_BLOCK_EXPR and
LABELED_BLOCK_EXPR.
* java-tree.def (LABELED_BLOCK_EXPR): Moved from tree.def.
(EXIT_BLOCK_EXPR): Likewise.
* java-tree.h (LABELED_BLOCK_LABEL): Moved from tree.h.
(LABELED_BLOCK_BODY): Likewise.
(EXIT_BLOCK_LABELED_BLOCK): Likewise.
* jcf-write.c (generate_bytecode_insns): Don't handle the unused
EXIT_BLOCK_RETURN operand. Use EXIT_BLOCK_LABELED_BLOCK instead of
TREE_OPERAND.
* lang.c (java_tree_inlining_walk_subtrees): Handle EXIT_BLOCK_EXPR.
(java_dump_tree): Use LABELED_BLOCK_LABEL, LABELED_BLOCK_BODY, and
EXIT_BLOCK_LABELED_BLOCK instead of TREE_OPERAND. Don't handle the
second operand of EXIT_BLOCK_EXPR.
* parse.y (find_expr_with_wfl): Use LABELED_BLOCK_BODY instead of
TREE_OPERAND.
(build_bc_statement): Use build1 to build EXIT_BLOCK_EXPR nodes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@91149 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/java/java-tree.h')
| -rw-r--r-- | gcc/java/java-tree.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/java/java-tree.h b/gcc/java/java-tree.h index a43bc2eebe8..558d0f50cc6 100644 --- a/gcc/java/java-tree.h +++ b/gcc/java/java-tree.h @@ -1815,6 +1815,16 @@ enum #undef DEBUG_JAVA_BINDING_LEVELS +/* In a LABELED_BLOCK_EXPR node. */ +#define LABELED_BLOCK_LABEL(NODE) \ + TREE_OPERAND_CHECK_CODE (NODE, LABELED_BLOCK_EXPR, 0) +#define LABELED_BLOCK_BODY(NODE) \ + TREE_OPERAND_CHECK_CODE (NODE, LABELED_BLOCK_EXPR, 1) + +/* In an EXIT_BLOCK_EXPR node. */ +#define EXIT_BLOCK_LABELED_BLOCK(NODE) \ + TREE_OPERAND_CHECK_CODE (NODE, EXIT_BLOCK_EXPR, 0) + /* In an EXPR_WITH_FILE_LOCATION node. */ #define EXPR_WFL_EMIT_LINE_NOTE(NODE) \ (EXPR_WITH_FILE_LOCATION_CHECK (NODE)->common.public_flag) |

