__arm_wsr、__arm_wsr64、__arm_wsrp
このセクションの内容:
構文
void __arm_wsr(const char *special_reg, _uint32_tvalue);
void __arm_wsr64(const char *special_reg, uint64_tvalue);
void __arm_wsrp(const char *special_reg, const void *value);
パラメータ
| システムレジスタを指定している文字列リテラル。 |
| システムレジスタにライトする値。 |
説明
DPレジスタにライトします。文字列リテラルを使用して、ライトするレジスタを指定します。__arm_wsr および __arm_wsrpでは、文字列リテラルは、コンパイラオプション‑‑cpuで指定されたアーキテクチャのMSRまたはVMSR命令で許可されたシステムレジスタの名前を指定できます。
__arm_wsrおよび__arm_wsrpでは、文字列リテラルは、以下のフォーマットを使用して32ビットコプロセッサレジスタも指定できます。
coprocessor : opc1 :c CRn :c CRm : opc2
__arm_wsr64では、文字列リテラルは、以下のフォーマットを使用して64ビットコプロセッサレジスタを指定できます。
coprocessor : opc1 :c CRm
両方のフォーマットにおいて:
コプロセッサはプロセッサ番号でcp0..cp15またはp0..p15opc1およびopc2はコプロセッサ固有の演算コード、0..7CRnおよびCRmはコプロセッサレジスタ0..15
これらの組み込み関数は、Arm C言語拡張(ACLE)に従って定義されます。
注記
アプリケーションで組込み関数を使用するには、宣言するヘッダファイルを含める必要があります。組み込み関数の概要を参照してください。