aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Edelsohn <edelsohn@mhpcc.edu>1998-08-20 10:50:39 +0000
committerDavid Edelsohn <dje@gcc.gnu.org>1998-08-20 06:50:39 -0400
commit3345af62e8a3064c5571b5f4a625d35a7ffe5f52 (patch)
treec10e850e5d1f29f88308bf1b9e124195449d8ba0
parent7771032e793152b7bb0ab1a9606e0d7383f8dcde (diff)
downloadgcc-3345af62e8a3064c5571b5f4a625d35a7ffe5f52.zip
gcc-3345af62e8a3064c5571b5f4a625d35a7ffe5f52.tar.gz
gcc-3345af62e8a3064c5571b5f4a625d35a7ffe5f52.tar.bz2
* rs6000.md (movqi, movhi): Add CONSTANT_P_RTX.
From-SVN: r21873
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/rs6000/rs6000.md8
2 files changed, 10 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 16292f4..a1e5c23 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+Thu Aug 20 13:44:20 1998 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * rs6000.md (movqi, movhi): Add CONSTANT_P_RTX.
+
Thu Aug 20 13:15:11 1998 Dave Brolley <brolley@cygnus.com>
* stor-layout.c (layout_type): Compute TYPE_SIZE_UNIT correctly for
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md
index eb46a0f..22b587c 100644
--- a/gcc/config/rs6000/rs6000.md
+++ b/gcc/config/rs6000/rs6000.md
@@ -5568,7 +5568,9 @@
if (GET_CODE (operands[0]) != REG)
operands[1] = force_reg (HImode, operands[1]);
- if (CONSTANT_P (operands[1]) && GET_CODE (operands[1]) != CONST_INT)
+ if (CONSTANT_P (operands[1])
+ && GET_CODE (operands[1]) != CONST_INT
+ && GET_CODE (operands[1]) != CONSTANT_P_RTX)
{
operands[1] = force_const_mem (HImode, operands[1]);
if (! memory_address_p (HImode, XEXP (operands[1], 0))
@@ -5603,7 +5605,9 @@
if (GET_CODE (operands[0]) != REG)
operands[1] = force_reg (QImode, operands[1]);
- if (CONSTANT_P (operands[1]) && GET_CODE (operands[1]) != CONST_INT)
+ if (CONSTANT_P (operands[1])
+ && GET_CODE (operands[1]) != CONST_INT
+ && GET_CODE (operands[1]) != CONSTANT_P_RTX)
{
operands[1] = force_const_mem (QImode, operands[1]);
if (! memory_address_p (QImode, XEXP (operands[1], 0))