LINUX.ORG.RU

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

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

можете написать тестик - что быстрей вызов фиксированной функции после двух джампов по условию. или вызов функции из таблицы 3*3.

5 лет назад до трёх джампов было быстрее вызова. Размер таблицы роли не играл. Начиная с четырёх было быстрее по таблице.

Сейчас так: https://godbolt.org/z/66bqao3MK

Если в switch четыре ветки, в ассемблере условия. Если 5 и больше, то переход по таблице.

Вот это https://godbolt.org/z/Eacv5v6jx в таблицу не превращает.

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

можете написать тестик - что быстрей вызов фиксированной функции после двух джампов по условию. или вызов функции из таблицы 3*3.

5 лет назад до трёх джампов было быстрее вызова. Размер таблицы роди не играл. Начиная с четырёх было быстрее по таблице.

Сейчас так: https://godbolt.org/z/66bqao3MK

Если в switch четыре ветки, в ассемблере условия. Если 5 и больше, то переход по таблице.

Вот это https://godbolt.org/z/Eacv5v6jx в таблицу не превращает.