[llvm-dev] JITting COFF objects under Windows/x86

Adrien Guinet via llvm-dev llvm-dev at lists.llvm.org
Sun Jul 21 11:47:27 PDT 2019


Hello all,

MCJIT seems to produce ELF objects under Windows/x86, by using a triple
like "x86_64-pc-windows-elf". While it's working fine for most usage, it
makes adding precompiled static libraries to the runtime loader a
complex task, if said precompiled static library has been compiled
traditionally with for instance MSVC (and would thus result in a COFF
object).

It looks like this choice of using ELF under Windows has been made at
the time because the only runtime dynamic loader that LLVM had was for
ELF object. That being said, it seems to have a runtime loader for COFF
now [1].

So my questions are simple: is this runtime mature enough to be used,
and if so, how can we do such a thing? (Indeed, I haven't figured out
yet where the "-elf" part of the target triple comes from!).

For reference, I would like to use a COFF object to maybe solve this
issue: https://github.com/numba/llvmlite/issues/495 .

Thanks for any help!

Regards,

[1]
https://github.com/llvm-mirror/llvm/blob/master/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCOFF.h
-- 
Adrien Guinet


More information about the llvm-dev mailing list