Move 16-Bit Constant Into Upper Bits of Register MVKH/MVKLH
3-185 Instruction SetSPRU733
Move 16-Bit Constant Into Upper Bits of Register
MVKH/MVKLH
Syntax MVKH (.unit) cst, dst
or
MVKLH (.unit) cst, dst
.unit = .S1 or .S2
Compatibility C62x, C64x, C67x, and C67x+ CPU
Opcode
31 29 28 27 23 22 76543210
creg z dst cst16 1 1 0 1 0 s p
3 1 5 16 1 1
Opcode map field used... For operand type... Unit
cst16
dst
uscst16
sint
.S1, .S2
Description The 16-bit constant, cst16 , is loaded into the upper 16 bits of dst. The 16 LSBs
of dst are unchanged. For the MVKH instruction, the assembler encodes the
16 MSBs of a 32-bit constant into the cst16 field of the opcode . For the MVKLH
instruction, the assembler encodes the 16 LSBs of a constant into the cst16
field of the opcode.
Execution For the MVKLH instruction:
if (cond)((cst
15..0
) << 16) or (dst
15..0
) → dst
else nop
For the MVKH instruction:
if (cond)((cst
31..16
) << 16) or (dst
15..0
) → dst
else nop
Pipeline
Stage
E1
Read
Written dst
Unit in use
.S
Pipeline