From: Julian Seward Date: Sat, 25 Aug 2007 23:25:00 +0000 (+0000) Subject: Merge from CGTUNE branch: X-Git-Tag: svn/VALGRIND_3_3_0~238 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=acf1f14d7ad2eaeb53a0e4a18581cdd3dce144d9;p=thirdparty%2Fvalgrind.git Merge from CGTUNE branch: r6738: Unroll memset; apparently is popular in some places (kpdf). git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6780 --- diff --git a/memcheck/mc_replace_strmem.c b/memcheck/mc_replace_strmem.c index 3db518845b..4bc2798efd 100644 --- a/memcheck/mc_replace_strmem.c +++ b/memcheck/mc_replace_strmem.c @@ -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; \ }