LINUX.ORG.RU

История изменений

Исправление Legioner, (текущая версия) :

Это если у тебя стек реализован не как у нормальных людей через push eax, а каждый вызов функции выделяет отдельный фрейм в куче и стек у тебя это связный список этих фреймов. Такой вариант возможен, но это в принципе ужасная производительность при вызове и возврате функций в сравнение с родным процессорным стеком. Там да, ничего копировать не надо, всё красиво, согласен. Но не взлетит, процессорный кеш любит локальность.

Исходная версия Legioner, :

Это если у тебя стек реализован не как у нормальных людей через push eax, а каждый вызов функции выделяет отдельный фрейм в куче и стек у тебя это связный список. Такой вариант возможен, но это в принципе ужасная производительность в сравнение с родным процессорным стеком. Там да, ничего копировать не надо, всё красиво, согласен.