Skip to main content

IAR Embedded Workbench for Arm 9.70.x

__arm_rsr、__arm_rsr64、__arm_rsrp

このセクションの内容:
構文
unsigned int __arm_rsr(sys_reg special_register);
unsigned long long __arm_rsr64(__sys_reg special_register);
void * __arm_rsrp(sys_reg special_register);
パラメータ

special_register

レジスタを指定している文字列リテラル。

説明

システムレジスタを読み取ります。文字列リテラルを使用して、読み取るレジスタを指定します。__arm_rsrおよび__arm_rsrpでは、文字列リテラルは、コンパイラオプション ‑‑cpuで指定されたアーキテクチャのMRSまたはVMRS命令で許可されたシステムレジスタの名前を指定できます。

__arm_rsr および __arm_rsrpには、文字列リテラルは、以下のフォーマットを使用して32ビットコプロセッサレジスタも指定できます。

coprocessor : opc1 :c CRn :c CRm : opc2

__arm_rsr64では、文字列リテラルは、以下のフォーマットを使用して64ビットコプロセッサレジスタを指定できます。

coprocessor : opc1 :c CRm

両方のフォーマットにおいて:

  • コプロセッササは数字で、c0..c15 または cp0..cp15

  • opc1 および opc2 はコプロセッサ固有の演算コード、0..7

  • CRn および CRm はコプロセッサレジスタ 0..15

これらの組み込み関数は、Arm C言語拡張 (ACLE)に従って定義されます。

注記

アプリケーションで組込み関数を使用するには、宣言するヘッダファイルを含める必要があります。組み込み関数の概要を参照してください。