[解決済み] gccでコンパイラの最適化を無効にする方法は?
2023-03-17 23:31:15
質問
私はアセンブリ言語を学ぼうとしています。私は検索して、分解する方法を見つけました。
.c
ファイルを逆アセンブルする方法を見つけましたが、それはプログラムの最適化されたバージョンを生成しているように思います。私のCファイルに対応する正確なアセンブリコードを見ることができるようにする方法はありますか。
どのように解決するのですか?
gccオプション
-O
は、さまざまなレベルの最適化を可能にします。使用方法
-O0
を使って無効にし
-S
でアセンブリを出力します。
-O3
は最高レベルの最適化です。
gcc 4.8 からは、最適化レベルである
-Og
が利用可能です。これは、デバッグを妨げない最適化を有効にし、標準的な編集-コンパイル-デバッグのサイクルの推奨デフォルトとなります。
アセンブリの方言をintelまたはattのいずれかに変更するには
-masm=intel
または
-masm=att
.
また、特定の最適化を手動で有効にするには
-fname
.
を見てみましょう。 gccマニュアル を見てください。
関連
-
[解決済み] SQLiteのINSERT/per-secondのパフォーマンスを向上させる
-
[解決済み] 1ビットのセット、クリア、トグルはどのように行うのですか?
-
[解決済み] 要素ごとの加算は、結合ループよりも分離ループの方がはるかに高速なのはなぜですか?
-
[解決済み] なぜGCCはa*a*a*a*aを(a*a*a)*(a*a*a)に最適化しないのでしょうか?
-
[解決済み] C言語では「?」演算子は何をするのですか?
-
[解決済み] Swift Betaのパフォーマンス:配列のソート
-
[解決済み] C言語とC++の両方で有効なコードを、それぞれの言語でコンパイルすると、異なる動作になることがありますか?
-
[解決済み] C 言語の配列へのポインタ/ポインタの配列の曖昧さ解消
-
[解決済み] Intel CPU の _mm_popcnt_u64 で、32 ビットのループカウンターを 64 ビットに置き換えると、パフォーマンスが著しく低下します。
-
[解決済み】GCCを使用して読みやすいアセンブリを作成しますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[C] レポートエラー 代入の左オペランドとしてlvalueが必要
-
initializer element is not constant "というエラーが表示されるのですが?
-
C - 添え字の値が配列でもポインタでもベクトルでもないエラー
-
警告:符号付き整数式と符号なし整数式の比較 [-Wsign-compare]
-
[解決済み] MIPSのネストされたForループと配列の使用
-
[解決済み] Linux Socket write() によるBad File Descriptor C
-
[解決済み] c または c++ 用のシンプルな 2 次元クロスプラットフォームグラフィックスライブラリ?[クローズド]
-
[解決済み] プログラム終了前にmallocの後にfreeをしないと本当に何が起こるのか?
-
[解決済み] なぜ16進数には0xがつくのですか?
-
[解決済み] コピーエリジョンと戻り値の最適化とは何ですか?