Регистр $gp MIPS

Есть ли опасность в использовании $gp зарегистрироваться для хранения значения? Я предполагаю, что мой вопрос - то, что является истинной функциональностью $gp и это вызывается закулисное так или иначе так, чтобы, если я должен был использовать его, дела могли бы идти очень очень неправильно?

7
задан Hristo 30 March 2012 в 20:09
поделиться

1 ответ

Ну, регистр $ gp указывает на глобальную область. Соглашение указывает, что вы должны сохранить его при написании функции (см. .Cprestore).

Если вам нужно его использовать (честно говоря, не понимаю, почему), запомните следующее:

1) Всегда храните его в области сохраненных регистров вашего стека.

2) Всегда загружайте это значение в $ gp при уничтожении стека.

3) Не используйте это. (т.е. не обращайтесь к глобальной области видимости )

Кроме того, я не уверен, но вы можете забыть о коде PIC.

5
ответ дан 7 December 2019 в 12:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: