s390.h (MOVE_MAX): Define to correct value.
authorUlrich Weigand <uweigand@de.ibm.com>
Tue, 10 Sep 2002 18:46:06 +0000 (18:46 +0000)
committerUlrich Weigand <uweigand@gcc.gnu.org>
Tue, 10 Sep 2002 18:46:06 +0000 (18:46 +0000)
* config/s390/s390.h (MOVE_MAX): Define to correct value.
(MAX_MOVE_MAX): Define.
(MOVE_BY_PIECES_P): Define.
(CLEAR_BY_PIECES_P): Define.

From-SVN: r57010

gcc/ChangeLog
gcc/config/s390/s390.h

index 1bad2c6751515d2e8c7a1fbeb2a3eb578dd6116c..6242b777d9e323f95ef39e9315277180807847d9 100644 (file)
@@ -1,3 +1,10 @@
+2002-09-10  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * config/s390/s390.h (MOVE_MAX): Define to correct value.
+       (MAX_MOVE_MAX): Define.
+       (MOVE_BY_PIECES_P): Define.
+       (CLEAR_BY_PIECES_P): Define.
+
 2002-09-10  Denis Chertykov  <denisc@overta.ru>
 
        * config/avr/avr.md (movstrhi): Use right operands for conversion.
index 781dc2ea7e42ee15e3140d2804660f96b41bc064..40b94f0b1a22b339f2351b440e876ff00d451971 100644 (file)
@@ -1035,10 +1035,23 @@ CUMULATIVE_ARGS;
 
 #define DEFAULT_SIGNED_CHAR 0
 
-/* Max number of bytes we can move from memory to memory in one reasonably
-   fast instruction.  */
+/* The maximum number of bytes that a single instruction can move quickly
+   between memory and registers or between two memory locations. */
 
-#define MOVE_MAX 256
+#define MOVE_MAX (TARGET_64BIT ? 16 : 8)
+#define MAX_MOVE_MAX 16
+
+/* Determine whether to use move_by_pieces or block move insn.  */
+
+#define MOVE_BY_PIECES_P(SIZE, ALIGN)          \
+  ( (SIZE) == 1 || (SIZE) == 2 || (SIZE) == 4  \
+    || (TARGET_64BIT && (SIZE) == 8) )
+
+/* Determine whether to use clear_by_pieces or block clear insn.  */
+
+#define CLEAR_BY_PIECES_P(SIZE, ALIGN)         \
+  ( (SIZE) == 1 || (SIZE) == 2 || (SIZE) == 4  \
+    || (TARGET_64BIT && (SIZE) == 8) )
 
 /* Nonzero if access to memory by bytes is slow and undesirable.  */