]> granicus.if.org Git - llvm/commit
[ORC] Turn on symbol-flags overrides for LLJIT on Windows by default.
authorLang Hames <lhames@gmail.com>
Fri, 2 Aug 2019 19:43:20 +0000 (19:43 +0000)
committerLang Hames <lhames@gmail.com>
Fri, 2 Aug 2019 19:43:20 +0000 (19:43 +0000)
commitcf5eb41c9a6838f5fb13d49d7867c88426ea3b39
tree7e84576f11e9435b35042fedcbc423d666dd7512
parent14c4712388cfcec21ef0e8f8f6a75d955b5439f8
[ORC] Turn on symbol-flags overrides for LLJIT on Windows by default.

libObject does not apply the Exported flag to symbols in COFF object files,
which can lead to assertions when the symbol flags initially derived from
IR added to the JIT clash with the flags seen by the JIT linker. Both
RTDyldObjectLinkingLayer and ObjectLinkingLayer have a workaround for this:
they can be told to override the flags seen by the linker with the flags
attached to the materialization responsibility object that was passed down
to the linker. This patch modifies LLJIT's setup code to enable this override
by default on platforms where COFF is the default object format.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@367712 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/ExecutionEngine/Orc/LLJIT.h
lib/ExecutionEngine/Orc/LLJIT.cpp