Lines Matching +full:- +full:16
2 * strrchr - find last position of a character in a string.
4 * Copyright (c) 2020-2023, Arm Limited.
5 * SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception
10 * ARMv8-a, AArch64, Advanced SIMD.
38 For each 16-byte chunk we calculate a 64-bit syndrome value, with
40 and little-endian systems). For each tuple, bits 0-1 are set if
41 the relevant byte matched the requested character; bits 2-3 are set
46 dup vrepchr.16b, chrin
47 movi vrepmask.16b, 0x33
48 ld1 {vdata.16b}, [src]
49 cmeq vhas_nul.16b, vdata.16b, 0
50 cmeq vhas_chr.16b, vdata.16b, vrepchr.16b
51 bit vhas_nul.16b, vhas_chr.16b, vrepmask.16b
63 ldr q1, [src, 16]
64 cmeq vhas_chr.16b, vdata.16b, vrepchr.16b
65 cmhs vhas_nul.16b, vhas_chr.16b, vdata.16b
66 umaxp vend.16b, vhas_nul.16b, vhas_nul.16b
70 cmeq vhas_chr.16b, vdata.16b, vrepchr.16b
71 cmhs vhas_nul.16b, vhas_chr.16b, vdata.16b
72 umaxp vend.16b, vhas_nul.16b, vhas_nul.16b
75 sub src, src, 16
77 add src, src, 16
78 cmeq vhas_nul.16b, vdata.16b, 0
80 bif vhas_nul.16b, vhas_chr.16b, vrepmask.16b
85 bit vhas_nul.16b, vhas_chr.16b, vrepmask.16b
105 add src, src, 16
112 ld1 {vdata.16b}, [src], 16
113 cmeq vhas_nul.16b, vdata.16b, 0
114 cmeq vhas_chr.16b, vdata.16b, vrepchr.16b
115 bit vhas_nul.16b, vhas_chr.16b, vrepmask.16b
116 umaxp vend.16b, vhas_nul.16b, vhas_nul.16b
122 addp vend.16b, vhas_nul.16b, vhas_nul.16b