.macro cond op | |
.irp cond, eq, ne, gt, ge, lt, le | |
it \cond | |
\op\().s16 q0, q1, #4 | |
.endr | |
.endm | |
.syntax unified | |
.thumb | |
vshllt.s32 q0, q1, #1 | |
vshllt.i8 q0, q1, #1 | |
vshllt.u8 q0, q1, #0 | |
vshllt.u8 q0, q1, #9 | |
vshllt.s16 q0, q1, #0 | |
vshllt.s16 q0, q1, #17 | |
vshllb.s32 q0, q1, #1 | |
vshllb.i8 q0, q1, #1 | |
vshllb.u8 q0, q1, #0 | |
vshllb.u8 q0, q1, #9 | |
vshllb.s16 q0, q1, #0 | |
vshllb.s16 q0, q1, #17 | |
cond vshllt | |
cond vshllb | |
it eq | |
vshllteq.s8 q0, q1, #1 | |
vshllteq.s8 q0, q1, #1 | |
vpst | |
vshllteq.s8 q0, q1, #1 | |
vshlltt.s8 q0, q1, #1 | |
vpst | |
vshllt.s8 q0, q1, #1 | |
it eq | |
vshllbeq.s8 q0, q1, #1 | |
vshllbeq.s8 q0, q1, #1 | |
vpst | |
vshllbeq.s8 q0, q1, #1 | |
vshllbt.s8 q0, q1, #1 | |
vpst | |
vshllb.s8 q0, q1, #1 |