From: Per Bothner Date: Tue, 4 Dec 2001 01:24:59 +0000 (-0800) Subject: parse.y (patch_binop): Minor constant folding. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=87d4ad08041d060b51489767a61c6700119d6e8c;p=gcc.git parse.y (patch_binop): Minor constant folding. * parse.y (patch_binop): Minor constant folding. * parse.y (build_current_thisn): Shorter 'buffer'. From-SVN: r47588 --- diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index ca9284ccdd9..ae85b1a1e2e 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,9 @@ +2001-12-03 Per Bothner + + * parse.y (patch_binop): Minor constant folding. + + * parse.y (build_current_thisn): Shorter 'buffer'. + 2001-12-03 Per Bothner * decl.c (complete_start_java_method): Now generate TRY_FINALLY_EXPR diff --git a/gcc/java/parse.y b/gcc/java/parse.y index 09d5cd69d8a..608ec91bc60 100644 --- a/gcc/java/parse.y +++ b/gcc/java/parse.y @@ -8619,7 +8619,7 @@ build_current_thisn (type) static int saved_type_i = 0; static int initialized_p; tree decl; - char buffer [80]; + char buffer [24]; int i = 0; /* Register SAVED_THISN and SAVED_TYPE with the garbage collector. */ @@ -13770,6 +13770,14 @@ patch_binop (node, wfl_op1, wfl_op2) error_found = 1; break; } + else if (integer_zerop (op1)) + { + return code == TRUTH_ANDIF_EXPR ? op1 : op2; + } + else if (integer_onep (op1)) + { + return code == TRUTH_ANDIF_EXPR ? op2 : op1; + } /* The type of the conditional operators is BOOLEAN */ prom_type = boolean_type_node; break;