Both ira-color.c and lra-spills.c contain this code, where
-Wlogical-not-parentheses would warn:
!FRAME_GROWS_DOWNWARD == STACK_GROWS_DOWNWARD
I think the condition is semantically right, so I just tweaked it
into a more common way with !=, so we don't warn on this anymore.

Bootstrapped/regtested on x86_64-linux, ok for trunk?

2014-08-21  Marek Polacek  <pola...@redhat.com>

        PR c/61271
        * ira-color.c (coalesced_pseudo_reg_slot_compare): Fix condition.
        * lra-spills.c (pseudo_reg_slot_compare): Fix condition.

diff --git gcc/ira-color.c gcc/ira-color.c
index 36c3c87..14958ac 100644
--- gcc/ira-color.c
+++ gcc/ira-color.c
@@ -3850,7 +3850,7 @@ coalesced_pseudo_reg_slot_compare (const void *v1p, const 
void *v2p)
   slot_num2 = -ALLOCNO_HARD_REGNO (a2);
   if ((diff = slot_num1 - slot_num2) != 0)
     return (frame_pointer_needed
-           || !FRAME_GROWS_DOWNWARD == STACK_GROWS_DOWNWARD ? diff : -diff);
+           || (FRAME_GROWS_DOWNWARD != STACK_GROWS_DOWNWARD) ? diff : -diff);
   total_size1 = MAX (PSEUDO_REGNO_BYTES (regno1),
                     regno_max_ref_width[regno1]);
   total_size2 = MAX (PSEUDO_REGNO_BYTES (regno2),
diff --git gcc/lra-spills.c gcc/lra-spills.c
index 50f63fc..0d14685 100644
--- gcc/lra-spills.c
+++ gcc/lra-spills.c
@@ -237,7 +237,7 @@ pseudo_reg_slot_compare (const void *v1p, const void *v2p)
   slot_num2 = pseudo_slots[regno2].slot_num;
   if ((diff = slot_num1 - slot_num2) != 0)
     return (frame_pointer_needed
-           || !FRAME_GROWS_DOWNWARD == STACK_GROWS_DOWNWARD ? diff : -diff);
+           || (FRAME_GROWS_DOWNWARD != STACK_GROWS_DOWNWARD) ? diff : -diff);
   total_size1 = GET_MODE_SIZE (lra_reg_info[regno1].biggest_mode);
   total_size2 = GET_MODE_SIZE (lra_reg_info[regno2].biggest_mode);
   if ((diff = total_size2 - total_size1) != 0)

        Marek

Reply via email to