Тащ Клен! Ты вовремя. Как раз хотел спросить насчёт GP, есть ли
нюансы. Нет ли директивы для GCC, чтобы при входе в блок кода,
указать ему: А тут gp у нас другой! Исполняй! А то, если я правильно понял, у компилятора в уме лишь одно значение GP и он устраивает косвенную адресацию лишь для этого, единственного, значения.
Есть ещё вопрос про s0/fp. В роли указателя кадра, он делает примерно то же самое, что и GP, но, вроде как локально для функции. Как-то писал ассемблерную вставку с загрузкой адреса. Компилятор использовал fp. Я испугался, и переделал загрузку вручную на lui+ori, чтобы работа задефайненой вставки не зависела от значения fp. Меняет ли gcc значение fp?