Commit | Line | Data |
---|---|---|
18cdae68 DM |
1 | /* Sparc optimized memcmp code. |
2 | * | |
3 | * Copyright (C) 1997 Jakub Jelinek (jj@sunsite.mff.cuni.cz) | |
4 | * Copyright (C) 2000, 2008 David S. Miller (davem@davemloft.net) | |
5 | */ | |
6 | ||
7 | #include <linux/linkage.h> | |
8 | #include <asm/asm.h> | |
d3867f04 | 9 | #include <asm/export.h> |
18cdae68 DM |
10 | |
11 | .text | |
12 | ENTRY(memcmp) | |
13 | cmp %o2, 0 | |
14 | 1: BRANCH32(be, pn, 2f) | |
15 | nop | |
16 | ldub [%o0], %g7 | |
17 | ldub [%o1], %g3 | |
18 | sub %o2, 1, %o2 | |
19 | add %o0, 1, %o0 | |
20 | add %o1, 1, %o1 | |
21 | subcc %g7, %g3, %g3 | |
22 | BRANCH32(be, pt, 1b) | |
23 | cmp %o2, 0 | |
24 | retl | |
25 | mov %g3, %o0 | |
26 | 2: retl | |
27 | mov 0, %o0 | |
28 | ENDPROC(memcmp) | |
d3867f04 | 29 | EXPORT_SYMBOL(memcmp) |