| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
ArchiveMemberHeader, suggestion by Rafael Espíndola.
Also The clang-x86-win2008-selfhost bot still does not like the
malformed-machos 00000031.a test, so removing it for now. All
the other bots are fine with it however.
llvm-svn: 250222
|
|
|
|
|
|
|
|
|
| |
that caused aborts. This was because of the characters of the ‘Size’ field in
the archive header did not contain decimal characters.
rdar://22983603
llvm-svn: 250117
|
|
|
|
|
|
| |
by tests
llvm-svn: 249785
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Previously the relative address flag only affected PDB debug info. Now
both DIContext implementations always expect to be passed virtual
addresses. llvm-symbolizer is now responsible for adding ImageBase to
module offsets when --relative-offset is passed.
Reviewers: zturner
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D12883
llvm-svn: 249784
|
|
|
|
|
|
|
|
|
| |
from malformed Mach-O files that caused a crash because of a
section header had a size that extended past the end of the file.
rdar://22983603
llvm-svn: 249768
|
|
|
|
|
|
| |
No change in llvm, but will be tested from lld.
llvm-svn: 249709
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The bitcode format is described in this document:
https://drive.google.com/file/d/0B036uwnWM6RWdnBLakxmeDdOeXc/view
For more info on ThinLTO see:
https://sites.google.com/site/llvmthinlto
The first customer is ThinLTO, however the data structures are designed
and named more generally based on prior feedback. There are a few
comments regarding how certain interfaces are used by ThinLTO, and the
options added here to gold currently have ThinLTO-specific names as the
behavior they provoke is currently ThinLTO-specific.
This patch includes support for generating per-module function indexes,
the combined index file via the gold plugin, and several tests
(more are included with the associated clang patch D11908).
Reviewers: dexonsmith, davidxl, joker.eph
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D13107
llvm-svn: 249270
|
|
|
|
| |
llvm-svn: 248265
|
|
|
|
| |
llvm-svn: 248264
|
|
|
|
| |
llvm-svn: 248263
|
|
|
|
| |
llvm-svn: 248262
|
|
|
|
| |
llvm-svn: 248261
|
|
|
|
|
|
| |
extra times. NFC
llvm-svn: 248140
|
|
|
|
|
|
|
|
|
|
|
| |
short import files
This patch includes a fix for a llvm-readobj test. With this patch,
the tool does no longer print out COFF headers for the short import
file, but that's probably desirable because the header for the short
import file is dummy.
llvm-svn: 246283
|
|
|
|
|
|
|
|
| |
short import files
This change caused a test for llvm-readobj to fail.
llvm-svn: 246277
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
COFF short import files are special kind of files that contains only
DLL-exported symbol names. That's different from object files because
it has no data except symbol names.
This change implements a SymbolicFile interface for the short import
files so that symbol names can be accessed through that interface.
llvm-ar is now able to read the file and create symbol table entries
for short import files.
llvm-svn: 246276
|
|
|
|
|
|
| |
Requested by: Jim Grosbach.
llvm-svn: 245963
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
While introducing support for MinVersionLoadCommand in llvm-readobj I noticed there's
no API to extract Major/Minor/Update components conveniently. Currently consumers
do the bit twiddling on their own, but this will change from now on.
I'll convert llvm-objdump (and llvm-readobj) in a later commit.
Differential Revision: http://reviews.llvm.org/D12282
Reviewed by: rafael
llvm-svn: 245938
|
|
|
|
|
|
|
| |
This function can actually fail since the symbol contains an index to the
section and that can be invalid.
llvm-svn: 244375
|
|
|
|
|
|
|
|
|
| |
In tree they are only used by llvm-readobj, but it is also used by
https://github.com/mono/CppSharp.
While at it, add some missing error checking.
llvm-svn: 244320
|
|
|
|
|
|
|
|
|
|
|
| |
The COFFSymbolRef::isFunctionDefinition() function tests for several conditions
that are not related to whether a symbol is a function, but rather whether
the symbol meets the requirements for a function definition auxiliary record,
which excludes certain symbols such as internal functions and undefined
references. The test we need to determine the symbol type is much simpler:
we only need to compare the complex type against IMAGE_SYM_DTYPE_FUNCTION.
llvm-svn: 244195
|
|
|
|
| |
llvm-svn: 243863
|
|
|
|
|
|
| |
This lets us reenable the lld test disabled in r243758.
llvm-svn: 243761
|
|
|
|
|
|
|
|
| |
This makes llvm-nm consistent with binutils nm on executables and DLLs.
For a vanilla hello world executable, the address of main should include
the default image base of 0x400000.
llvm-svn: 243755
|
|
|
|
|
|
|
|
| |
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D11263
llvm-svn: 243724
|
|
|
|
| |
llvm-svn: 243658
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Object: add IMAGE_FILE_MACHINE_ARM64
The official specifications state that the value of IMAGE_FILE_MACHINE_ARM64
is 0xAA64 (as per the Microsoft Portable Executable and Common Object Format
Specification v8.3).
Reviewers: rnk
Subscribers: llvm-commits, compnerd, ruiu
Differential Revision: http://reviews.llvm.org/D11511
llvm-svn: 243434
|
|
|
|
|
|
| |
We were trying to read it as an external file.
llvm-svn: 242926
|
|
|
|
|
|
| |
The member has to end up with a path relative to the archive.
llvm-svn: 242362
|
|
|
|
|
|
|
| |
We were already doing the right thing for short file names, but not long
ones.
llvm-svn: 242354
|
|
|
|
| |
llvm-svn: 242348
|
|
|
|
|
|
|
| |
We were storing both the path and the file name, which was redundant
and easy to get confused up with.
llvm-svn: 242347
|
|
|
|
| |
llvm-svn: 242334
|
|
|
|
|
|
| |
While at it, test that we can add to a thin archive.
llvm-svn: 242330
|
|
|
|
| |
llvm-svn: 242269
|
|
|
|
| |
llvm-svn: 242250
|
|
|
|
|
|
|
|
|
|
| |
For now the Archive owns the buffers of the thin archive members.
This makes for a simple API, but all the buffers are destructed
only when the archive is destructed. This should be fine since we
close the files after mmap so we should not hit an open file
limit.
llvm-svn: 242215
|
|
|
|
| |
llvm-svn: 242100
|
|
|
|
|
|
| |
This is important for thin archives.
llvm-svn: 242082
|
|
|
|
| |
llvm-svn: 242061
|
|
|
|
|
|
|
| |
It looks like ld64 requires it. With this we seem to be able to bootstrap using
llvm-ar+/usr/bin/true instead of ar+ranlib (currently on stage2).
llvm-svn: 241842
|
|
|
|
|
|
|
| |
This could be optimized and for now we only produce __.SYMDEF
and not "__.SYMDEF SORTED".
llvm-svn: 241814
|
|
|
|
| |
llvm-svn: 241810
|
|
|
|
|
|
|
| |
The gnu ar format uses BE numbers. The BSD one uses LE. Add a helper for one or the
other. NFC for now, just removes some noise from the following patch.
llvm-svn: 241808
|
|
|
|
|
|
|
| |
It will get another use in the following patch. Also rename the other helper to
printGNUSmallMemberHeader for consistency.
llvm-svn: 241805
|
|
|
|
|
|
| |
It is pretty unambiguous how to interpret it and gnu ar accepts it too.
llvm-svn: 241750
|
|
|
|
|
|
| |
NFC, just less error prone.
llvm-svn: 241747
|
|
|
|
| |
llvm-svn: 241727
|
|
|
|
|
|
|
|
| |
No support for the symbol table yet (but will hopefully add it today).
We always use the long filename format so that we can align the member,
which is an advantage of the BSD format.
llvm-svn: 241721
|
|
|
|
| |
llvm-svn: 241692
|