This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Fix some type issues in the middle-end
- From: Eric Botcazou <ebotcazou at adacore dot com>
- To: Richard Guenther <rguenther at suse dot de>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Thu, 12 Jul 2007 12:41:23 +0200
- Subject: Re: [PATCH] Fix some type issues in the middle-end
- References: <Pine.LNX.4.64.0707121227550.5645@zhemvz.fhfr.qr>
> This fixes mismatched types generated in the middle-end that were
> exposed by bootstrapping & testing ada. With this patch all default
> languages and ada bootstrap with the type-checker.
Great achievement! Thanks for testing Ada.
> *************** fold_binary (enum tree_code code, tree t
> *** 10271,10277 ****
> if (integer_zerop (arg1))
> return non_lvalue (fold_convert (type, arg0));
> if (integer_all_onesp (arg1))
> ! return fold_build1 (BIT_NOT_EXPR, type, arg0);
> if (operand_equal_p (arg0, arg1, 0))
> return omit_one_operand (type, integer_zero_node, arg0);
>
> --- 10271,10277 ----
> if (integer_zerop (arg1))
> return non_lvalue (fold_convert (type, arg0));
> if (integer_all_onesp (arg1))
> ! return fold_build1 (BIT_NOT_EXPR, type, op0);
> if (operand_equal_p (arg0, arg1, 0))
> return omit_one_operand (type, integer_zero_node, arg0);
This hunk doesn't look very intuitive. Maybe a small comment?
--
Eric Botcazou