MSA 011110 |
000 |
df |
wt |
ws |
wd |
3R 010010 |
6 |
3 |
2 |
5 |
5 |
5 |
6 |
MULV.df |
Vector Multiply | |
MULV.B wd,ws,wt |
MSA |
Vector Multiply |
MULV.H wd,ws,wt |
MSA |
Vector Multiply |
MULV.W wd,ws,wt |
MSA |
Vector Multiply |
MULV.D wd,ws,wt |
MSA |
Vector Multiply |
Vector Multiply
Vector multiply.
wd[i] = ws[i] * wt[i]
The integer elements in vector wt are multiplied by integer elements in vector ws. The result is written to vector wd.
The most significant half of the multiplication result is discarded.
The operands and results are values in integer data format df.
No data-dependent exceptions are possible.
MULV.B for i in 0 .. WRLEN/8-1 WR[wd]8i+7..8i = WR[ws]8i+7..8i * WR[wt]8i+7..8i endfor MULV.H for i in 0 .. WRLEN/16-1 WR[wd]16i+15..16i = WR[ws]16i+15..16i * WR[wt]16i+15..16i endfor MULV.W for i in 0 .. WRLEN/32-1 WR[wd]32i+31..32i = WR[ws]32i+31..32i * WR[wt]32i+31..32i endfor MULV.D for i in 0 .. WRLEN/64-1 WR[wd]64i+63..64i = WR[ws]64i+63..64i * WR[wt]64i+63..64i endfor
Reserved Instruction Exception, MSA Disabled Exception.