LINUX.ORG.RU

Константа в gnu assembler


0

0

Передаю из С структуру в функцию на ассемблере, хочу использовать для доступа к полям какие-нибудь говорящие названия для смещений, т.е. не 4(%eax), а age(%eax). Пробовал в сегмете данных разместить обявление констант: age: .byte 4 но выдает segmentation fault... что я делаю не так???


Ненадо так делать. Был гедто тут вопрос про препроцессор. Не так давно, может месяца два назад.

SatanClaus ★★★
()

        .set    age,4
        mov     %ebx, age(%eax)
        .end
                                                                                

io ★★
()

Ассемблерные исходники можно препроцессором обрабатывать, есть специальный gasp и, конечно, cpp и m4.

Begemoth ★★★★★
()
Ответ на: комментарий от Begemoth

ОК. cpp -E myasm.s реализует подстановку дефайнов :)

jungle
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.