[llvm-dev] JIT - Resolve obj file without a main
via llvm-dev
llvm-dev at lists.llvm.org
Wed May 17 07:03:46 PDT 2017
Hi Lang,
I'm using Windows. I was parsing an IR-File and added the Module to the
ExectuionEngine. If I than searched for a function, I just got 0. But when
the module had a main, I got an address. I solved the problem via a call
to "generateCodeForModule". The JIT didn't even called my SymbolResolver
in this special case.
Could you please tell me, if there is a way to allocate the memory for the
codemodules more precise? I would like to allocate the memory for strings
from a separated memory-pool. But how can I detect a string? The only
moment I can do this is in "notifyObjectLoaded" via the names of the
symbols. But than it is impossible for my to get the address of the
symbols. I noticed that some strings are stored in .rdata, but this is no
guarantee.
Kind regards
Björn
From: Lang Hames <lhames at gmail.com>
To: bjoern.gaier at horiba.com
Cc: Clang Dev <cfe-dev at lists.llvm.org>, LLVM Developers Mailing List
<llvm-dev at lists.llvm.org>
Date: 16.05.2017 18:37
Subject: Re: JIT - Resolve obj file without a main
Hi Björn,
I don't recall ever seeing this behavior before. Can you describe the
situation in more detail?
Is this specifically for object files loaded via
RTDyldLinkingLayer::addObjectSet, or does it apply to IR Modules without a
main too?
When you say the JIT won't resolve an address, do you mean that you can't
find anything when you call findSymbol on the JIT, or that the JIT isn't
calling your SymbolResolver back to find addresses?
Was this for MacOS, Linux, or Windows?
Cheers,
Lang.
On Fri, May 12, 2017 at 6:47 AM, <bjoern.gaier at horiba.com> wrote:
Hello Lang,
I noticed, if I load a obj-File without a main-function, the Jitter won't
resolve any address. But if I have a main, everything works fine. Why is
this so? Is there a way to stop this?
Kind regards
Björn
Als GmbH eingetragen im Handelsregister Bad Homburg v.d.H. HRB 9816,
USt.ID-Nr. DE 114 165 789
Geschäftsführer: Hiroshi Kawamura, Dr Hiroshi Nakamura, Markus Bode, Heiko
Lampert, Takashi Nagano, Takeshi Fukushima.
Als GmbH eingetragen im Handelsregister Bad Homburg v.d.H. HRB 9816,
USt.ID-Nr. DE 114 165 789
Geschäftsführer: Hiroshi Kawamura, Dr Hiroshi Nakamura, Markus Bode, Heiko
Lampert, Takashi Nagano, Takeshi Fukushima.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170517/d5004fd0/attachment.html>
More information about the llvm-dev
mailing list