Перейти к содержанию

Асмовставки в gcc


Рекомендуемые сообщения

Доброе время суток, панове!

Всех защитников с праздником!

Вопрос:

Как я понял, асмовставки в Си под gcc реализуются посредством ф-ии (макроса?)

asm (char *xxx),

где xxx - собсно сам код на АСМе. Вопрос состоит в следующем:

1. Существуют ли другие формы вставок АСМа в Си-код (типа

asm

{

...

}

) именно под gcc?

2. Можно ли заставить gcc использовать для той же ф-ии asm("...") вместо as'а че-нить поудобнее (nasm, например)?

3. Вопрос, вытекаюший из предыдущего: можно ли заставить

gcc -S ...

выдавать ассемблерный код в нотации не as'а, а того же насма? Если это требует патчей на gcc, то существуют ли соответствующие проекты (кроме "спроси Гугля" :))?

Заранее благодарен

Ссылка на комментарий
Поделиться на другие сайты

Цитата:

1. Существуют ли другие формы вставок АСМа в Си-код (типа

asm

{

...

}

) именно под gcc?

Насколько я знаю, нет.

Цитата:

2. Можно ли заставить gcc использовать для той же ф-ии asm("...") вместо as'а че-нить поудобнее (nasm, например)?

Нет. Но можно делать отдельные модули на NASM и линковать их с проектом. При этом, вместо асмовставок вызывать функции этих модулей, написанные на NASM.

Цитата:

3. Вопрос, вытекаюший из предыдущего: можно ли заставить

gcc -S ...

выдавать ассемблерный код в нотации не as'а, а того же насма? Если это требует патчей на gcc, то существуют ли соответствующие проекты (кроме "спроси Гугля" Smile)?

Есть же ndisasm в комплекте NASM. Конечно, он не слишком удобный код показывает, но всё же.

Ссылка на комментарий
Поделиться на другие сайты

Цитата:

Нет. Но можно делать отдельные модули на NASM и линковать их с проектом. При этом, вместо асмовставок вызывать функции этих модулей, написанные на NASM.

Так и приходится делать... Но функции - они функции и есть, если необходимо работать с локальными переменными Си-функции на АСМе, это уже не очень удобно...

Ну что ж... будем искать Smile

Ссылка на комментарий
Поделиться на другие сайты

Цитата:

У gas'а тоже синтаксис нормальный, хотя и непривычный жутко.

Эт точно. Жутко Smile

Если возникнет необходимость, то придется, конечно, привыкать, но пока мне Интел-синтаксис ближе Wink

К тому же тот же НАСМ - субъективно - сам по себе удобней в использовании. Но это, как и все субъективное, скорее всего не так Smile))

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...