MSA 011110 |
11000011 |
df |
ws |
wd |
2R 011110 |
6 |
8 |
2 |
5 |
5 |
6 |
NLZC.df |
Vector Leading Zeros Count | |
NLZC.B wd,ws |
MSA |
Vector Leading Zeros Count |
NLZC.H wd,ws |
MSA |
Vector Leading Zeros Count |
NLZC.W wd,ws |
MSA |
Vector Leading Zeros Count |
NLZC.D wd,ws |
MSA |
Vector Leading Zeros Count |
Vector Leading Zeros Count
Vector element count of leading bits set to 0.
wd[i] = leading_zero_count(ws[i])
The number of leading zeroes for elements in vector ws is stored to the elements in vector wd.
The operands and results are values in integer data format df.
No data-dependent exceptions are possible.
NLZC.B for i in 0 .. WRLEN/8-1 WR[wd]8i+7..8i = leading_zero_count(WR[ws]8i+7..8i, 8) endfor NLZC.H for i in 0 .. WRLEN/16-1 WR[wd]16i+15..16i = leading_zero_count(WR[ws]16i+15..16i, 16) endfor NLZC.W for i in 0 .. WRLEN/32-1 WR[wd]32i+31..32i = leading_zero_count(WR[ws]32i+31..32i, 32) endfor NLZC.D for i in 0 .. WRLEN/64-1 WR[wd]64i+63..64i = leading_zero_count(WR[ws]64i+63..64i, 64) endfor function leading_zero_count(tt, n) z = 0 for i in n-1..0 if tti = 1 then return z else z = z + 1 endif endfunction leading_zero_count
Reserved Instruction Exception, MSA Disabled Exception.