Encoding:

MSA

011110

001

df

wt

ws

wd

3R

001110

6

3

2

5

5

5

6

Format:

SUBV.df 

Vector Subtract

SUBV.B wd,ws,wt

MSA

Vector Subtract

SUBV.H wd,ws,wt

MSA

Vector Subtract

SUBV.W wd,ws,wt

MSA

Vector Subtract

SUBV.D wd,ws,wt

MSA

Vector Subtract

Purpose:

Vector Subtract

Vector subtraction from vector.

Description:

wd[i] = ws[i] - wt[i]

The elements in vector wt are subtracted from the elements in vector ws. The result is written to vector wd.

The operands and results are values in integer data format df.

Restrictions:

No data-dependent exceptions are possible.

Operation:

SUBV.B
   for i in 0 .. WRLEN/8-1
      WR[wd]8i+7..8i = WR[ws]8i+7..8i - WR[wt]8i+7..8i
   endfor
SUBV.H
   for i in 0 .. WRLEN/16-1
      WR[wd]16i+15..16i = WR[ws]16i+15..16i - WR[wt]16i+15..16i
   endfor
SUBV.W
   for i in 0 .. WRLEN/32-1
      WR[wd]32i+31..32i = WR[ws]32i+31..32i - WR[wt]32i+31..32i
   endfor
SUBV.D
   for i in 0 .. WRLEN/64-1
      WR[wd]64i+63..64i = WR[ws]64i+63..64i - WR[wt]64i+63..64i
   endfor

Exceptions:

Reserved Instruction Exception, MSA Disabled Exception.