Displaying 20 results from an estimated 4000 matches similar to: "[LLVMdev] MCJIT code owner nomination"
2013 May 09
2
[LLVMdev] TLS with MCJIT (an experimental patch)
Can you try it without the MAP_32BIT part? It won't be as reliable, but if the memory addresses it is asking for are available it could work.
I agree that there are good reasons not to lock in on a single memory address, but I'm curious as to what other obstacles might be lurking behind the ones we know about. If the patch works when memory is loaded below 2GB then it would be possible
2013 May 15
0
[LLVMdev] TLS with MCJIT (an experimental patch)
Can you elaborate on why MCJIT TLS support needs code in the low 2 GB?
What piece of data do you need to be reachable? It sounds like this was
discussed on IRC, but I'm curious.
Does the MCJIT even have the reachability problems of the old JIT? If you
build an object file in memory, presumably you can measure it and then
allocate +x memory for it all at once, instead of the old model of
2013 May 10
0
[LLVMdev] TLS with MCJIT (an experimental patch)
Without the MSP_32BIT part, I consistently hit this assertion:
Assertion failed: ((Type == ELF::R_X86_64_32 && (Value <= UINT32_MAX)) || (Type == ELF::R_X86_64_32S && ((int64_t)Value <= INT32_MAX && (int64_t)Value >= INT32_MIN))), function resolveX86_64Relocation, file ../lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp, line 222.
David
On 9 May 2013, at
2013 Oct 15
2
[LLVMdev] A weird, reproducable problem with MCJIT
Correct or no I don't know, but this change will affect all x86-64 targets
including Linux and Windows as getMaxStubSize() is called from the ELF
linker as well as the Mach-O linker.
2013/10/15 Christian Schafmeister <chris.schaf at verizon.net>
>
> With the help of iain at codesourcery.com and andrew.kaylor at intel.com we
> tracked the problem down to a bad relocation that
2013 May 15
7
[LLVMdev] TLS with MCJIT (an experimental patch)
Hi David,
I believe that assertion indicates that something didn't get loaded into the lower 2GB of address space. That is, the memory manager isn't allocating memory in that range.
I'm sure there must be a way to allocate memory in that range on FreeBSD. The system loader has to do it, right? I just don't know what makes it happen.
-Andy
-----Original Message-----
From: Dr
2013 Jan 31
2
[LLVMdev] Assertions in RuntimeDyldELF in ExecutionEngine/MCJIT tests
On Wed, Jan 30, 2013 at 8:34 PM, Kaylor, Andrew <andrew.kaylor at intel.com>wrote:
> Yes, at some point we definitely should introduce stubs as a last resort
> for x86-64 relocations when the sections are too far apart, but I’d like to
> avoid it whenever possible.****
>
> ** **
>
> What I meant in my previous message was that I’d have
> RecordingMemoryManager use
2013 Oct 15
0
[LLVMdev] A weird, reproducable problem with MCJIT
Yes, you are correct Yaron. Before we commit this we ought to put a check in to see what the target OS is. I just suggested the change below as a quick and easy way to verify that this was the cause of the problem. I'll clean it up.
-Andy
From: Yaron Keren [mailto:yaron.keren at gmail.com]
Sent: Monday, October 14, 2013 9:09 PM
To: Christian Schafmeister; Kaylor, Andrew; iain at
2013 Sep 17
2
[LLVMdev] Multiple module support in MCJIT
I'm about to start working on multiple module support in MCJIT. I know a lot of people are interested in this so it seemed like a good idea to begin by soliciting input.
My immediate plan involves the following:
- Add something to the MCJIT interface to explicitly request module compilation
- Isolate module-specific state variables into a structure so that the state of each module can be
2013 Jan 30
2
[LLVMdev] Assertions in RuntimeDyldELF in ExecutionEngine/MCJIT tests
Hi Andrew,
Looks like RecordingMemoryManager in lli just calls malloc() and it would
be strange to make assumptions (or enforce) that the difference between two
returned pointers in 64-bit
virtual address space will be fit into 32 bits. Can we do smth similar to
what Adhemerval proposed (see the special case in processRelocationRef for
ELF::R_PPC64_REL24 relocations)?
On Tue, Jan 29, 2013 at
2013 May 08
2
[LLVMdev] TLS with MCJIT (an experimental patch)
Hi David,
Following up on the problems we discussed yesterday on IRC regarding TLS with MCJIT, I've put together the attached experimental patch.
This patch makes three changes:
1. SectionMemoryManager is changed to request memory below the 2GB boundary by default.
2. sys::Memory::allocateMappedMemory is changed to set the MAP_32BIT flag if the requested "near" block
2013 Jan 31
0
[LLVMdev] Assertions in RuntimeDyldELF in ExecutionEngine/MCJIT tests
It's probably best to open a bug.
-Andy
From: Alexey Samsonov [mailto:samsonov at google.com]
Sent: Thursday, January 31, 2013 12:27 AM
To: Kaylor, Andrew
Cc: LLVM Developers Mailing List
Subject: Re: Assertions in RuntimeDyldELF in ExecutionEngine/MCJIT tests
On Wed, Jan 30, 2013 at 8:34 PM, Kaylor, Andrew <andrew.kaylor at intel.com<mailto:andrew.kaylor at intel.com>> wrote:
2013 Oct 15
1
[LLVMdev] A weird, reproducable problem with MCJIT
If I spoke incorrectly about what systems this problem/change effects I
apologize. I'll leave it to Andrew to determine that.
Best,
.Chris.
"Kaylor, Andrew" <andrew.kaylor at intel.com> writes:
> Yes, you are correct Yaron. Before we commit this we ought to put a
> check in to see what the target OS is. I just suggested the change
> below as a quick and easy way
2013 Sep 18
0
[LLVMdev] Multiple module support in MCJIT
Hi Andy,
Sounds good in general. One question below:
On Tue, Sep 17, 2013 at 4:01 PM, Kaylor, Andrew <andrew.kaylor at intel.com>wrote:
> I'm about to start working on multiple module support in MCJIT. I know a
> lot of people are interested in this so it seemed like a good idea to begin
> by soliciting input.
>
> My immediate plan involves the following:
>
> -
2013 Jan 30
0
[LLVMdev] Assertions in RuntimeDyldELF in ExecutionEngine/MCJIT tests
Yes, at some point we definitely should introduce stubs as a last resort for x86-64 relocations when the sections are too far apart, but I'd like to avoid it whenever possible.
What I meant in my previous message was that I'd have RecordingMemoryManager use something other than malloc (such as the memory API used by SectionMemoryManager) to keep section near one another.
-Andy
From:
2013 Oct 14
3
[LLVMdev] A weird, reproducable problem with MCJIT
Hi,
I had similar problems with EH in ELF in
RTDyldMemoryManager::registerEHFrames() calling __register_frame().
I'm not sure these problems are related to this problem since your crash
happens in RuntimeDyldMachO::registerEHFrames() in its own processFDE
(there are two functions named processFDE(), one in
RuntimeDyldMachO.cpp and one in RTDyldMemoryManager.cpp) *before*
2013 May 09
0
[LLVMdev] TLS with MCJIT (an experimental patch)
Hi,
Unfortunately, I can't compile this patch. MAP_32BIT is a Linuxism that doesn't work on FreeBSD (or OS X, or, as far as I can tell, anywhere except Linux). We can consider adding something similar to FreeBSD (although I'm hesitant to encourage anything that increases the determinism of the memory layout of JITed code, for security reasons), but it doesn't seem ideal.
2013 Apr 10
2
[LLVMdev] Migration from JIT to MCJIT
Existing clients (LLDB) deal with externals by resolving them to constant function pointers that are referenced in the IR. That’s obviously ugly as hell, but it gets things done.
The old JIT was able to simplify things because it assumed the JITed code was running in the same process as the JIT compiler. The MCJIT doesn’t assume that, so it has to handle more possibilities. For example, that the
2013 Oct 14
0
[LLVMdev] A weird, reproducable problem with MCJIT
Hi Christian,
Thanks for sharing this.
Yaron Keren has been investigating some problems in the EH frame registration code recently, and I think this may be related. It at least sounds similar to the type of variations in behavior based on code size that Yaron was seeing.
-Andy
-----Original Message-----
From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of
2013 Apr 11
2
[LLVMdev] Migration from JIT to MCJIT
Andrew,
I've attached a small reproduction of the issue.
Reproduce by:
$ /usr/bin/g++ `llvm-config --cxxflags` -g -m32 -c mcjit_external_symbol.cpp
$ /usr/bin/g++ `llvm-config --ldflags` -g -m32 -o mcjit_external_symbol mcjit_external_symbol.o `llvm-config --libs all`
$ ./mcjit_external_symbol
verifying...
LLVM ERROR: Program used external function '_external' which could not be
2013 Jan 29
3
[LLVMdev] Assertions in RuntimeDyldELF in ExecutionEngine/MCJIT tests
Hi!
I'm trying to run LLVM test suite under AddressSanitizer and get test
failures in:
LLVM :: ExecutionEngine/MCJIT/simpletest-remote.ll
LLVM :: ExecutionEngine/MCJIT/test-data-align-remote.ll
LLVM :: ExecutionEngine/MCJIT/test-fp-no-external-funcs-remote.ll
LLVM :: ExecutionEngine/MCJIT/test-global-init-nonzero-remote.ll
All of them fail with assertion:
lli: