3 ms·
"Currently, ErLLVM supports the AMD64 and x86 architectures. There is also some ongoing work for ARM." Isn't the whole idea of LLVM that you don't need to supp
by thinkpad20 13y ago
"Currently, ErLLVM supports the AMD64 and x86 architectures. There is also some ongoing work for ARM."
Isn't the whole idea of LLVM that you don't need to support individual architectures, because LLVM can be separately compiled into whatever architecture you need?
- masklinn 13y agoHere, LLVM is not used to output an independent and self-contained binary (that would hardly make sense). It's used as a backend for HiPE's native code generation[0], and it's possible that the rest of HiPE (or part of the integration itself[1]) is not quite ARM compatible (especially ARM64) [0] http://erllvm.softlab.ntua.gr/documentation/design/pipeline/ http://erllvm.softlab.ntua.gr/documentation/design/pipeline/ [1] "The linearized RTL code is translated to LLVM Assembly. […] After the translation is completed, the LLVM code is printed to a file and the LLVM toolchain is invoked in order to produce an object file. […] The lib/hipe/llvm/elf64_format.erl module is responsible for extracting the binary code and all other necessary information from the object file."
- wmobit 13y agoNo, unfortunately front ends still need to be aware of some of the ABI details of the target to produce the IR for it.