2
Copyright (C) 2011 Free Software Foundation, Inc.
3
Contributed by Intel Corporation.
4
This file is part of the GNU C Library.
6
The GNU C Library is free software; you can redistribute it and/or
7
modify it under the terms of the GNU Lesser General Public
8
License as published by the Free Software Foundation; either
9
version 2.1 of the License, or (at your option) any later version.
11
The GNU C Library is distributed in the hope that it will be useful,
12
but WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
Lesser General Public License for more details.
16
You should have received a copy of the GNU Lesser General Public
17
License along with the GNU C Library; if not, write to the Free
18
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
21
#if !defined NOT_IN_libc && (defined SHARED || defined USE_AS_STRCAT)
23
# ifndef USE_AS_STRCAT
29
.section .text.sse2,"ax",@progbits
30
ENTRY (__strlen_sse2_pminub)
62
pcmpeqb 16(%rax), %xmm0
67
pcmpeqb 32(%rax), %xmm1
72
pcmpeqb 48(%rax), %xmm2
77
pcmpeqb 64(%rax), %xmm3
82
pcmpeqb 80(%rax), %xmm0
88
pcmpeqb 32(%rax), %xmm1
93
pcmpeqb 48(%rax), %xmm2
98
pcmpeqb 64(%rax), %xmm3
103
pcmpeqb 80(%rax), %xmm0
109
pcmpeqb 32(%rax), %xmm1
114
pcmpeqb 48(%rax), %xmm2
119
pcmpeqb 64(%rax), %xmm3
124
pcmpeqb 80(%rax), %xmm0
130
pcmpeqb 32(%rax), %xmm1
135
pcmpeqb 48(%rax), %xmm2
140
pcmpeqb 64(%rax), %xmm3
149
pcmpeqb 80(%rax), %xmm0
158
pcmpeqb 16(%rax), %xmm1
167
pcmpeqb 16(%rax), %xmm2
176
pcmpeqb 16(%rax), %xmm3
186
pminub 16(%rax), %xmm4
187
movaps 32(%rax), %xmm5
188
pminub 48(%rax), %xmm5
197
pcmpeqb -64(%rax), %xmm0
203
pcmpeqb 32(%rax), %xmm1
208
pcmpeqb 48(%rax), %xmm2
213
pcmpeqb 64(%rax), %xmm3
255
# ifndef USE_AS_STRCAT
258
END (__strlen_sse2_pminub)