その他の組込み関数

次の組込み関数は IA-32 および Itanium® アーキテクチャで共通です。

組込み関数 説明
_abnormal_termination(void) 終了ハンドラ以外では起動できません。対応する最後に試行する領域が予定より早く終了したために終了ハンドラが起動された場合は、TRUE を返します。
void *_alloca(int) バッファを割り当てます。
extern int _bit_scan_forward(int x) x の最下位セットビットのビット・インデックスを返します。x が 0 の場合、結果は未定義です。
extern int _bit_scan_reverse(int) x の最上位セットビットのビット・インデックスを返します。x が 0 の場合、結果は未定義です。
extern int _bswap(int) x のバイトの順序を逆にします。ビット 0 から 7 は、ビット 24 から 31 とスワップされます。また、ビット 8 から 15 は、ビット 16 から 23 とスワップされます。
_exception_code(void) 例外コードを返します。
_exception_info(void) 例外情報を返します。
void _enable() 割り込みを有効にします。
void _disable() 割り込みを無効にします。
int _in_byte(int) IA-32 命令 IN に対応付けられる組込み関数。引数で指定されたポートからデータバイトを転送します。
int _in_dword(int) IA-32 命令 IN に対応付けられる組込み関数。引数で指定されたポートからダブルワードを転送します。
int _in_word(int) IA-32 命令 IN に対応付けられる組込み関数。引数で指定されたポートからワードを転送します。
int _inp(int) _in_byte と同じです。
int _inpd(int) _in_dword と同じです。
int _inpw(int) _in_word と同じです。
int _out_byte(int, int) IA-32 命令 OUT に対応付けられる組込み関数。第 2 の引数内のデータバイトを、第 1 の引数で指定するポートに転送します。
int _out_dword(int, int) IA-32 命令 OUT に対応付けられる組込み関数。第 2 の引数内のダブルワードを、第 1 の引数で指定するポートに転送します。
int _out_word(int, int) IA-32 命令 OUT に対応付けられる組込み関数。第 2 の引数内のワードを、第 1 の引数で指定するポートに転送します。
int _outp(int, int) _out_byte と同じです。
int _outpd(int, int) _out_dword と同じです。
int _outpw(int, int) _out_word と同じです。
extern int _popcnt32(int x) x のセットビットの数を返します。
extern __int64 _rdtsc(void) プロセッサの 64 ビット・タイム・スタンプ・カウンタの現在の値を返します。
extern __int64 _rdpmc(int p) p で指定された 40 ビット・パフォーマンス・モニタリング・カウンタの現在の値を返します。
int _setjmp(jmp_buf)* setjmp() の高速版。終了処理が省略されます。呼び出し先セーブのレジスタ、スタックポインタ、およびリターンアドレスを保存します。