summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2021-09-06 15:42:08 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2021-09-06 15:42:08 +0200
commit798f70c52c076720249059ee014782d2b26cf591 (patch)
treebc31d12ba6646b24865bf92fcd6876739ec887a5
parentb20505fac12f2118b6639790e27917f0609c933d (diff)
libc: Avoid dead code in memset()
-rw-r--r--cpukit/libc/string/memset.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/cpukit/libc/string/memset.c b/cpukit/libc/string/memset.c
index e8e667a241..168272642e 100644
--- a/cpukit/libc/string/memset.c
+++ b/cpukit/libc/string/memset.c
@@ -29,7 +29,7 @@ QUICKREF
#include <string.h>
#include "local.h"
-#define LBLOCKSIZE (sizeof(long))
+#define LBLOCKSIZE (__SIZEOF_LONG__)
#define UNALIGNED(X) ((long)X & (LBLOCKSIZE - 1))
#define TOO_SMALL(LEN) ((LEN) < LBLOCKSIZE)
@@ -65,8 +65,10 @@ memset (void *m,
we can set large blocks quickly. */
buffer = (d << 8) | d;
buffer |= (buffer << 16);
+#if LBLOCKSIZE > 4
for (i = 32; i < LBLOCKSIZE * 8; i <<= 1)
buffer = (buffer << i) | buffer;
+#endif
/* Unroll the loop. */
while (n >= LBLOCKSIZE*4)