expr.c (emit_block_move_via_movmem): Fix expected_align parameter.
authorRaksit Ashok <raksit@google.com>
Tue, 8 Jul 2008 22:17:07 +0000 (22:17 +0000)
committerRaksit Ashok <raksit@gcc.gnu.org>
Tue, 8 Jul 2008 22:17:07 +0000 (22:17 +0000)
2008-07-08  Raksit Ashok  <raksit@google.com>

* expr.c (emit_block_move_via_movmem): Fix expected_align parameter.
(set_storage_via_setmem): Fix expected_align parameter.
* doc/invoke.texi (i386 and x86-64 Options): Add a couple of options
missing from the list.
* doc/md.texi (movmem): Explicitly state that expected alignment is
to be expressed in bytes.
(setmem): Explicitly state that expected alignment is to be expressed
in bytes.

From-SVN: r137646

gcc/ChangeLog
gcc/doc/invoke.texi
gcc/doc/md.texi
gcc/expr.c

index 5ba91fc8e35881a65212cdcc3cde964c067a23fc..376fb12edd181c5395b120dafd956577799b124d 100644 (file)
@@ -1,3 +1,14 @@
+2008-07-08  Raksit Ashok  <raksit@google.com>
+
+       * expr.c (emit_block_move_via_movmem): Fix expected_align parameter.
+       (set_storage_via_setmem): Fix expected_align parameter.
+       * doc/invoke.texi (i386 and x86-64 Options): Add a couple of options
+       missing from the list.
+       * doc/md.texi (movmem): Explicitly state that expected alignment is
+       to be expressed in bytes.
+       (setmem): Explicitly state that expected alignment is to be expressed
+       in bytes.
+
 2008-07-08  Joseph Myers  <joseph@codesourcery.com>
 
        * reload.c (find_reloads_subreg_address): Do not require validity
index 29f5534c377c6d66f575a0a3b8d76b5be2cc011e..689f8381e1b744bb1e15a3faac025ad0f3690c45 100644 (file)
@@ -559,6 +559,7 @@ Objective-C and Objective-C++ Dialects}.
 -maes -mpclmul @gol
 -msse4a -m3dnow -mpopcnt -mabm -msse5 @gol
 -mthreads  -mno-align-stringops  -minline-all-stringops @gol
+-minline-stringops-dynamically -mstringop-strategy=@var{alg} @gol
 -mpush-args  -maccumulate-outgoing-args  -m128bit-long-double @gol
 -m96bit-long-double  -mregparm=@var{num}  -msseregparm @gol
 -mveclibabi=@var{type} -mpc32 -mpc64 -mpc80 -mstackrealign @gol
index c0018a77d12a72e1e7c5009b19ec2f5ca90a9dab..c96fd56619cbf6c352c7bc2eb58fcb2c2ad66ea1 100644 (file)
@@ -4217,7 +4217,8 @@ it may provide the value 4 for this operand.
 Optional operands 5 and 6 specify expected alignment and size of block
 respectively.  The expected alignment differs from alignment in operand 4
 in a way that the blocks are not required to be aligned according to it in
-all cases. Expected size, when unknown, is set to @code{(const_int -1)}.
+all cases. This expected alignment is also in bytes, just like operand 4.
+Expected size, when unknown, is set to @code{(const_int -1)}.
 
 Descriptions of multiple @code{movmem@var{m}} patterns can only be
 beneficial if the patterns for smaller modes have fewer restrictions
@@ -4254,7 +4255,8 @@ operand.
 Optional operands 5 and 6 specify expected alignment and size of block
 respectively.  The expected alignment differs from alignment in operand 4
 in a way that the blocks are not required to be aligned according to it in
-all cases. Expected size, when unknown, is set to @code{(const_int -1)}.
+all cases. This expected alignment is also in bytes, just like operand 4.
+Expected size, when unknown, is set to @code{(const_int -1)}.
 
 The use for multiple @code{setmem@var{m}} is as for @code{movmem@var{m}}.
 
index 33616d6900ef4b8e0d297fcbfbdb8712d4d106b7..e7c24e2b838671e48962baa755eff9a0d6cd7551 100644 (file)
@@ -1360,7 +1360,8 @@ emit_block_move_via_movmem (rtx x, rtx y, rtx size, unsigned int align,
            pat = GEN_FCN ((int) code) (x, y, op2, opalign);
          else
            pat = GEN_FCN ((int) code) (x, y, op2, opalign,
-                                       GEN_INT (expected_align),
+                                       GEN_INT (expected_align
+                                                / BITS_PER_UNIT),
                                        GEN_INT (expected_size));
          if (pat)
            {
@@ -2780,7 +2781,8 @@ set_storage_via_setmem (rtx object, rtx size, rtx val, unsigned int align,
            pat = GEN_FCN ((int) code) (object, opsize, opchar, opalign);
          else
            pat = GEN_FCN ((int) code) (object, opsize, opchar, opalign,
-                                       GEN_INT (expected_align),
+                                       GEN_INT (expected_align
+                                                / BITS_PER_UNIT),
                                        GEN_INT (expected_size));
          if (pat)
            {