Home | History | Annotate | Line # | Download | only in libiberty
      1      1.1     skrll /* memset
      2      1.1     skrll    This implementation is in the public domain.  */
      3      1.1     skrll 
      4      1.1     skrll /*
      5      1.1     skrll 
      6  1.1.1.2  christos @deftypefn Supplemental void* memset (void *@var{s}, int @var{c}, @
      7  1.1.1.2  christos   size_t @var{count})
      8      1.1     skrll 
      9      1.1     skrll Sets the first @var{count} bytes of @var{s} to the constant byte
     10      1.1     skrll @var{c}, returning a pointer to @var{s}.
     11      1.1     skrll 
     12      1.1     skrll @end deftypefn
     13      1.1     skrll 
     14      1.1     skrll */
     15      1.1     skrll 
     16      1.1     skrll #include <ansidecl.h>
     17      1.1     skrll #include <stddef.h>
     18      1.1     skrll 
     19  1.1.1.3  christos void *
     20  1.1.1.3  christos memset (void *dest, register int val, register size_t len)
     21      1.1     skrll {
     22      1.1     skrll   register unsigned char *ptr = (unsigned char*)dest;
     23      1.1     skrll   while (len-- > 0)
     24      1.1     skrll     *ptr++ = val;
     25      1.1     skrll   return dest;
     26      1.1     skrll }
     27