アカウント名:
パスワード:
インラインアセンブラは、本当に重要なところだけをアセンブリ言語化できるという利点があるだけに、この変更も少し残念です。
話はそう単純でもなくって、例えば Visual C++ 2003 なんかではインラインアセンブラを使用することでその前後の最適化が無効になるデメリットが大きく、SSE などのように組み込み関数が用意されている場合はそちらを使用した方がパフォーマンスが向上するという場合もあるそうです。 Optimizing Inline Assembly [microsoft.com]
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
にわかな奴ほど語りたがる -- あるハッカー
無知な私におせーて! (スコア:1, 興味深い)
Re:無知な私におせーて! (スコア:1, 参考になる)
レジスタのやりくりロスが減るんじゃないかと。
(もちろんCPU内部にはより多くの物理レジスタがあってレジスタ
リネームされてるんでしょうけど)
インラインアセンブラも廃止 (スコア:2, 参考になる)
なので、ゲ
Re:インラインアセンブラも廃止 (スコア:3, 参考になる)
話はそう単純でもなくって、例えば Visual C++ 2003 なんかではインラインアセンブラを使用することでその前後の最適化が無効になるデメリットが大きく、SSE などのように組み込み関数が用意されている場合はそちらを使用した方がパフォーマンスが向上するという場合もあるそうです。
Optimizing Inline Assembly [microsoft.com]
Re:インラインアセンブラも廃止 (スコア:2, 参考になる)
結局、インラインアセンブラのコードブロックが何をしているのかがコンパイラ側には判
Re:インラインアセンブラも廃止 (スコア:1)
実際 インライン分も含めて最適化する C/C++ コンパイラもありますので、
Microsoft がやってやれないことはないです。
最適化に関してはインラインアセンブラがレジスタを決めうちで使ってしまうため、
レジスタ最適化への悪影響が大きいのが×なんだと私は考えます。
コンタミは発見の母
Re:インラインアセンブラも廃止 (スコア:1)
つか、スタートアップの部分やレジスタが動かない命令のインラインアセンブラは例外にするとして、スタックにレジスタをセーブしないインラインアセンブラの仕様というのはコンパイラがアセンブラコードを解釈して最適化で高級言語のコードと融合させる場合ならともかく、危険過ぎて信じられないのですが…
# gccに何故 __asm__ と __asm__ volatileがあるのか。とか…