rs6000.c (rs6000_delegitimize_address): Delegitimize UNSPEC_FUSION_GPR to its argument.
authorJakub Jelinek <jakub@redhat.com>
Tue, 8 Jan 2019 21:35:38 +0000 (22:35 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Tue, 8 Jan 2019 21:35:38 +0000 (22:35 +0100)
* config/rs6000/rs6000.c (rs6000_delegitimize_address): Delegitimize
UNSPEC_FUSION_GPR to its argument.  Formatting fixes.

From-SVN: r267738

gcc/ChangeLog
gcc/config/rs6000/rs6000.c

index 18dab7e686470768e49936aae087b574e727bbfa..3ef77184b994288b82bc08c8630757b0ef29c80e 100644 (file)
@@ -1,3 +1,8 @@
+2019-01-08  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/rs6000/rs6000.c (rs6000_delegitimize_address): Delegitimize
+       UNSPEC_FUSION_GPR to its argument.  Formatting fixes.
+
 2019-01-08  Eric Botcazou  <ebotcazou@adacore.com>
 
        PR bootstrap/88721
index a25755418ea20bfce2621dacdc9d15c3c5c2b7e0..548032f56752174ef9c732a1e407af3ed73dd439 100644 (file)
@@ -8388,14 +8388,17 @@ rs6000_delegitimize_address (rtx orig_x)
 {
   rtx x, y, offset;
 
+  if (GET_CODE (orig_x) == UNSPEC && XINT (orig_x, 1) == UNSPEC_FUSION_GPR)
+    orig_x = XVECEXP (orig_x, 0, 0);
+
   orig_x = delegitimize_mem_from_attrs (orig_x);
+
   x = orig_x;
   if (MEM_P (x))
     x = XEXP (x, 0);
 
   y = x;
-  if (TARGET_CMODEL != CMODEL_SMALL
-      && GET_CODE (y) == LO_SUM)
+  if (TARGET_CMODEL != CMODEL_SMALL && GET_CODE (y) == LO_SUM)
     y = XEXP (y, 1);
 
   offset = NULL_RTX;
@@ -8407,8 +8410,7 @@ rs6000_delegitimize_address (rtx orig_x)
       y = XEXP (y, 0);
     }
 
-  if (GET_CODE (y) == UNSPEC
-      && XINT (y, 1) == UNSPEC_TOCREL)
+  if (GET_CODE (y) == UNSPEC && XINT (y, 1) == UNSPEC_TOCREL)
     {
       y = XVECEXP (y, 0, 0);
 
@@ -8435,8 +8437,7 @@ rs6000_delegitimize_address (rtx orig_x)
       && GET_CODE (XEXP (orig_x, 1)) == CONST)
     {
       y = XEXP (XEXP (orig_x, 1), 0);
-      if (GET_CODE (y) == UNSPEC
-         && XINT (y, 1) == UNSPEC_MACHOPIC_OFFSET)
+      if (GET_CODE (y) == UNSPEC && XINT (y, 1) == UNSPEC_MACHOPIC_OFFSET)
        return XVECEXP (y, 0, 0);
     }