2009-08-15 8 views
2

私はいつも私のコンパイラでこの機能を有効にしています。よりクリーンなアセンブリコードを読みながらデバッグに多くの助けになります。私はそれが速度最適化側に大きな影響を与えないと思うので、パイプライン化するCPU能力を与えますが、少なくともそれはレジスタ割り当てのための新しい機会を開けます、新しいフリーレジスタEBPを得る(コンパイラが)フレームポインタが省略されていますか?どんなリスクですか?

私の質問です:もうこのアプローチは安全ですか?あなたは今までに何か特色を味わったことがありますか?

答えて

2

クラッシュ時にソフトウェアがスタックトレースを生成する場合、フレームポインタを省略すると、スタックトレースが動作しなくなる可能性があります。

0

GCCで-fomit-frame-pointerに問題が発生したことはありません。しかし、それは実際にデバッグを悪化させます。

0

Gentoo wikiは、fomit-frame-pointerはデバッグを禁止することができます。それ以外の場合は、のリスクが実際に存在するとは思われません。

+0

これは "...バイナリサイズはわずかに増加するかもしれませんが、このフラグはx86とおそらく他のアーチでのデバッグを中断します..."私はこれが--finline-functions – ZeroCool

関連する問題