This is the mail archive of the
mailing list for the GCC project.
Re: VRP: abstract out MIN/MAX/ABS wide int code
On 08/20/2018 06:40 PM, Jeff Law wrote:
On 08/17/2018 01:11 AM, Aldy Hernandez wrote:
No change in functionality, just a straight up conversion.
OK for trunk?
* wide-int-range.cc (wide_int_range_abs): New.
(wide_int_range_order_set): Rename from wide_int_range_min_max.
* wide-int-range.h (wide_int_range_abs): New.
* tree-vrp.c (extract_range_from_unary_expr): Rewrite ABS_EXPR
case to call wide_int_range_abs.
Rewrite MIN/MAX_EXPR to call wide_int_range_min_max.
OK. It was a bit hard to follow because parts of the original
implementation were split and handled in different places. But AFAICT
it looks like everything got transferred to their new locations.
That was my bad.
ABS_EXPR was convoluted because when I started this work I had a
different approach and had abstracted it into
extract_range_from_abs_expr(). That was before I had settled into
splitting the wide int implementation from the VRP use.