SVE Instruction List by Dougall Johnson
# WHILELE (predicate pair): While incrementing signed scalar less than or equal to scalar (pair of predicates)

WHILELE { Pd1.S, Pd2.S }, Xn, Xm (SVE2.1 (SME2

## 128-bit SVE

Considering (3) and (4) as a double-length predicate, with the upper bits in (4), set each predicate bit corresponding to a 32-bit elements, from low to high, while (1) + *n* ≤ (2), with *n* starting from zero and incrementing each bit. If a comparison fails, all higher predicate bits will also be set to zero.

(1), (2), and offsets computed from (1) are signed 64-bit integers.

## 256-bit SVE

Considering (3) and (4) as a double-length predicate, with the upper bits in (4), set each predicate bit corresponding to a 32-bit elements, from low to high, while (1) + *n* ≤ (2), with *n* starting from zero and incrementing each bit. If a comparison fails, all higher predicate bits will also be set to zero.

(1), (2), and offsets computed from (1) are signed 64-bit integers.

## 512-bit SVE

Considering (3) and (4) as a double-length predicate, with the upper bits in (4), set each predicate bit corresponding to a 32-bit elements, from low to high, while (1) + *n* ≤ (2), with *n* starting from zero and incrementing each bit. If a comparison fails, all higher predicate bits will also be set to zero.

(1), (2), and offsets computed from (1) are signed 64-bit integers.

## Larger sizes

## 1024-bit SVE

Considering (3) and (4) as a double-length predicate, with the upper bits in (4), set each predicate bit corresponding to a 32-bit elements, from low to high, while (1) + *n* ≤ (2), with *n* starting from zero and incrementing each bit. If a comparison fails, all higher predicate bits will also be set to zero.

(1), (2), and offsets computed from (1) are signed 64-bit integers.

## 2048-bit SVE

Considering (3) and (4) as a double-length predicate, with the upper bits in (4), set each predicate bit corresponding to a 32-bit elements, from low to high, while (1) + *n* ≤ (2), with *n* starting from zero and incrementing each bit. If a comparison fails, all higher predicate bits will also be set to zero.

(1), (2), and offsets computed from (1) are signed 64-bit integers.

Report mistakes or give feedback

Inspired by and based on the x86/x64 SIMD Instruction List by Daytime.