将llvm IR转换为NASM组件

问题描述 投票:0回答:1

我正在尝试将一大堆llvm IR代码转换为在NASM上运行的汇编代码。我对汇编或llvm IR不太熟悉。我想知道是否有任何编译器/汇编器/工具可以帮助我完成此任务,或者是否有任何此类工具可用。

assembly llvm nasm
1个回答
0
投票

LLVM-IR仍然需要编译。例如,使用clang -c -O3 -march=native -ffast-math进行此操作,然后使用NASM语法反汇编程序进行分解,例如Agner Fog的objconv

如果您指的是手写的LLVM-IR,那么我认为移植的难易程度取决于代码使用的寄存器数是否少于16; x86-64仅具有15个通用整数寄存器,不包括堆栈指针。

如果LLVM-IR使用更多,则需要确定要向堆栈溢出/从堆栈中重新加载的“变量”(以及何时不将某些变量永久保留在堆栈上,而将其他变量永久保留在堆栈上)在寄存器中)。

© www.soinside.com 2019 - 2024. All rights reserved.