Как отключить оптимизацию вызовов в GCC?C++

Программы на C++. Форум разработчиков
Anonymous
Как отключить оптимизацию вызовов в GCC?

Сообщение Anonymous »

Что такое флаг для GCC, чтобы отключить оптимизацию задних вызовов. По сути, в оптимизации завода, GCC заменит кадр стека, когда возвращаемое значение из вызываемой функции проходит (через возврат) или ничего другого не происходит в функции. < /P>
, то есть в < /p>

Код: Выделить всё

 void main() {
foo();
}

void foo() {
bar();
}

void bar() {
/* At this point in code, the foo() stack frame no longer exists! */
}
Когда foo вызовы , GCC издает код, который заменяет кадр стека для Foo, а не добавление нового кадра стека. Оптимизация завода вызовов заставляет рамки стека исчезают, что может немного запутать трассировку стека.>

Подробнее здесь: https://stackoverflow.com/questions/367 ... ons-in-gcc

Вернуться в «C++»