Принуждение компилятора использовать определенный регистр для определенной переменной
Можно ли заставить компилятор (gcc
или clang
в моем случае) использовать определенный регистр, скажем R15
на x86_64
для определенной переменной, а также запретить использование R15
для любой другой цели, кроме этой переменной.
Ответы
Ответ 1
gcc может это сделать.
Уже упомянутый gcc docs отвечает на вопрос о том, как заставить переменную в определенный регистр.
Чтобы остановить компилятор от генерации кода с помощью этого регистра для других целей, используйте gcc-переключатель -ffixed-reg
(подробнее см. gcc doc).