mcr2

Move to Coprocessor from Register 2 (A32)

MCR2<c> <coproc>, <opc1>, <Rt>, <CRn>, <CRm>{, <opc2>}

Writes a general-purpose register to a coprocessor (Extension encoding).

Details

A32 coprocessor data transfer (extension encoding): writes the general-purpose register Rt to the coprocessor coproc, register CRm, with operation codes opc1 and opc2. Does not modify condition flags. Execution state: A32 only; requires coprocessor support. May cause an Undefined Instruction exception if the coprocessor does not exist.

Pseudocode Operation

Coprocessor[coproc].CRm[opc2] ← Rt

Example

MCR2 p15, 0, r3, c1, c2

Encoding

Binary Layout
11111110
opc1
0
CRn
Rt
coproc
opc2
1
CRm
 
Format Coprocessor
Opcode 0xFE000010
Extension A32 (System)

Operands

  • coproc
    CP Num
  • Rt
    Transfer general-purpose register (load/store)
  • CRn
    Dest CP Reg