[llvm-dev] MCJIT - missing DataLayout?
Neil Henning via llvm-dev
llvm-dev at lists.llvm.org
Thu May 5 05:51:46 PDT 2016
Another approach that we use - we just wipe the DataLayout on the module
about to be handed to the ExecutionEngine, and in MCJIT.cpp there is a
line that says 'if datalayout isDefault() (eg. empty string
representation "") set it to the datalayout of the Target Machine'.
Cheers,
-Neil.
On 05/05/16 13:48, Josh Klontz via llvm-dev wrote:
> Pawel,
>
> Hopefully this provides a partial answer: when using MCJIT I set the
> data layout for every module. My code looks roughly like:
>
> TargetRegistry::lookupTarget(sys::getProcessTriple())->createTargetMachine()->createDataLayout();
>
> -Josh
>
> On Thu, May 5, 2016 at 5:34 AM, Paweł Bylica <llvm-dev at lists.llvm.org
> <mailto:llvm-dev at lists.llvm.org>> wrote:
>
> Hi everyone,
>
> I was happily using MCJIT for over a year until yesterday when I
> created a function call with an argument of a struct type. That
> caused a crash in SelectionDAG around DataLayout::getAlignment().
>
> I remember the noise about the DataLayout started being mandatory.
> But I cannot find precise information.
>
> Should I set the DataLayout in every Module created?
>
> Where can I get the DataLayout for the host process from?
>
> Can a DataLayout instance be shared between modules?
>
> - Paweł
>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
>
>
>
> _______________________________________________
> 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/20160505/bf00c919/attachment.html>
More information about the llvm-dev
mailing list