typedef unsigned long long uvlong;
typedef long long intptr;
typedef unsigned long long uintptr;
-typedef unsigned long usize;
+typedef unsigned long long usize;
typedef uint Rune;
typedef union FPdbleword FPdbleword;
typedef uintptr jmp_buf[2];
typedef unsigned long long uvlong;
typedef vlong intptr;
typedef uvlong uintptr;
-typedef unsigned long usize;
+typedef unsigned long long usize;
typedef uint Rune;
typedef union FPdbleword FPdbleword;
typedef uintptr jmp_buf[2];
/*
* 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
.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)
.PP
.B #include <libsec.h>
.PP
/*
* 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
}
void*
-evommem(void *a, void *b, ulong n)
+evommem(void *a, void *b, usize n)
{
return memmove(b, a, n);
}
int
-isnonzero(void *v, ulong n)
+isnonzero(void *v, usize n)
{
uchar *a, *ea;
vlong offset;
long count, tot, n, o;
uchar *blk, *dat;
- void *(*move)(void*, void*, ulong);
+ void *(*move)(void*, void*, usize);
q = r->fid->qid.path-Qpart;
if(q < 0 || q > nelem(tab) || !tab[q].inuse || tab[q].vers != r->fid->qid.vers){
- TEXT memccpy(SB),$0
+TEXT memccpy(SB),$0
- MOVL n+24(FP), CX
- CMPL CX, $0
+ MOVQ n+24(FP), CX
+ CMPQ CX, $0
JEQ none
MOVQ p2+8(FP), DI
MOVBLZX c+16(FP), AX
*/
none:
MOVL $0, AX
- MOVL n+24(FP), BX
+ MOVQ n+24(FP), BX
JMP memcpy
/*
ORQ SI, DX
ANDL $3, DX
JNE c3
- MOVL BX, CX
+ MOVQ BX, CX
SHRQ $2, CX
REP; MOVSL
/*
*/
ANDL $3, BX
c3:
- MOVL BX, CX
+ MOVQ BX, CX
REP; MOVSB
RET
- TEXT memchr(SB),$0
+TEXT memchr(SB),$0
- MOVL n+16(FP), CX
- CMPL CX, $0
+ MOVQ n+16(FP), CX
+ CMPQ CX, $0
JEQ none
MOVQ RARG, DI
MOVBLZX c+8(FP), AX
- TEXT memcmp(SB),$0
+TEXT memcmp(SB),$0
- MOVL n+16(FP), BX
- CMPL BX, $0
+ MOVQ n+16(FP), BX
+ CMPQ BX, $0
JEQ none
MOVQ RARG, DI
MOVQ p2+8(FP), SI
* first by longs
*/
- MOVL BX, CX
+ MOVQ BX, CX
SHRQ $2, CX
REP; CMPSL
*/
ANDL $3, BX
c3:
- MOVL BX, CX
+ MOVQ BX, CX
REP; CMPSB
JNE found1
MOVQ RARG, DI
MOVQ DI, AX /* return value */
MOVQ p2+8(FP), SI
- MOVL n+16(FP), BX
- CMPL BX, $0
+ MOVQ n+16(FP), BX
+ CMPQ BX, $0
JGT _ok
JEQ _return /* nothing to do if n == 0 */
MOVL $0, SI /* fault if n < 0 */
*/
JEQ _return /* flags set by above ANDL */
c3f:
- MOVL BX, CX
+ MOVQ BX, CX
REP; MOVSB
RET
ORQ SI, DX
ANDL $3, DX
JNE c3b
- MOVL BX, CX
+ MOVQ BX, CX
SHRQ $2, CX
ANDL $3, BX
REP; MOVSL
c3b:
ADDQ $3, DI
ADDQ $3, SI
- MOVL BX, CX
+ MOVQ BX, CX
REP; MOVSB
_return:
MOVQ RARG, DI
MOVQ DI, AX /* return value */
MOVQ p2+8(FP), SI
- MOVL n+16(FP), BX
- CMPL BX, $0
+ MOVQ n+16(FP), BX
+ CMPQ BX, $0
JGT _ok
JEQ _return /* nothing to do if n == 0 */
MOVL $0, SI /* fault if n < 0 */
*/
JEQ _return /* flags set by above ANDL */
c3f:
- MOVL BX, CX
+ MOVQ BX, CX
REP; MOVSB
RET
ORQ SI, DX
ANDL $3, DX
JNE c3b
- MOVL BX, CX
+ MOVQ BX, CX
SHRQ $2, CX
ANDL $3, BX
REP; MOVSL
c3b:
ADDQ $3, DI
ADDQ $3, SI
- MOVL BX, CX
+ MOVQ BX, CX
REP; MOVSB
_return:
- TEXT memset(SB),$0
+TEXT memset(SB),$0
CLD
MOVQ RARG, DI
MOVBLZX c+8(FP), AX
- MOVL n+16(FP), BX
+ MOVQ n+16(FP), BX
/*
* if not enough bytes, just set bytes
*/
- CMPL BX, $9
+ CMPQ BX, $9
JLS c3
/*
* if not aligned, just set bytes
TEXT memcpy(SB), $-4
TEXT memmove(SB), $-4
MOV from+8(FP), R1
- MOVWU n+16(FP), R2
+ MOV n+16(FP), R2
CMP R0, R1
BEQ _done
TEXT memset(SB), $-4
MOVBU c+8(FP), R1
- MOVWU n+16(FP), R2
+ MOV n+16(FP), R2
MOV R0, R5
ADD R0, R2, R3
#include <libc.h>
void*
-memccpy(void *a1, void *a2, int c, ulong n)
+memccpy(void *a1, void *a2, int c, usize n)
{
uchar *s1, *s2;
#include <libc.h>
void*
-memchr(void *ap, int c, ulong n)
+memchr(void *ap, int c, usize n)
{
uchar *sp;
#include <libc.h>
int
-memcmp(void *a1, void *a2, ulong n)
+memcmp(void *a1, void *a2, usize n)
{
uchar *s1, *s2;
uint c1, c2;
#include <libc.h>
void*
-memmove(void *a1, void *a2, ulong n)
+memmove(void *a1, void *a2, usize n)
{
char *s1, *s2;
- if((long)n < 0)
- abort();
s1 = a1;
s2 = a2;
if((s2 < s1) && (s2+n > s1))
}
void*
-memcpy(void *a1, void *a2, ulong n)
+memcpy(void *a1, void *a2, usize n)
{
return memmove(a1, a2, n);
}
#include <libc.h>
void*
-memset(void *ap, int c, ulong n)
+memset(void *ap, int c, usize n)
{
char *p;