aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2019-01-08 22:35:38 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2019-01-08 22:35:38 +0100
commit8a6b263a82155ddf506ee3e1ad2365961a61610c (patch)
treebf015ffaa8bbe1fa6c736e59e7105eccfc72dcdb
parent903ecc6c2a564e4d3754082e2025e1d80fddf5a4 (diff)
downloadgcc-8a6b263a82155ddf506ee3e1ad2365961a61610c.zip
gcc-8a6b263a82155ddf506ee3e1ad2365961a61610c.tar.gz
gcc-8a6b263a82155ddf506ee3e1ad2365961a61610c.tar.bz2
rs6000.c (rs6000_delegitimize_address): Delegitimize UNSPEC_FUSION_GPR to its argument.
* config/rs6000/rs6000.c (rs6000_delegitimize_address): Delegitimize UNSPEC_FUSION_GPR to its argument. Formatting fixes. From-SVN: r267738
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/rs6000/rs6000.c13
2 files changed, 12 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 18dab7e..3ef7718 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -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
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index a257554..548032f 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -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);
}