ロードとストアの組み込み関数を使用して、特定のデータ・オブジェクトのメモリーアクセスの順序を制限することができます。これを使用するのは、-serialize-volatile- オプションを使用して、ユーザーのメモリーアクセスの順序を厳密に抑止する場合です。
組み込み関数のプロトタイプ |
説明 |
---|---|
void __st1_rel(void *dst, const char value); |
st1.rel 命令を生成します。 |
void __st2_rel(void *dst, const short value); |
st2.rel 命令を生成します。 |
void __st4_rel(void *dst, const int value); |
st4.rel 命令を生成します。 |
void __st8_rel(void *dst, const __int64 value); |
st8.rel 命令を生成します。 |
unsigned char __ld1_acq(void *src); |
ld1.acq 命令を生成します。 |
unsigned short __ld2_acq(void *src); |
ld2.acq 命令を生成します。 |
unsigned int __ld4_acq(void *src); |
ld4.acq 命令を生成します。 |
unsigned __int64 __ld8_acq(void *src); |
ld8.acq 命令を生成します。 |