This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Patent on aligned memcpy



I am sure there are other examples of this as well.  A quick search on
source I have turned up:

newlib:
   libc/machine/hppa/memcpy.S (Copyright 1986) 
netbsd:
    arch/arm32/arm32/bcopyinout.S (Copyright 1990)
    arch/powerpc/powerpc/bcopy.c (Copyright 1990)
    lib/libkern/arch/i386/bcopy.S (Copyright 1990)
    lib/libkern/arch/m68k/bcopy.S (Copyright 1990)

4.4BSD-Lite:
    usr/src/lib/libc/luna68k/string/bcopy.s (Copyright 1990)
    usr/src/lib/libc/mips/string/bcopy.s (Copyright 1991)

I am sure that if I dug into older source files, I could find older
exmples.  I remember that early versions of the Intel GNU/960 toolset has
a memcpy which could do things in 16-byte chunks where possible.

--joel
   

On Thu, 20 Aug 1998, Geoff Keating wrote:

> >From sysdeps/generic/memcopy.h in the glibc distribution:
> 
> /* memcopy.h -- definitions for memory copy functions.  Generic C version.
>    Copyright (C) 1991, 1992, 1993, 1997 Free Software Foundation, Inc.
>    Contributed by Torbjorn Granlund (tege@sics.se).
> ...
> /* The strategy of the memory functions is:
> 
>      1. Copy bytes until the destination pointer is aligned.
> 
>      2. Copy words in unrolled loops.  If the source and destination
>      are not aligned in the same way, use word memory operations,
>      but shift and merge two read words before writing.
> 
>      3. Copy the few remaining bytes.
> 
> 
> So, if anyone wants to contest it...
> 
> -- 
> Geoffrey Keating <geoffk@ozemail.com.au>
> 



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]