diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-02-21 09:38:07 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-02-21 09:38:07 +0000 |
commit | 751ff693d4e96f89332de028a21995f47ce4d620 (patch) | |
tree | 9acaddca083fdd255ba2f0c1f7b3920dd211da9d /gcc/tree.def | |
parent | b194358018f737bca23084dd5d1a2834783a6f1a (diff) | |
download | gcc-751ff693d4e96f89332de028a21995f47ce4d620.tar.gz |
2008-02-21 Richard Guenther <rguenther@suse.de>
* tree.def (PAREN_EXPR): New tree code.
* fold-const.c (fold_unary): Remove PAREN_EXPR around constants
and PAREN_EXPR.
* tree-pretty-print.c (dump_generic_node): Handle PAREN_EXPR.
* expr.c (expand_expr_real_1): Likewise.
* tree-inline.c (estimate_num_insns_1): Likewise.
* tree-complex.c (expand_complex_move): Likewise.
* tree-vectorizer.c (vect_is_simple_use): Treat PAREN_EXPR (x)
as plain x.
* trans-expr.c (gfc_conv_expr_op): Expand INTRINSIC_PARENTHESES
as unary PAREN_EXPR for real and complex typed expressions.
(gfc_conv_unary_op): Fold the built tree.
* gfortran.dg/reassoc_1.f90: New testcase.
* gfortran.dg/reassoc_2.f90: Likewise.
* gfortran.dg/reassoc_3.f90: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@132515 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree.def')
-rw-r--r-- | gcc/tree.def | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/tree.def b/gcc/tree.def index 5693749a51f..f485e4b25c9 100644 --- a/gcc/tree.def +++ b/gcc/tree.def @@ -733,6 +733,10 @@ DEFTREECODE (LTGT_EXPR, "ltgt_expr", tcc_comparison, 2) DEFTREECODE (RANGE_EXPR, "range_expr", tcc_binary, 2) +/* Represents a re-association barrier for floating point expressions + like explicit parenthesis in fortran. */ +DEFTREECODE (PAREN_EXPR, "paren_expr", tcc_unary, 1) + /* Represents a conversion of type of a value. All conversions, including implicit ones, must be represented by CONVERT_EXPR or NOP_EXPR nodes. */ |