diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ac79f4fe8e98..f788b9991f02 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2014-09-22 Alan Lawrence + + * fold-const.c (tree_swap_operands_p): Strip only sign-preserving NOPs. + 2014-09-22 Richard Biener * gimplify.c (gimplify_init_constructor): Do not leave diff --git a/gcc/fold-const.c b/gcc/fold-const.c index 5cfc6461a4bf..9f1bc098ed34 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -6647,8 +6647,8 @@ tree_swap_operands_p (const_tree arg0, const_tree arg1, bool reorder) if (CONSTANT_CLASS_P (arg0)) return 1; - STRIP_NOPS (arg0); - STRIP_NOPS (arg1); + STRIP_SIGN_NOPS (arg0); + STRIP_SIGN_NOPS (arg1); if (TREE_CONSTANT (arg1)) return 0;