Encoding:

MSA

011110

100

df/m

ws

wd

BIT

001001

6

3

7

5

5

6

Format:

BSETI.df 

Immediate Bit Set

BSETI.B wd,ws,m

MSA

Immediate Bit Set

BSETI.H wd,ws,m

MSA

Immediate Bit Set

BSETI.W wd,ws,m

MSA

Immediate Bit Set

BSETI.D wd,ws,m

MSA

Immediate Bit Set

Purpose:

Immediate Bit Set

Immediate selected bit position set in each element.

Description:

wd[i] = bit_set(ws[i], m)

Set to 1 one bit in each element of vector ws. The bit position is given by the immediate m. 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:

BSETI_S.B:
   t = m
   for i in 0 .. WRLEN/8-1
      WR[wd]8i+7..8i = WR[ws]8i+7..8i or (07-t || 1 || 0t)
   endfor
BSETI_S.H:
   t = m
   for i in 0 .. WRLEN/16-1
      WR[wd]16i+15..16i = WR[ws]16i+15..16i or (015-t || 1 || 0t)
   endfor
BSETI_S.W:
   t = m
   for i in 0 .. WRLEN/32-1
      WR[wd]32i+31..32i = WR[ws]32i+31..32i or (031-t || 1 || 0t)
   endfor
BSETI_S.D:
   t = m
   for i in 0 .. WRLEN/64-1
      WR[wd]64i+63..64i = WR[ws]64i+63..64i or (063-t || 1 || 0t)
   endfor

Exceptions:

Reserved Instruction Exception, MSA Disabled Exception.