[llvm-dev] Kaleidoscope examples is broken in MSVC++ for a while

Lang Hames via llvm-dev llvm-dev at lists.llvm.org
Tue Nov 10 08:44:38 PST 2015


We want to support MSVC, but this is not well tested. Any help with this
would be most welcome - Unfortunately I don't have access to a Windows box
or MSVC to test with.

I suspect that your guess is right, and that this is a symbol mangling
issue*. To figure out what's going wrong it would be interesting to know:

(1) In the constructor for KalidoscopeJIT, what is DL initialized too?

(2) If you add that data-layout string to the IR for __anon_expr and
compile it statically with "llc -o - expr.ll", what symbol name does
@__anon_expr get mapped to in the output assembly?

(3) What mangled name does findUnmangledSymbol pass to findSymbol?

The mangled symbols for (2) and (3) *should* match, but the mangling in (2)
can depend on the linkage type and the mangling in (3) doesn't. It might
just be a matter of changing the linkage/visibility of __anon_expr?

Cheers,
Lang.


On Mon, Nov 9, 2015 at 7:28 PM, Sergey Zykov via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> Hello.
>
> It seems like kaleidoscope examples is broken. I took latest branch for
> git, built it with VC++ 2015 (x64) tried to
> run Kaleidoscope-Orc-initial.exe, and got null pointer error when i tried
> to evaluate a simple expression. Seems like something is wrong with the
> symbol mangilng because null pointer is propagated from
> "J.findUnmangledSymbol("__anon_expr")" call. Are you planning to abandon
> JIT support in MSVC++, or something gone out-of sync for a moment?
>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151110/33abca9d/attachment.html>


More information about the llvm-dev mailing list