arc: flip if-condition predicates in secondary reload hook
authorClaudiu Zissulescu <claziss@synopsys.com>
Tue, 29 Dec 2020 11:30:05 +0000 (13:30 +0200)
committerClaudiu Zissulescu <claziss@synopsys.com>
Tue, 29 Dec 2020 11:41:20 +0000 (13:41 +0200)
The ARC code contains code which should only work with the old reload
pass. Such code is found in arc_secondary_reload hook, however it was
not properly quarded. Reverse the if-condition predicate such that
req_equiv_mem is called when lra is not in progress.

gcc/
2020-12-29  Claudiu Zissulescu  <claziss@synopsys.com>

* config/arc/arc.c (arc_secondary_reload): Flip if-condition
predicates.

Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
gcc/config/arc/arc.c

index d0a52ee8b8db51b8904226899d6f0a1aafde8efa..fb672c75ff45249c906acdab580553cc38a72877 100644 (file)
@@ -901,7 +901,7 @@ arc_secondary_reload (bool in_p,
 
          /* It is a pseudo that ends in a stack location.  This
             procedure only works with the old reload step.  */
-         if (reg_equiv_mem (REGNO (x)) && !lra_in_progress)
+         if (!lra_in_progress && reg_equiv_mem (REGNO (x)))
            {
              /* Get the equivalent address and check the range of the
                 offset.  */