LLVM 18.0.0git
|
Namespaces | |
namespace | coff |
namespace | elf |
namespace | macho |
namespace | wasm |
namespace | xcoff |
Classes | |
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 | SectionRename |
struct | WasmConfig |
struct | XCOFFConfig |
Enumerations | |
enum class | FileFormat { Unspecified , ELF , Binary , IHex } |
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 | 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 | |
---|---|
None | |
All | |
Locals |
Definition at line 87 of file CommonConfig.h.
|
strong |
Enumerator | |
---|---|
Unspecified | |
ELF | |
Binary | |
IHex |
Definition at line 30 of file CommonConfig.h.
|
strong |
Enumerator | |
---|---|
Literal | |
Wildcard | |
Regex |
Definition at line 93 of file CommonConfig.h.
Enumerator | |
---|---|
SecNone | |
SecAlloc | |
SecLoad | |
SecNoload | |
SecReadonly | |
SecDebug | |
SecCode | |
SecData | |
SecRom | |
SecMerge | |
SecStrings | |
SecContents | |
SecShare | |
SecExclude | |
SecLarge |
Definition at line 57 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 161 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 24 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 61 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 98 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 38 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().