GCC:Запретить использование некоторых регистров

Это странный запрос, но я чувствую, что это возможно. Я бы хотел вставить некоторые прагмы или директивы в области моего кода (написанные на C), чтобы распределитель регистров GCC , а не использовал их.

Я понимаю, что я могу сделать что-то подобное, который может выделить этот регистр для этой переменной

register int var1 asm ("EBX") = 1984;
register int var2 asm ("r9") = 101;

Проблема в том, что я вставляю новые инструкции (для симулятора оборудования) напрямую, а GCC и GAS еще не распознают их. Мои новые инструкции могут использовать существующие регистры общего назначения, и я хочу убедиться, что некоторые из них (например, r12-> r15) зарезервированы.

Прямо сейчас я работаю в среде макета, и я хочу сделать мои эксперименты быстро. В будущем я добавлю GAS и встроенные функции в GCC, но сейчас я ищу быстрое решение.

Спасибо!

22
задан hayesti 15 July 2015 в 14:35
поделиться