Share via


_MoveToCoProcessor, MoveToCoprocessor2 (Windows Embedded CE 6.0)

1/5/2010

These intrinsic functions write data to ARM coprocessors via the coprocessor data transfer instructions.

Syntax

Void _MoveToCoprocessor(
      unsigned int value,
      unsigned int coproc,
      unsigned int opcode1,
      unsigned int crn,
      unsigned int crm,
      unsigned int opcode2
);

Void _MoveToCoprocessor2(
      unsigned int value,
      unsigned int coproc,
      unsigned int opcode1,
      unsigned int crn,
      unsigned int crm,
      unsigned int opcode2
);

Parameters

  • value
    Value to be written to the coprocessor.
  • coproc
    Coprocessor number in the range 0 to 15.
  • opcode1
    Coprocessor-specific opcode in the range 0 to 7.
  • crn
    Coprocessor register number in the range 0 to 15, which specifies the first operand to the instruction.
  • crm
    Coprocessor register number in the range 0 to 15, which specifies and additional source or destination operand*.*
  • opcode2
    Additional coprocessor-specific opcode in the range 0 to 7*.*

Return Values

None

Remarks

The values of coproc, opcode1, crn, crm, and opcode2 must be constant expressions known at compile time.

_MoveToCoprocessor uses the MCR instruction; _MoveToCoprocessor2 uses MCR2.

The parameters correspond to bitfields encoded directly into the instruction word. The interpretation of the parameters is coprocessor-dependent. For more information, see the manual for the coprocessor in question.

These intrinsics are not available when generating Thumb instructions, such as when /QRthumb is specified.

Requirements

Architecture ARM
Header armintr.h
Routine _MoveToCoprocessor, _MoveToCoprocessor2

See Also

Reference

ARM10 Intrinsic Functions
/QRthumb