29 lines
847 B
Diff
29 lines
847 B
Diff
2009-04-22 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
* alias.c (find_base_term): Move around LO_SUM case, so that
|
|
CONST falls through into PLUS/MINUS handling.
|
|
|
|
--- gcc/alias.c.jj 2009-04-21 11:16:28.000000000 +0200
|
|
+++ gcc/alias.c 2009-04-21 12:44:18.000000000 +0200
|
|
@@ -1438,15 +1438,16 @@ find_base_term (rtx x)
|
|
return x;
|
|
return 0;
|
|
|
|
+ case LO_SUM:
|
|
+ /* The standard form is (lo_sum reg sym) so look only at the
|
|
+ second operand. */
|
|
+ return find_base_term (XEXP (x, 1));
|
|
+
|
|
case CONST:
|
|
x = XEXP (x, 0);
|
|
if (GET_CODE (x) != PLUS && GET_CODE (x) != MINUS)
|
|
return 0;
|
|
/* Fall through. */
|
|
- case LO_SUM:
|
|
- /* The standard form is (lo_sum reg sym) so look only at the
|
|
- second operand. */
|
|
- return find_base_term (XEXP (x, 1));
|
|
case PLUS:
|
|
case MINUS:
|
|
{
|