SVE Instruction List by Dougall Johnson
See "CLASTA (scalar)" in the exploration tools

CLASTA (scalar): Conditionally extract element after last to general-purpose register

CLASTA Wdn, Pg, Wdn, Zm.H (SVE (SME
bfloat16_t svclasta[_n_bf16](svbool_t pg, bfloat16_t fallback, svbfloat16_t data)
float16_t svclasta[_n_f16](svbool_t pg, float16_t fallback, svfloat16_t data)
int16_t svclasta[_n_s16](svbool_t pg, int16_t fallback, svint16_t data)
uint16_t svclasta[_n_u16](svbool_t pg, uint16_t fallback, svuint16_t data)

128-bit SVE

Find the last (leftmost) 16-bit element from (2) where the corresponding predicate bit in (1) is non-zero, then set (4) to the next element. If the last corresponding predicate bit is non-zero, set (4) to the first (rightmost) element from (1). If all corresponding predicate bits are zero, preserve the value from the low 16-bits of (3), zeroing the high bits.

256-bit SVE

Find the last (leftmost) 16-bit element from (2) where the corresponding predicate bit in (1) is non-zero, then set (4) to the next element. If the last corresponding predicate bit is non-zero, set (4) to the first (rightmost) element from (1). If all corresponding predicate bits are zero, preserve the value from the low 16-bits of (3), zeroing the high bits.

512-bit SVE

Find the last (leftmost) 16-bit element from (2) where the corresponding predicate bit in (1) is non-zero, then set (4) to the next element. If the last corresponding predicate bit is non-zero, set (4) to the first (rightmost) element from (1). If all corresponding predicate bits are zero, preserve the value from the low 16-bits of (3), zeroing the high bits.

Larger sizes

1024-bit SVE

Find the last (leftmost) 16-bit element from (2) where the corresponding predicate bit in (1) is non-zero, then set (4) to the next element. If the last corresponding predicate bit is non-zero, set (4) to the first (rightmost) element from (1). If all corresponding predicate bits are zero, preserve the value from the low 16-bits of (3), zeroing the high bits.

2048-bit SVE

Find the last (leftmost) 16-bit element from (2) where the corresponding predicate bit in (1) is non-zero, then set (4) to the next element. If the last corresponding predicate bit is non-zero, set (4) to the first (rightmost) element from (1). If all corresponding predicate bits are zero, preserve the value from the low 16-bits of (3), zeroing the high bits.

Report mistakes or give feedback
Inspired by and based on the x86/x64 SIMD Instruction List by Daytime.