File:
[gforth] /
gforth /
engine /
memmove.c
Revision
1.2:
download - view:
text,
annotated -
select for diffs
Sun Oct 25 23:15:48 1998 UTC (24 years, 11 months ago) by
pazsan
Branches:
MAIN
CVS tags:
HEAD
SHARC-porting aids that benefit generally:
Cross: Added non-byte-addressed architectures as possible target (not hosts
yet).
Rest: all types are now Gforth-private types (so you could define as Char
whatever you where like). Some messing around with inabilities of Analog
Devices port of GCC.
1: /* a memmove implementation
2:
3: Copyright (C) 1995 Free Software Foundation, Inc.
4:
5: This file is part of Gforth.
6:
7: Gforth is free software; you can redistribute it and/or
8: modify it under the terms of the GNU General Public License
9: as published by the Free Software Foundation; either version 2
10: of the License, or (at your option) any later version.
11:
12: This program is distributed in the hope that it will be useful,
13: but WITHOUT ANY WARRANTY; without even the implied warranty of
14: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15: GNU General Public License for more details.
16:
17: You should have received a copy of the GNU General Public License
18: along with this program; if not, write to the Free Software
19: Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20: */
21:
22: #include "forth.h"
23:
24: Char *memmove(Char *dest, const Char *src, Cell n)
25: {
26: Cell i;
27:
28: if (dest<src)
29: for (i=0; i<n; i++)
30: dest[i]=src[i];
31: else
32: for(i=n-1; i>=0; i--)
33: dest[i]=src[i];
34: return dest;
35: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>