lsr x6, x3, #2
lsl x1, x1, x3
ldrb w7, [x5, x6]
- cbz x1, 2f
lsl x1, x1, #4
add w0, w0, w7
cbnz x1, 1b
ret
-2:
- add w0, w0, w7
-0:
- ret
9:
mov w0, #9
+0:
ret
endfunc
.endm
clz x3, x1
lsl x1, x1, x3
ldrb w7, [x5, x3]
- cbz x1, 2f
lsl x1, x1, #1
add w0, w0, w7
cbnz x1, 1b
ret
-2:
- add w0, w0, w7
-0:
- ret
9:
mov w0, #9
+0:
ret
endfunc
sub x0, x0, #2
.endif
.if \size < 15
- .equ shiftw, 3
ld1 {v0.8h}, [x0]
uqxtn v0.8b, v0.8h
cmtst v0.8b, v0.8b, v0.8b
.else
- .equ shiftw, 2
ld1 {v0.8h,v1.8h}, [x0]
uqxtn v0.8b, v0.8h
uqxtn2 v0.16b, v1.8h
coeff_level_run_start \size
- coeff_level_run shiftw
+ coeff_level_run (4 - (\size + 1) / 8)
ret
endfunc