「よりパフォーマンスの高いプログラムを作成するにはアセンブラを駆使すべし」という話を聞いたことがある人も多いだろう。コンパイラのコマンド・オプションやコンポーネント、インタフェースの属性記述など実設計時に必要な情報が掲載されています。ともに使用して、デスクトップのコードを解析できます。ブロックまで遡って追跡することができます。コードログ私が使用する可能性がある他のコンパイラはllvm-gccとclangです。clangでもgcc互換のオプションをサポートしていると思います。このロジックは、関連するコードが公開されない限り有効です。コンパイラのオプション-langに相当します。自動変数のレジスタ割り付け,関数出口ブロックの統合,統合可能な複数命令の統合など,一部最適化を実施します。コードサイズ重視の最適化を実施します。とる単一文字によって指定します。マニュアルページも参照してください。この節では、簡単に参照できるように、コンパイラオプションを機能ごとに分けて示します。あとにコード生成オプションを付けます。このオプションは、共通ブロック内の変数の配置を変更します。除くも指定されていません。除くオプション、コンパイラが挿入されます、fwaitコマンド内のコードの各行の周りをtryブロック。進数のどちらのオフセットを表示するかを制御します。オプションは、最大プログラム複雑度係数値を指定するために使用します。すべての最適化を無効にします。最適化を有効にします。一部の最適化を無効にします。最適化を有効にします。コードを使用すると、セキュリティと安定性の面でリスクが生じます。オプションを使ってコンパイルする必要があります。コンパイラ解析と最適化には時間と空間が必要となるため、コンパイラによってはデフォルトでこれらのフェーズを省略するものもある。この場合、ユーザーはオプションを指定して明示的に最適化を指示しなければならない。コードは完全を期すために与えられたもので、問題はコメントアウトされた__asm_ブロックに関するものだけです。__asm_ブロックがないと、これは82個の命令にコンパイルされます。__asm_ブロックを使用すると、結果は107命令長になります。gccは良いものです。コードブロックが自動的にパスを見つけられなかった場合コンパイラのそれはあなた自身でそれを示す義務です。インストールすると、おそらくコードブロックがコンパイラを自動的に見つけます。コンパイラ史の初期、コンパイラによる最適化は人間が手で書いたコードほどよいコードを生成しなかった。コンパイラ技術の進展と共に、コンパイラが人間のプログラマよりもよいコードを生成できるようになってきた。私が使用する可能性がある他のコンパイラはllvm-gccとclangです。clangでもgcc互換のオプションをサポートしていると思います。