Displaying 5 results from an estimated 5 matches for "planschivalue".
2019 Sep 25
4
Questions after playing around with KaleidoscopeJIT (With source files)
...ed to only attach the source files - hoping it will help >o<
---
1.) Resolving undefined references
I wonder what the best practice is to resolve symbols that are not defined in my llvm::Module.
For that purpose I created "CM_ExternalConstant", that is using "extern const int planschiValue;" and compiled it with Clang. (See CM_ExternalConstant.cpp)
"planschiValue" is not defined in the module, so it will be unreferenced when I jit it. What is the best way to do this? I used 3 different ways:
1.) I went over the llvm::Module before adding it to the layers. I searched...
2020 Aug 24
2
ORC JIT - Incorrect support for COFF files?
Hey Lang and Stefan,
Using dllimport on my “planschiValue” actually worked! But I have no idea why, because the relocation is still a REL32 if I use dumpbin… So how is it possible for that to work?
However… when I load an COFF object file, am I able to change the relocations to dllimport somehow? I honestly can’t imagine how this would work since the mach...
2020 Aug 20
2
ORC JIT - Incorrect support for COFF files?
...reached the point to JIT and execute some code. For this purpose I created a test file (TestModule.cpp) and compiled it with Clang, generating two different files, one in the LLVM IR format and one in the Microsoft COFF format.
The JIT resolves all undefined references, including "extern int planschiValue;" and "void externFunction();". Using the IR Module I will get the correct address for "planschiValue" and the correct value - however this is not the case for the object file.
For the object file I get (via printf from the module) the address 0x000002295D6B003C while the...
2020 Aug 21
2
ORC JIT - Incorrect support for COFF files?
...is is for freestanding function only. I didn't
consider member function calls, etc. (addend is always 0) because it was
not relevant for the specific issue.
Hope it helps
Stefan
On 21/08/2020 13:22, Gaier, Bjoern via llvm-dev wrote:
>
> I figured out that this problem is caused because “planschiValue” has
> a REL32 relocation and the addresses between the code and the variable
> overflows 32bit.
>
> Is there any workaround for this kind of issue?
>
>
>
> *From:*llvm-dev <llvm-dev-bounces at lists.llvm.org> *On Behalf Of
> *Gaier, Bjoern via llvm-dev
> *Sent...
2020 Aug 25
2
ORC JIT - Incorrect support for COFF files?
...24 August 2020 19:46
To: Gaier, Bjoern <Bjoern.Gaier at horiba.com>
Cc: Stefan Gränitz <stefan.graenitz at gmail.com>; LLVM Developers Mailing List <llvm-dev at lists.llvm.org>
Subject: Re: [llvm-dev] ORC JIT - Incorrect support for COFF files?
Hi Bjoern,
Using dllimport on my “planschiValue” actually worked! But I have no idea why, because the relocation is still a REL32 if I use dumpbin…
From memory dllimport is like a GOT access: You'll have a REL32 either way, but instead of a REL32 directly to the variable you'll end up with a REL32 to an entry in a pointer table containi...