__arm_rsr, __arm_rsr64, __arm_rsrp
Syntax
unsigned int __arm_rsr(sys_reg special_register);unsigned long long __arm_rsr64(__sys_reg special_register);void * __arm_rsrp(sys_reg special_register);
Parameters
| A string literal specifying a register. |
Description
Reads a system register. Use a string literal to specify which register to read. For __arm_rsr and __arm_rsrp, the string literal can specify the name of a system register accepted in an MRS or VMRS instruction for the architecture specified by the compiler option ‑‑cpu.
For __arm_rsr and __arm_rsrp, the string literal can also specify a 32-bit coprocessor register, using this format:
coprocessor : opc1 :c CRn :c CRm : opc2
For __arm_rsr64, the string literal can specify a 64-bit coprocessor register using this format:
coprocessor : opc1 :c CRm
where, for both formats:
coprocessoris a number,c0..c15orcp0..cp15opc1andopc2are coprocessor-specific operation codes,0..7CRnandCRmare coprocessor registers0..15
These intrinsic functions are defined according to the Arm C Language Extensions (ACLE). For more details, see the ACLE documentation at developer.arm.com.
Note
To use intrinsic functions in an application, you must include the header file(s) where they are declared, see Summary of intrinsic functions.