On 12/11/13 02:51, Richard Biener wrote:
+ /* If inversion is needed, first try to invert the test since
+ that's cheapest. */
+ if (invert)
+ {
+ enum tree_code new_code
+ = invert_tree_comparison (cond_code,
+ HONOR_NANS (TYPE_MODE (TREE_TYPE (rhs))));
That looks wrong - you want to look at HONOR_NANS on the mode
of one of the comparison operands, not of the actual value you want
to negate (it's integer and thus never has NaNs).
HONOR_NANS (TYPE_MODE (TREE_TYPE (gimple_cond_lhs (cond))))
Right?
Jeff