This is the mail archive of the
mailing list for the GCC project.
Re: i * i is nonnegative
- From: Jeff Law <law at redhat dot com>
- To: Marc Glisse <marc dot glisse at inria dot fr>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Tue, 19 Mar 2013 10:21:42 -0600
- Subject: Re: i * i is nonnegative
- References: <alpine dot DEB dot 2 dot 02 dot 1303191659110 dot 4515 at stedding dot saclay dot inria dot fr>
On 03/19/2013 10:08 AM, Marc Glisse wrote:
Fine for the trunk. Though I would suggest waiting for http service &
web archives to return before committing.
this patch extends the property that x*x is non-negative, which was
already known for floats, to integers with undefined overflow.
2013-03-19 Marc Glisse <email@example.com>
* fold-const.c (tree_binary_nonnegative_warnv_p) <MULT_EXPR>:
Also handle integers with undefined overflow.
* gcc.dg/pr56355-1.c: New file.
BTW, did you check if VRP creates a non-negative range for this case as