| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
Added ExecutionEngine/MCJIT tests.
llvm-svn: 153221
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
relocations (i.e., pieces of data whose addresses
are referred to elsewhere in the binary image) and
update the references when the section containing
the relocations moves. The way this works is that
there is a map from section IDs to lists of
relocations.
Because the relocations are associated with the
section containing the data being referred to, they
are updated only when the target moves. However,
many data references are relative and also depend
on the location of the referrer.
To solve this problem, I introduced a new data
structure, Referrer, which simply contains the
section being referred to and the index of the
relocation in that section. These referrers are
associated with the source containing the
reference that needs to be updated, so now
regardless of which end of the relocation moves,
the relocation will now be updated correctly.
llvm-svn: 153147
|
|
|
|
|
|
|
|
|
|
|
| |
code that will be relocated into another memory space.
Now when relocations are resolved, the address of
the relocation in the host memory (where the JIT is)
is passed separately from the address that the
relocation will be at in the target memory (where
the code will run).
llvm-svn: 152264
|
|
|
|
|
|
|
| |
code sections when needed. It just had a conditional
the wrong way around.
llvm-svn: 151777
|
|
|
|
| |
llvm-svn: 150918
|
|
|
|
|
|
|
|
|
| |
- Use unsigned literals when the desired result is unsigned. This mostly allows unsigned/signed mismatch warnings to be less noisy even if they aren't on by default.
- Remove misplaced llvm_unreachable.
- Add static to a declaration of a function on MSVC x86 only.
- Change some instances of calling a static function through a variable to simply calling that function while removing the unused variable.
llvm-svn: 150364
|
|
|
|
| |
llvm-svn: 149967
|
|
|
|
|
|
|
|
|
|
| |
smaller logical headers.
ELF and MachO implementations of RuntimeDyldImpl go into their own header files now.
Reviewed on llvm-commits
llvm-svn: 148652
|
|
|
|
|
|
|
|
| |
The MachO file stores section alignment as log2(alignment-in-bytes). The
allocation routines want the raw alignment-in-bytes value, so adjust
for that.
llvm-svn: 148604
|
|
|
|
| |
llvm-svn: 148593
|
|
|
|
| |
llvm-svn: 148578
|
|
|
|
| |
llvm-svn: 148265
|
|
|
|
| |
llvm-svn: 148264
|
|
|
|
| |
llvm-svn: 148263
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Move to a by-section allocation and relocation scheme. This allows
better support for sections which do not contain externally visible
symbols.
Flesh out the relocation address vs. local storage address separation a
bit more as well. Remote process JITs use this to tell the relocation
resolution code where the code will live when it executes.
The startFunctionBody/endFunctionBody interfaces to the JIT and the
memory manager are deprecated. They'll stick around for as long as the
old JIT does, but the MCJIT doesn't use them anymore.
llvm-svn: 148258
|
|
|
|
| |
llvm-svn: 147654
|
|
|
|
|
|
| |
They don't impact the MCJIT rtdyld, so just mask them off for now.
llvm-svn: 143472
|
|
llvm-svn: 135037
|