[an error occurred while processing this directive]
|
Для чистого асма:
В асме объявляю общую структуру на скока надо.
тут же приписываю дефайны со смещениями полей в структуре
использую всего один указатель на начало структуры
и доступ через указатель плюс дефайны...
тут надо только внимательнее быть с шириной полей...
вариант для смеси асма с С чуть другой:
объявленную в *.h структуру импортируем в асм
---------------------------
xxx.h
...
typedef struct XXX_tag {
int tt1;
int tt2;
...
} xxx_t;
...
---------------------------
.import "xxx.h";
---------------------------
определяем псевдо-таг.
.extern STRUCT XXX_tag __mm;
---------------------------
используем:
p3 - указатель на реальную структуру
[p3 + OFFSETOF(XXX_tag, tt1)] = r7;
r7 = [p3 + OFFSETOF(XXX_tag, tt2)];
E-mail: info@telesys.ru