LLVM 20.0.0git
|
Namespaces | |
namespace | coff |
namespace | elf |
namespace | macho |
namespace | wasm |
namespace | xcoff |
Classes | |
struct | AddressUpdate |
struct | COFFConfig |
struct | CommonConfig |
struct | ConfigManager |
struct | ELFConfig |
struct | MachineInfo |
struct | MachOConfig |
class | MultiFormatConfig |
class | NameMatcher |
class | NameOrPattern |
struct | NewSectionInfo |
struct | NewSymbolInfo |
struct | SectionFlagsUpdate |
struct | SectionPatternAddressUpdate |
struct | SectionRename |
struct | WasmConfig |
struct | XCOFFConfig |
Enumerations | |
enum class | FileFormat { Unspecified , ELF , Binary , IHex , SREC } |
enum | SectionFlag { SecNone = 0 , SecAlloc = 1 << 0 , SecLoad = 1 << 1 , SecNoload = 1 << 2 , SecReadonly = 1 << 3 , SecDebug = 1 << 4 , SecCode = 1 << 5 , SecData = 1 << 6 , SecRom = 1 << 7 , SecMerge = 1 << 8 , SecStrings = 1 << 9 , SecContents = 1 << 10 , SecShare = 1 << 11 , SecExclude = 1 << 12 , SecLarge = 1 << 13 } |
enum class | DiscardType { None , All , Locals } |
enum class | MatchStyle { Literal , Wildcard , Regex } |
enum class | AdjustKind { Set , Add , Subtract } |
enum class | SymbolFlag { Global , Local , Weak , Default , Hidden , Protected , File , Section , Object , Function , IndirectFunction , Debug , Constructor , Warning , Indirect , Synthetic , UniqueObject } |
Functions | |
Error | executeObjcopyOnArchive (const MultiFormatConfig &Config, const object::Archive &Ar) |
Applies the transformations described by Config to each member in archive Ar . | |
Error | executeObjcopyOnBinary (const MultiFormatConfig &Config, object::Binary &In, raw_ostream &Out) |
Applies the transformations described by Config to In and writes the result into Out . | |
Expected< std::vector< NewArchiveMember > > | createNewArchiveMembers (const MultiFormatConfig &Config, const object::Archive &Ar) |
Applies the transformations described by Config to each member in archive Ar . | |
static Error | deepWriteArchive (StringRef ArcName, ArrayRef< NewArchiveMember > NewMembers, SymtabWritingMode WriteSymtab, object::Archive::Kind Kind, bool Deterministic, bool Thin) |
|
strong |
Enumerator | |
---|---|
Set | |
Add | |
Subtract |
Definition at line 154 of file CommonConfig.h.
|
strong |
Enumerator | |
---|---|
None | |
All | |
Locals |
Definition at line 80 of file CommonConfig.h.
|
strong |
Enumerator | |
---|---|
Unspecified | |
ELF | |
Binary | |
IHex | |
SREC |
Definition at line 28 of file CommonConfig.h.
|
strong |
Enumerator | |
---|---|
Literal | |
Wildcard | |
Regex |
Definition at line 86 of file CommonConfig.h.
Enumerator | |
---|---|
SecNone | |
SecAlloc | |
SecLoad | |
SecNoload | |
SecReadonly | |
SecDebug | |
SecCode | |
SecData | |
SecRom | |
SecMerge | |
SecStrings | |
SecContents | |
SecShare | |
SecExclude | |
SecLarge |
Definition at line 50 of file CommonConfig.h.
|
strong |
Enumerator | |
---|---|
Global | |
Local | |
Weak | |
Default | |
Hidden | |
Protected | |
File | |
Section | |
Object | |
Function | |
IndirectFunction | |
Debug | |
Constructor | |
Warning | |
Indirect | |
Synthetic | |
UniqueObject |
Definition at line 166 of file CommonConfig.h.
Expected< std::vector< NewArchiveMember > > llvm::objcopy::createNewArchiveMembers | ( | const MultiFormatConfig & | Config, |
const object::Archive & | Ar | ||
) |
Applies the transformations described by Config
to each member in archive Ar
.
Definition at line 23 of file Archive.cpp.
References llvm::object::Archive::children(), Config, llvm::createFileError(), E, executeObjcopyOnBinary(), llvm::Expected< T >::get(), llvm::object::Binary::getFileName(), llvm::NewArchiveMember::getOldMember(), llvm::Error::success(), and llvm::Expected< T >::takeError().
Referenced by executeObjcopyOnArchive(), and llvm::objcopy::macho::executeObjcopyOnMachOUniversalBinary().
|
static |
Definition at line 60 of file Archive.cpp.
References llvm::FileOutputBuffer::create(), llvm::createFileError(), E, llvm::ArrayRef< T >::empty(), llvm::FileOutputBuffer::F_executable, llvm::ArrayRef< T >::front(), llvm::object::Archive::K_BSD, llvm::object::Archive::K_DARWIN, llvm::Error::success(), llvm::Expected< T >::takeError(), and llvm::writeArchive().
Referenced by executeObjcopyOnArchive().
Error llvm::objcopy::executeObjcopyOnArchive | ( | const MultiFormatConfig & | Config, |
const object::Archive & | Ar | ||
) |
Applies the transformations described by Config
to each member in archive Ar
.
Writes a result in a file specified by Config.OutputFilename
.
Definition at line 97 of file Archive.cpp.
References Config, createNewArchiveMembers(), deepWriteArchive(), llvm::objcopy::CommonConfig::DeterministicArchives, llvm::object::Archive::hasSymbolTable(), llvm::object::Archive::isThin(), llvm::object::Archive::kind(), llvm::NormalSymtab, llvm::NoSymtab, llvm::objcopy::CommonConfig::OutputFilename, and llvm::Expected< T >::takeError().
Error llvm::objcopy::executeObjcopyOnBinary | ( | const MultiFormatConfig & | Config, |
object::Binary & | In, | ||
raw_ostream & | Out | ||
) |
Applies the transformations described by Config
to In
and writes the result into Out
.
The function executeObjcopyOnBinary does the dispatch based on the format of the input binary (ELF, MachO or COFF).
This function does the dispatch based on the format of the input binary (COFF, ELF, MachO or wasm).
Definition at line 36 of file ObjCopy.cpp.
References Config, llvm::createStringError(), llvm::objcopy::coff::executeObjcopyOnBinary(), llvm::objcopy::elf::executeObjcopyOnBinary(), llvm::objcopy::macho::executeObjcopyOnBinary(), llvm::objcopy::wasm::executeObjcopyOnBinary(), llvm::objcopy::xcoff::executeObjcopyOnBinary(), and llvm::objcopy::macho::executeObjcopyOnMachOUniversalBinary().
Referenced by createNewArchiveMembers().