SVE Instruction List by Dougall Johnson
See "SLI" in the exploration tools

SLI: Shift left and insert (immediate)

SLI Zd.H, Zn.H, #const (SVE2 (SME
svint16_t svsli[_n_s16](svint16_t op1, svint16_t op2, uint64_t imm3)
svuint16_t svsli[_n_u16](svuint16_t op1, svuint16_t op2, uint64_t imm3)

128-bit SVE

For each 16-bit integer set (3) to ( (2) << const ) | ( (1) & ~( 0xFFFF << const ) ). This preserves the const least-significant bits from (1), while inserting the ( 16 − const ) least-significant bits from (2) into the most-significant bits of (3). The shift amount is limited to 0 ≤ const ≤ 15.

256-bit SVE

For each 16-bit integer set (3) to ( (2) << const ) | ( (1) & ~( 0xFFFF << const ) ). This preserves the const least-significant bits from (1), while inserting the ( 16 − const ) least-significant bits from (2) into the most-significant bits of (3). The shift amount is limited to 0 ≤ const ≤ 15.

512-bit SVE

For each 16-bit integer set (3) to ( (2) << const ) | ( (1) & ~( 0xFFFF << const ) ). This preserves the const least-significant bits from (1), while inserting the ( 16 − const ) least-significant bits from (2) into the most-significant bits of (3). The shift amount is limited to 0 ≤ const ≤ 15.

Larger sizes

1024-bit SVE

For each 16-bit integer set (3) to ( (2) << const ) | ( (1) & ~( 0xFFFF << const ) ). This preserves the const least-significant bits from (1), while inserting the ( 16 − const ) least-significant bits from (2) into the most-significant bits of (3). The shift amount is limited to 0 ≤ const ≤ 15.

2048-bit SVE

For each 16-bit integer set (3) to ( (2) << const ) | ( (1) & ~( 0xFFFF << const ) ). This preserves the const least-significant bits from (1), while inserting the ( 16 − const ) least-significant bits from (2) into the most-significant bits of (3). The shift amount is limited to 0 ≤ const ≤ 15.

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