Encoding:

COP1

010001

01111

wt

s16

6

5

5

16

Format:

BNZ.V 

Immediate Branch If Not Zero (At Least One Element of Any Format Is Not Zero)

BNZ.V wt,s16

MSA

Immediate Branch If Not Zero (At Least One Element of Any Format Is Not Zero)

Purpose:

Immediate Branch If Not Zero (At Least One Element of Any Format Is Not Zero)

Immediate PC offset branch if destination vector is not zero.

Description:

if wt != 0 then branch PC-relative s16

PC-relative branch if at least one bit in wt is not zero, i.e at least one element is not zero regardless of the data format. The branch instruction has a delay slot. s16 is a PC word offset, i.e. signed count of 32-bit instructions, from the PC of the delay slot.

Restrictions:

Processor operation is UNPREDICTABLE if a branch is placed in the delay slot of a branch or jump.

Operation:

   branch(WR[wt] != 0, s16)
function branch(cond, offset)
   if cond then
      I:   target_offset = (offset9)GPRLEN-12 || offset9..0 || 0^^2
      I+1: PC = PC + target_offset
   endif
endfunction branch

Exceptions:

Reserved Instruction Exception, MSA Disabled Exception.