[llvm-dev] Orc JIT + STL = broken on Windows?

Geoff Levner via llvm-dev llvm-dev at lists.llvm.org
Fri Apr 2 03:40:04 PDT 2021


Sorry, there is a typo in my previous message: read "jit-kind" where I
typed "jit-end".

On Fri, Apr 2, 2021 at 12:37 PM Geoff Levner <glevner at gmail.com> wrote:

> Given this C++ code (hello.cpp):
>
>     #include <iostream>
>     int main()
>     {
>         std::cout << "Hi, mom." << std::endl;
>         return 0;
>     }
>
> On Linux (CentOS 7), no problem:
>
>     > clang++ -c -emit-llvm hello.cpp
>     > lli --jit-end=orc-lazy hello.bc
>     Hi, mom.
>     >
>
> But on Windows (7):
>
>     > clang++ -c -emit-llvm hello.cpp
>     > lli --jit-end=orc-lazy hello.bc
>     LLVM ERROR: Associative COMDAT symbol
> '??_7_Iostream_error_category2 at std@@6B@' is not a key for its COMDAT.
> PLEASE submit a bug report to https://bugs.llvm.org/ and include the
> crash backtrace.
>
> I know Orc JIT lacks COMDAT support, but I thought that just caused
> duplicate symbols sometimes. Am I doing something stupid here? Or should I
> just give up now on porting our Orc-based application to Windows? (The
> application JIT-compiles C++ modules which rely heavily on STL.)
>
> Geoff
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20210402/f9eacb89/attachment.html>


More information about the llvm-dev mailing list