replace ulong with usize for all the memory(2) functions. this gets us a step closer to allowing sizeof(usize)==8 Reference: /n/atom/patch/applied/memoryusize Date: Sun Aug 16 05:54:38 CES 2015 Signed-off-by: quanstro@quanstro.net --- /sys/src/fs/port/lib.h Sun Aug 16 05:53:23 2015 +++ /sys/src/fs/port/lib.h Sun Aug 16 05:53:24 2015 @@ -2,16 +2,16 @@ * functions (possibly) linked in, complete, from libc. */ #define nelem(x) (sizeof(x)/sizeof((x)[0])) -#define offsetof(s, m) (ulong)(&(((s*)0)->m)) +#define offsetof(s, m) (usize)(&(((s*)0)->m)) #define assert(x) if(x){}else _assert("x") /* * mem routines */ -extern void* memset(void*, int, ulong); -extern int memcmp(void*, void*, ulong); -extern void* memmove(void*, void*, ulong); -extern void* memchr(void*, int, ulong); +extern void* memset(void*, int, usize); +extern int memcmp(void*, void*, usize); +extern void* memmove(void*, void*, usize); +extern void* memchr(void*, int, usize); /* * string routines --- /sys/src/libc/port/memccpy.c Sun Aug 16 05:53:26 2015 +++ /sys/src/libc/port/memccpy.c Sun Aug 16 05:53:27 2015 @@ -2,7 +2,7 @@ #include void* -memccpy(void *a1, void *a2, int c, ulong n) +memccpy(void *a1, void *a2, int c, usize n) { uchar *s1, *s2; --- /sys/src/libc/port/memchr.c Sun Aug 16 05:53:29 2015 +++ /sys/src/libc/port/memchr.c Sun Aug 16 05:53:30 2015 @@ -2,7 +2,7 @@ #include void* -memchr(void *ap, int c, ulong n) +memchr(void *ap, int c, usize n) { uchar *sp; --- /sys/src/libc/port/memcmp.c Sun Aug 16 05:53:32 2015 +++ /sys/src/libc/port/memcmp.c Sun Aug 16 05:53:33 2015 @@ -2,7 +2,7 @@ #include int -memcmp(void *a1, void *a2, ulong n) +memcmp(void *a1, void *a2, usize n) { uchar *s1, *s2; uint c1, c2; --- /sys/src/libc/port/memmove.c Sun Aug 16 05:53:35 2015 +++ /sys/src/libc/port/memmove.c Sun Aug 16 05:53:36 2015 @@ -2,7 +2,7 @@ #include void* -memmove(void *a1, void *a2, ulong n) +memmove(void *a1, void *a2, usize n) { char *s1, *s2; @@ -29,7 +29,7 @@ } void* -memcpy(void *a1, void *a2, ulong n) +memcpy(void *a1, void *a2, usize n) { return memmove(a1, a2, n); } --- /sys/src/libc/port/memset.c Sun Aug 16 05:53:38 2015 +++ /sys/src/libc/port/memset.c Sun Aug 16 05:53:39 2015 @@ -2,7 +2,7 @@ #include void* -memset(void *ap, int c, ulong n) +memset(void *ap, int c, usize n) { char *p; --- /sys/src/nix/port/lib.h Sun Aug 16 05:53:42 2015 +++ /sys/src/nix/port/lib.h Sun Aug 16 05:53:43 2015 @@ -2,17 +2,17 @@ * functions (possibly) linked in, complete, from libc. */ #define nelem(x) (sizeof(x)/sizeof((x)[0])) -#define offsetof(s, m) (ulong)(&(((s*)0)->m)) +#define offsetof(s, m) (usize)(&(((s*)0)->m)) #define assert(x) if(x){}else _assert("x") /* * mem routines */ -extern void* memccpy(void*, void*, int, ulong); -extern void* memset(void*, int, ulong); -extern int memcmp(void*, void*, ulong); -extern void* memmove(void*, void*, ulong); -extern void* memchr(void*, int, ulong); +extern void* memccpy(void*, void*, int, usize); +extern void* memset(void*, int, usize); +extern int memcmp(void*, void*, usize); +extern void* memmove(void*, void*, usize); +extern void* memchr(void*, int, usize); /* * string routines @@ -60,8 +60,8 @@ extern void free(void*); extern usize msize(void*); extern void* mallocalign(usize, usize, long, usize); -extern void setmalloctag(void*, uintptr); /* compatability with /sys/include/libc.h */ -extern void setrealloctag(void*, uintptr); /* compatability with /sys/include/libc.h */ +extern void setmalloctag(void*, uintptr); /* compatability with /sys/include/libc.h */ +extern void setrealloctag(void*, uintptr); /* compatability with /sys/include/libc.h */ extern uintptr getmalloctag(void*); extern uintptr getrealloctag(void*); extern void* realloc(void*, usize); --- /sys/include/libc.h Sun Aug 16 05:53:46 2015 +++ /sys/include/libc.h Sun Aug 16 05:53:47 2015 @@ -2,18 +2,18 @@ #pragma src "/sys/src/libc" #define nelem(x) (sizeof(x)/sizeof((x)[0])) -#define offsetof(s, m) (ulong)(&(((s*)0)->m)) +#define offsetof(s, m) (usize)(&(((s*)0)->m)) #define assert(x) if(x){}else _assert("x") /* * mem routines */ -extern void* memccpy(void*, void*, int, ulong); -extern void* memset(void*, int, ulong); -extern int memcmp(void*, void*, ulong); -extern void* memcpy(void*, void*, ulong); -extern void* memmove(void*, void*, ulong); -extern void* memchr(void*, int, ulong); +extern void* memccpy(void*, void*, int, usize); +extern void* memset(void*, int, usize); +extern int memcmp(void*, void*, usize); +extern void* memcpy(void*, void*, usize); +extern void* memmove(void*, void*, usize); +extern void* memchr(void*, int, usize); /* * string routines @@ -99,17 +99,17 @@ /* * malloc */ -extern void* malloc(ulong); -extern void* mallocz(ulong, int); +extern void* malloc(usize); +extern void* mallocz(usize, int); extern void free(void*); -extern ulong msize(void*); -extern void* mallocalign(ulong, ulong, long, ulong); -extern void* calloc(ulong, ulong); -extern void* realloc(void*, ulong); -extern void setmalloctag(void*, ulong); -extern void setrealloctag(void*, ulong); -extern ulong getmalloctag(void*); -extern ulong getrealloctag(void*); +extern usize msize(void*); +extern void* mallocalign(usize, usize, long, usize); +extern void* calloc(usize, usize); +extern void* realloc(void*, usize); +extern void setmalloctag(void*, uintptr); +extern void setrealloctag(void*, uintptr); +extern uintptr getmalloctag(void*); +extern uintptr getrealloctag(void*); extern void* malloctopoolblock(void*); /* --- /sys/man/2/memory Sun Aug 16 05:53:49 2015 +++ /sys/man/2/memory Sun Aug 16 05:53:50 2015 @@ -8,22 +8,22 @@ .PP .ta \w'\fLvoid* 'u .B -void* memccpy(void *s1, void *s2, int c, ulong n) +void* memccpy(void *s1, void *s2, int c, usize n) .PP .B -void* memchr(void *s, int c, ulong n) +void* memchr(void *s, int c, usize n) .PP .B -int memcmp(void *s1, void *s2, ulong n) +int memcmp(void *s1, void *s2, usize n) .PP .B -void* memcpy(void *s1, void *s2, ulong n) +void* memcpy(void *s1, void *s2, usize n) .PP .B -void* memmove(void *s1, void *s2, ulong n) +void* memmove(void *s1, void *s2, usize n) .PP .B -void* memset(void *s, int c, ulong n) +void* memset(void *s, int c, usize n) .SH DESCRIPTION These functions operate efficiently on memory areas (arrays of bytes bounded by a count, not terminated by a zero byte).