Разве вы не компилируете среду выполнения с помощью собственного компилятора?
Обратите внимание, что другим вариантом является использование внешнего ассемблера (например, AS). Менее оптимальный, но принцип портативный. (хотя синтаксис ассемблера сильно различается)
Наш собственный маленький компилятор (совместимый с GCC-связями) использовал AS для большей части своего ассемблера и приобрел собственный внутренний ассемблер только через 8 лет или около того.
P.s. если вы реализуете внутренний ассемблер, взгляните на NASM, их таблицы инструкций на ассемблере и их адресация действительно чистые и их часто можно преобразовать (и использовать для регулярных обновлений для новых инструкций)