Encoding:

EXTEND

11110

00000

0

00

000

SHIFT

00110

rx

ry

sel = 1

SRL

10

5

5

1

2

3

5

3

3

3

2

Format:

MOVN rx, $0, ry

MIPS16e2

Move Conditional on Not Equal to Zero Extended

Purpose:

Move Zero Conditional on Not Equal to Zero Extended

To conditionally zero a GPR after testing a GPR value.

Description:

 if GPR[ry] != 0 then GPR[rx] = 0

If the value in GPR ry is not equal to zero, GPR rx is written with the value of 0.

Restrictions:

In implementations prior to MIPS16e2, this instruction yielded unpredictable results. It would typically be exexcuted as an SRL instruction.

Operation:

if GPR[XLat[ry]] != 0 then
   GPR[XLat[rx]] = 0
endif

Exceptions:

None

Programming Notes:

The non-zero value tested might be the condition true result from the SLT, SLTI, SLTU, and SLTIU comparison instructions or a boolean value read from memory.