Hello everyone, after following the advice with the problem i have using the LLVM JIT with Clang, could come from a “missing Visual Studio C++ ABI feature”
“My guess is that you are hitting a VS C++ ABI missing feature in
Clang. Ask in the Clang mailing list for a confirmation, but IIRC there
are still missing pieces on either object construction/destrucion,
parameter passing, returning classes and C++ exception support.”
Here is my original message: http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-July/051529.html
You may track, too;
Bug 12477 - [meta] Support Microsoft C++ ABI
Thank, so from what i'm seeing it isn't going to work until it's fixed... Could i use GCC with LLVM 3.1 to produce the bitcode and use it with the JIT while waiting that bug to be fixed?
AFAIK, GCC also doesn't support targeting the Visual Studio C++ ABI. And
there's one thing you're doing — passing a non-POD class by value — that
requires LLVM support that doesn't yet exist.
You might have *slightly* better luck if you instead take that by reference,
but probably you'd be better off either (1) changing to a more C-like
interface or (2) figuring out a way to compile part of your host environment
using the Itanium ABI.