Couple of fixes to LLVM AOT compiler on Windows x64. (#13474)
commit7e8d4303facc410712ba13bbc1f06489919e4379
authorJohan Lorensson <lateralusx.github@gmail.com>
Thu, 21 Mar 2019 14:05:01 +0000 (21 10:05 -0400)
committerZoltan Varga <vargaz@gmail.com>
Thu, 21 Mar 2019 14:05:01 +0000 (21 10:05 -0400)
treeb430f6bd17ae77d6df302e6e05816300e7b9b96d
parent5852d1cf74257b06b30fd7ad23b9427a37343fe3
Couple of fixes to LLVM AOT compiler on Windows x64. (#13474)

* Enable MSVC objects on LLVM >= 6.00
* Always used PIC relocation-model on Windows x64 due to LLVM problem with
static triggering incorrect ADDR32 relocation entries in 64-bit objects.
* Add CodeView symbol format instead of DWARF for Windows x64.
* Fix LLVM outfile when doing static link to not end up in temp directory.
* Only add /DEFAULTLIB when using MSVC and not doing static compile. For
static compile the needed libraries must be added when objects get's linked
and since the needed libraries are c-runtime libraries, should be transparent
for most applications consuming the object files.
mono/mini/aot-compiler.c
mono/mini/mini-llvm.c
mono/mini/mini-llvm.h