大多数用于动态代码生成的可移植库

时间:2009-09-11 23:35:49

标签: c++ assembly code-generation cpu-architecture machine-code

我正在寻找最便携的汇编程序库,例如asmjitjitasm

当我说'最便携'时,我的意思是,它对大量架构的支持最多。语言并不重要,但C ++将是最好的解决方案,尤其是与GCC结合使用时。

对我来说,重要的架构是x86 / 64,PowerPC和ARM。

5 个答案:

答案 0 :(得分:12)

LuaJIT使用的

DynASM支持x86,x64,ARM,MIPS和PowerPC。

答案 1 :(得分:7)

经过广泛的搜索和研究,我发现LLVM是最好的JIT库。它们全部仅支持x86 / x86_64,LLVM是唯一一个x86 / x86_64 PPC / PPC64。

所以我特此声明它最便携...... 如果有人找到更好的,请 - 哦,请分享。

答案 2 :(得分:4)

GNU为您提供libjitHighly portable到你选择的架构,有文档记录并提供C ++接口。作为GCC你的编译器,我想不出更好的报价。

答案 3 :(得分:2)

您可能会发现NanoJit很有趣。它比LLVM更轻,虽然可怕的文档很少(有一个很好的教程here ......而且它有关于它)。支持的体系结构:

  • 86
  • 64
  • ARM
  • MIPS
  • 的PowerPC

答案 4 :(得分:-4)

“x86 / 64,PowerPC和ARM”不是一个非常广泛的架构。许多开源虚拟机应该支持该集合,包括Mono for one。你想用它做什么?

JIT的Mono supported platforms包括(此处为部分列表 - 链接中的完整列表):

  • X86
  • X86-64
  • IA64(安腾)
  • Power PC
  • ARM
  • MIPS
  • α