Я использую тип int
для хранения значения. По семантике программы значение всегда изменяется в очень малом диапазоне (0-36), а int
(не a char
) используется только из-за эффективности ЦП.
Кажется, что многие специальные арифметические оптимизации могут выполняться на таком небольшом диапазоне целых чисел. Многие вызовы функций этих целых чисел могут быть оптимизированы в небольшой набор "магических" операций, а некоторые функции могут даже оптимизироваться в виде таблицы.
Итак, можно ли сообщить компилятору, что этот int
всегда находится в этом небольшом диапазоне, и возможно ли, чтобы компилятор выполнил эти оптимизации?