summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authoryufeng <yufeng@138bc75d-0d04-0410-961f-82ee72b054a4>2013-06-27 12:30:11 +0000
committeryufeng <yufeng@138bc75d-0d04-0410-961f-82ee72b054a4>2013-06-27 12:30:11 +0000
commit7f2c00e604347c09feb2fc32618bf6277b315d67 (patch)
treef695c20bfb4a21e15985e685bf649b50eef9520a /gcc
parentaa32e7ce9cc6abc329b251a261bd9842c34ae3b3 (diff)
downloadgcc-7f2c00e604347c09feb2fc32618bf6277b315d67.tar.gz
gcc/
* config/aarch64/aarch64.c (aarch64_add_offset): Change to pass 'mode' to aarch64_plus_immediate and gen_rtx_PLUS. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200466 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/aarch64/aarch64.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d1d1113bfc5..5398537904e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2013-06-27 Yufeng Zhang <yufeng.zhang@arm.com>
+
+ * config/aarch64/aarch64.c (aarch64_add_offset): Change to pass
+ 'mode' to aarch64_plus_immediate and gen_rtx_PLUS.
+
2013-06-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.c: Rename UNSPEC_CCU_TO_INT to
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index 527b00dbcaa..81c6fd9f57d 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -804,7 +804,7 @@ aarch64_force_temporary (rtx x, rtx value)
static rtx
aarch64_add_offset (enum machine_mode mode, rtx temp, rtx reg, HOST_WIDE_INT offset)
{
- if (!aarch64_plus_immediate (GEN_INT (offset), DImode))
+ if (!aarch64_plus_immediate (GEN_INT (offset), mode))
{
rtx high;
/* Load the full offset into a register. This
@@ -812,7 +812,7 @@ aarch64_add_offset (enum machine_mode mode, rtx temp, rtx reg, HOST_WIDE_INT off
high = GEN_INT (offset);
offset = 0;
high = aarch64_force_temporary (temp, high);
- reg = aarch64_force_temporary (temp, gen_rtx_PLUS (Pmode, high, reg));
+ reg = aarch64_force_temporary (temp, gen_rtx_PLUS (mode, high, reg));
}
return plus_constant (mode, reg, offset);
}