с помощью virtual at imul [var] (и разбирать потом). Как детектить dq? Без ошибок компиляции, естественно. Есть идея сохранить 8 байтов по метке, забить единицами, сделать store 0 at и посмотреть, сколько оно записало, но это какой-то чересчур варварский способ.
В исходном коде? Переопределить db, dw, dd, dq и вставить в каждый - sizeof.
Ну да. Но читерство :) Гораздо лучше написать полстраницы ифов. Я уже придумал. Можно же use64, там любой add существует во всех четырёх вариантах. А потом обратно возвращать режим.
Обсуждают сегодня