|
MSA 011110 |
011 |
df |
wt |
ws |
wd |
3R 001110 |
|
6 |
3 |
2 |
5 |
5 |
5 |
6 |
MAX_U.df |
Vector Unsigned Maximum | |
MAX_U.B wd,ws,wt |
MSA |
Vector Unsigned Maximum |
MAX_U.H wd,ws,wt |
MSA |
Vector Unsigned Maximum |
MAX_U.W wd,ws,wt |
MSA |
Vector Unsigned Maximum |
MAX_U.D wd,ws,wt |
MSA |
Vector Unsigned Maximum |
Vector Unsigned Maximum
Vector and vector unsigned maximum.
wd[i] = max(ws[i], wt[i])
ector wt and uns igned elements in vector ws are written to
Maximum values between unsigned elements in v vector wd.
The operands and results are values in integer data format df.
No data-dependent exceptions are possible.
MAX_U.B
for i in 0 .. WRLEN/8-1
WR[wd]8i+7..8i = max_u(WR[ws]8i+7..8i, WR[wt]8i+7..8i, 8)
endfor
MAX_U.H
for i in 0 .. WRLEN/16-1
WR[wd]16i+15..16i = max_u(WR[ws]16i+15..16i, WR[wt]16i+15..16i, 16)
endfor
MAX_U.W
for i in 0 .. WRLEN/32-1
WR[wd]32i+31..32i = max_u(WR[ws]32i+31..32i, WR[wt]32i+31..32i, 32)
endfor
MAX_U.D
for i in 0 .. WRLEN/64-1
WR[wd]64i+63..64i = max_u(WR[ws]64i+63..64i, WR[wt]64i+63..64i, 64)
endfor
function max_u(ts, tt, n)
t = 0 || tt
s = 0 || ts
if t < s then
return ts
else
return tt
endif
endfunction max_u
Reserved Instruction Exception, MSA Disabled Exception.