Опция безопасна, но затрудняет отладку. Обычно компилятор C выводит код, который сохраняет в обычном регистре (ebp
на x86) указатель на фрейм стека для функции. Отладчики используют это для распечатки содержимого локальных переменных и другой подобной информации. Флаг -fomit-frame-pointer
указывает gcc не беспокоиться об этом регистре. В некоторых ситуациях это может привести к незначительному увеличению производительности, в основном из-за уменьшения занимаемой площади кода (что лучше для кэша) и из-за дополнительного доступного регистра (особенно в x86 в 32-битном режиме, который, как известно, не работает в регистрах).