-ffp-contract
GNU GCC のフラグについて質問があります ( https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.htmlを参照)。
フラグのドキュメントは次のように書かれています。
-ffp-contract=off
浮動小数点式の縮小を無効にします。-ffp-contract=fast
ターゲットがそれらをネイティブにサポートしている場合、融合乗加算演算の形成などの浮動小数点式の縮約を有効にします。-ffp-contract=on
言語標準で許可されている場合、浮動小数点式の短縮を有効にします。これは現在実装されておらず、 と同等に扱われ-ffp-contract=off
ます。デフォルトは です-ffp-contract=fast
。
今質問:
- fast と on はどう違いますか?
- FMA 以外に収縮の例はありますか (または、fusion-mult サブのようなもの)?