Mercurial > hg > xemacs-beta
diff src/gmalloc.c @ 398:74fd4e045ea6 r21-2-29
Import from CVS: tag r21-2-29
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:13:30 +0200 |
parents | e11d67e05968 |
children | 2f8bb876ab1d |
line wrap: on
line diff
--- a/src/gmalloc.c Mon Aug 13 11:12:06 2007 +0200 +++ b/src/gmalloc.c Mon Aug 13 11:13:30 2007 +0200 @@ -25,8 +25,6 @@ # define STDC_HEADERS #endif -#define __const const - /* DO NOT EDIT THIS FILE -- it is automagically generated. -*- C -*- */ /* Bwaa-haa-haa! Not a chance that this is actually true! */ @@ -273,7 +271,7 @@ /* Call WARNFUN with a warning message when memory usage is high. */ extern void memory_warnings __P ((__ptr_t __start, - void (*__warnfun) __P ((__const char *)))); + void (*__warnfun) __P ((const char *)))); #if 0 /* unused in this file, and conflicting prototypes anyway */ @@ -1018,79 +1016,6 @@ #include <malloc.h> #endif -#if 0 /* FSFmacs */ -/* XEmacs requires an ANSI compiler, and memmove() is part of the ANSI- - mandated functions. For losing systems like SunOS 4, we provide - our own memmove(). */ - -#if (defined (MEMMOVE_MISSING) || \ - !defined(_LIBC) && !defined(STDC_HEADERS) && !defined(USG)) - -/* Snarfed directly from Emacs src/dispnew.c: - XXX Should use system bcopy if it handles overlap. */ -#ifndef emacs - -/* Like bcopy except never gets confused by overlap. */ - -static void -safe_bcopy (char *from, char *to, int size) -{ - if (size <= 0 || from == to) - return; - - /* If the source and destination don't overlap, then bcopy can - handle it. If they do overlap, but the destination is lower in - memory than the source, we'll assume bcopy can handle that. */ - if (to < from || from + size <= to) - bcopy (from, to, size); - - /* Otherwise, we'll copy from the end. */ - else - { - char *endf = from + size; - char *endt = to + size; - - /* If TO - FROM is large, then we should break the copy into - nonoverlapping chunks of TO - FROM bytes each. However, if - TO - FROM is small, then the bcopy function call overhead - makes this not worth it. The crossover point could be about - anywhere. Since I don't think the obvious copy loop is too - bad, I'm trying to err in its favor. */ - if (to - from < 64) - { - do - *--endt = *--endf; - while (endf != from); - } - else - { - for (;;) - { - endt -= (to - from); - endf -= (to - from); - - if (endt < to) - break; - - bcopy (endf, endt, to - from); - } - - /* If SIZE wasn't a multiple of TO - FROM, there will be a - little left over. The amount left over is - (endt + (to - from)) - to, which is endt - from. */ - bcopy (from, to, endt - from); - } - } -} -#endif /* Not emacs. */ - -#define memmove(to, from, size) safe_bcopy ((from), (to), (size)) - -#endif - -#endif /* FSFmacs */ - - #ifndef min #define min(A, B) ((A) < (B) ? (A) : (B)) #endif