OSDN Git Service

2004-08-07 H.J. Lu <hongjiu.lu@intel.com>
authorhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 7 Aug 2004 16:34:00 +0000 (16:34 +0000)
committerhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 7 Aug 2004 16:34:00 +0000 (16:34 +0000)
* config/i386/i386.c (ix86_expand_clrmem): Properly call
gen_strset for 64bit target.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85673 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/i386/i386.c

index 7cd55d3..11aaa96 100644 (file)
@@ -1,3 +1,8 @@
+2004-08-07  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config/i386/i386.c (ix86_expand_clrmem): Properly call
+       gen_strset for 64bit target.
+
 2004-08-07  Olivier Hainque  <hainque@act-europe.fr>
 
        * config/vxworks.h (HANDLE_SYSV_PRAGMA): Remove definition.
index 9515734..e1e2027 100644 (file)
@@ -11569,7 +11569,10 @@ ix86_expand_clrmem (rtx dst, rtx count_exp, rtx align_exp)
                rtx mem = adjust_automodify_address_nv (dst,
                                                        GET_MODE (zeroreg),
                                                        destreg, offset);
-               emit_insn (gen_strset (destreg, mem, zeroreg));
+               emit_insn (gen_strset (destreg, mem,
+                                      (TARGET_64BIT
+                                       ? gen_rtx_SUBREG (SImode, zeroreg, 0)
+                                       : zeroreg)));
                offset += size;
              }
          else