Как стать автором
Обновить

Комментарии 6

А если вместо
ULONG64 res = fib_tail_x64(40, 0, 1);
написать
ULONG64 res = fib_tail_x64(40ull, 0, 1);
?
> нужно обязательно выключать параметр 'Whole Program Optimization' тогда, и только тогда, когда происходит прямой вызов рекурсивной x64 функции

Это все как-то нереально замороченно, так что лучше не закладываться на эту оптимизациюю в реальном проекте. Если я правильно понял, то в debug/release сборках будет разное поведение из-за флагов оптимизаций, получается очень непрактично.
Поведение то одинаково, разница только в производительности.
НЛО прилетело и опубликовало эту надпись здесь
Я, может, сейчас жутко крамольную вещь скажу…
Но не кажется ли, что в ДАННОМ случае вместо массажа опций компилятора и рассматривания дизассемблера можно просто написать goto в исходном коде и получить нужный результат независимо от положения звёзд?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий