This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFA][PATCH] Improve VRP of COND_EXPR_CONDs


On Sat, Apr 6, 2013 at 2:48 PM, Jeff Law wrote:
>
> Given something like this:

...and the other one from earlier today. Nice finds! :-)

> +  /* If we have a comparison of a SSA_NAME boolean against
> +     a constant (which obviously must be [0..1]).  See if the

"...be [0..1]), see if ..."


> +      if (!SSA_NAME_OCCURS_IN_ABNORMAL_PHI (innerop))
> +       {
> +         value_range_t *vr = get_value_range (innerop);
> +

I don't think the SSA_NAME_OCCURS_IN_ABNORMAL_PHI test is necessary,
get_value_range() will simply return a !VR_RANGE.

> +          if (vr->type == VR_RANGE
> +             && operand_equal_p (vr->min, integer_zero_node, 0)
> +             && operand_equal_p (vr->max, integer_one_node, 0))
> +           {

Better use range_int_cst_p(vr) followed by compare_tree_int instead of
operand_equal_p IMHO.

Print something to dump_file?

Ciao!
Steven


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]