非機密扱い | ![]() | ARM DUI0472LJ | ||
| ||||
ホーム > コンパイラ固有の機能 > __promise コンパイラ組み込み関数 |
このコンパイラ組み込み関数は、式の結果が必ずゼロ以外の値になるという、コンパイラに対する保証を表しています。これによってコンパイラは、コードをベクトル化する際に、より積極的な最適化を実行することができます。
void __promise(expr
)
expr
には、ゼロ以外に評価される式を指定します。__promise(expr
)
は assert(expr
)
に似ていますが補完的なものです。assert(expr
)
とは異なり、__promise(expr
)
は、NDEBUG
が定義されている場合でも有効です。assert.h
をインクルードし、NDEBUG
を定義しない場合)は、assert(expr
)
の一部として
expr
を評価することで、実行時にもさらに保証がチェックされます。