]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Merge from CGTUNE branch:
authorJulian Seward <jseward@acm.org>
Sat, 25 Aug 2007 23:25:00 +0000 (23:25 +0000)
committerJulian Seward <jseward@acm.org>
Sat, 25 Aug 2007 23:25:00 +0000 (23:25 +0000)
r6738:
Unroll memset; apparently is popular in some places (kpdf).

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6780

memcheck/mc_replace_strmem.c

index 3db518845be91716eb0bb87556ecbea3aa491ed7..4bc2798efda932c222fdd72f68c46388221eb04a 100644 (file)
@@ -475,10 +475,17 @@ STPCPY(m_ld_linux_x86_64_so_2, stpcpy)
    void* VG_REPLACE_FUNCTION_ZU(soname,fnname)(void *s, Int c, SizeT n) \
    { \
       unsigned char *cp = s; \
- \
-      while(n--) \
+      while (n >= 4) { \
+         cp[0] = c; \
+         cp[1] = c; \
+         cp[2] = c; \
+         cp[3] = c; \
+         cp += 4; \
+         n -= 4; \
+      } \
+      while (n--) { \
          *cp++ = c; \
- \
     } \
       return s; \
    }