summaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
authorBruce Momjian1998-02-11 21:45:40 +0000
committerBruce Momjian1998-02-11 21:45:40 +0000
commit1e3c5b0ab5408e7b2fbad71c1137414bc7ae1f78 (patch)
tree801459146e73d87f75631d82c2dc699e54107ce4 /src/include
parente16640903385910cb6eea613f3a3badf6f25404e (diff)
Memset cleanup
Diffstat (limited to 'src/include')
-rw-r--r--src/include/c.h20
1 files changed, 9 insertions, 11 deletions
diff --git a/src/include/c.h b/src/include/c.h
index c97d5e3b1bd..9b4db686b61 100644
--- a/src/include/c.h
+++ b/src/include/c.h
@@ -7,7 +7,7 @@
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: c.h,v 1.32 1998/02/11 21:38:08 momjian Exp $
+ * $Id: c.h,v 1.33 1998/02/11 21:45:40 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -708,20 +708,18 @@ typedef struct Exception
/* Get a bit mask of the bits set in non-int32 aligned addresses */
#define INT_ALIGN_MASK (sizeof(int32) - 1)
-/* This function gets call too often, so we inline it if we can */
+/*
+ * This function gets call too often, so we inline it if we can.
+ * Are we aligned for int32?
+ * We have to cast the pointer to int so we can do the AND
+ * We got the 64 number by testing this against the stock memset() on
+ * BSD/OS 3.0. Larger values were slower.
+ */
#define MemSet(start, val, len) do \
- { /* are we aligned for int32? */ \
- /* We have to cast the pointer to int \
- so we can do the AND */ \
+ {
if (((long)(start) & INT_ALIGN_MASK) == 0 && \
((len) & INT_ALIGN_MASK) == 0 && \
(val) == 0 && \
- /* \
- * We got this number by testing this \
- * against the stock memset() on \
- * bsd/os 3.0. Larger values were \
- * slower. \
- */ \
(len) <= 64) \
{ \
int32 *_i = (int32 *)(start); \