Как установить диназму?

Я пытаюсь использовать dynasm. Я нашел несколько обучающих программ онлайн для этого, но все они требуют использования странных строк кода, таких как |.arch x64 что мой компилятор (MSVC) отвергает. Есть упоминания о автономном парсере Lua и .dasc файлы, но ни один из этих руководств не упоминает, как все это должно быть настроено.

Как диназм должен быть настроен в проекте?

0

Решение

DynASM позволяет вам гораздо проще записывать сборку, смешивая код C и код ASM. Файлы DynASM должны быть предварительно обработаны. Результатом компиляции файла DynASM (.dasc) является файл C (.c), который вы можете позже интегрировать в ваш проект.

Для предварительной обработки файла DynASM вы должны использовать программу dynasm, которая поставляется с исходным кодом LuaJIT (dynasm/dynasm.lua), Упомянутые вами «странные» строки — это код ASM, который обрабатывается DynASM. ASM-код сохраняется как байтовые значения в массиве actions в результирующей C-программе.

На DynASM есть большой тур Джош Хаберман: Привет, Мир JIT: Радость Простых JIT. Учебник включает пример кода. Код доступен в виде GitHub репозиторий. Получить его и начать играть с ним (примечание: в настоящее время основная ветвь не создается, я только что отправил pull-запрос, чтобы исправить это).

Еще одно хорошее вступление к DynASM:

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]