Как заставить gcc генерировать голый asm-код (не использовать псевдокод) - PullRequest
1 голос
/ 08 июня 2011

например MIPS:

Я использую gcc -S xx.c

gcc gens: move xxx

, но я хочу реальные инструкции sll xxx

Возможнопростой вопрос, но я не нашел ответа в Google.

РЕДАКТИРОВАТЬ:

gcc хочет генерировать move insn, но в мипс естьнет реального move, он использует sll $x, $x, $0, чтобы делать move вещи.также он использует sll $0, $0, $0 для выполнения nop вещей.

1 Ответ

0 голосов
/ 09 июня 2011

move - это псевдоинструкция в сборке MIPS. Это не настоящая инструкция, но ассемблер принимает и переводит ее.

move $rt, $rs переводится как addi $rt, $rs, 0.

Что касается создания выходного кода сборки gcc без псевдоинструкций, я не думаю, что это возможно.

...