diff options
author | Alexandre Petit-Bianco <apbianco@cygnus.com> | 1998-10-05 15:36:16 -0700 |
---|---|---|
committer | Per Bothner <bothner@gcc.gnu.org> | 1998-10-05 15:36:16 -0700 |
commit | 70e6ca43a3a5a9d9a319c5c827f5db7513c1d0e3 (patch) | |
tree | e9db46839308f2a73cfea7d3abddd8c7623f4e67 /gcc/expr.c | |
parent | c27be9b9fcdefd81b8259a894de4e345692d8cce (diff) | |
download | gcc-70e6ca43a3a5a9d9a319c5c827f5db7513c1d0e3.tar.gz |
tree.def (GOTO_EXPR): Modified documentation.
8
* tree.def (GOTO_EXPR): Modified documentation.
* expr.c (expand_expr): Expand GOTO_EXPR into a goto or a computed
goto.
From-SVN: r22859
Diffstat (limited to 'gcc/expr.c')
-rw-r--r-- | gcc/expr.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/expr.c b/gcc/expr.c index 445f1516156..adb2d4ad1f9 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -5919,6 +5919,13 @@ expand_expr (exp, target, tmode, modifier) placeholder_list = TREE_CHAIN (placeholder_list); return target; + case GOTO_EXPR: + if (TREE_CODE (TREE_OPERAND (exp, 0)) == LABEL_DECL) + expand_goto (TREE_OPERAND (exp, 0)); + else + expand_computed_goto (TREE_OPERAND (exp, 0)); + return const0_rtx; + case EXIT_EXPR: expand_exit_loop_if_false (NULL_PTR, invert_truthvalue (TREE_OPERAND (exp, 0))); |