blob: e73d1c4ebf055246218e1b103dc9b3890b0e1c0c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#include "DEFS.h"
ENTRY_NB(bcmp)
RETGUARD_SETUP(bcmp, r11)
xorl %eax,%eax /* clear return value */
cld /* set compare direction forward */
movq %rdx,%rcx /* compare by words */
shrq $3,%rcx
repe
cmpsq
jne L1
movq %rdx,%rcx /* compare remainder by bytes */
andq $7,%rcx
repe
cmpsb
je L2
L1: incl %eax
L2: RETGUARD_CHECK(bcmp, r11)
ret
END_WEAK(bcmp)
|