LLVM: llvm::objcopy Namespace Reference (original) (raw)
| Namespaces | |
|---|---|
| namespace | coff |
| namespace | dxbc |
| namespace | elf |
| namespace | macho |
| namespace | wasm |
| namespace | xcoff |
| Classes | |
|---|---|
| struct | AddressUpdate |
| struct | COFFConfig |
| struct | CommonConfig |
| struct | ConfigManager |
| struct | DXContainerConfig |
| struct | ELFConfig |
| struct | MachineInfo |
| struct | MachOConfig |
| class | MultiFormatConfig |
| class | NameMatcher |
| class | NameOrPattern |
| struct | NewSectionInfo |
| struct | NewSymbolInfo |
| struct | RemoveNoteInfo |
| 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 | |
|---|---|
| LLVM_ABI Error | executeObjcopyOnArchive (const MultiFormatConfig &Config, const object::Archive &Ar) |
| Applies the transformations described by Config to each member in archive Ar. | |
| LLVM_ABI 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. |
◆ AdjustKind
◆ DiscardType
◆ FileFormat
| Enumerator |
|---|
| Unspecified |
| ELF |
| Binary |
| IHex |
| SREC |
Definition at line 29 of file CommonConfig.h.
◆ MatchStyle
◆ SectionFlag
| Enumerator |
|---|
| SecNone |
| SecAlloc |
| SecLoad |
| SecNoload |
| SecReadonly |
| SecDebug |
| SecCode |
| SecData |
| SecRom |
| SecMerge |
| SecStrings |
| SecContents |
| SecShare |
| SecExclude |
| SecLarge |
Definition at line 51 of file CommonConfig.h.
◆ SymbolFlag
| Enumerator |
|---|
| Global |
| Local |
| Weak |
| Default |
| Hidden |
| Protected |
| File |
| Section |
| Object |
| Function |
| IndirectFunction |
| Debug |
| Constructor |
| Warning |
| Indirect |
| Synthetic |
| UniqueObject |
Definition at line 167 of file CommonConfig.h.
◆ createNewArchiveMembers()
Applies the transformations described by Config to each member in archive Ar.
Returns
Vector of transformed archive members.
Definition at line 22 of file Archive.cpp.
References llvm::object::Archive::children(), llvm::createFileError(), llvm::objcopy::CommonConfig::DeterministicArchives, executeObjcopyOnBinary(), llvm::Expected< T >::get(), llvm::objcopy::MultiFormatConfig::getCommonConfig(), llvm::object::Binary::getFileName(), llvm::NewArchiveMember::getOldMember(), llvm::objcopy::CommonConfig::InputFilename, llvm::Error::success(), and llvm::Expected< T >::takeError().
Referenced by executeObjcopyOnArchive(), and llvm::objcopy::macho::executeObjcopyOnMachOUniversalBinary().
◆ executeObjcopyOnArchive()
Applies the transformations described by Config to each member in archive Ar.
Writes a result in a file specified by Config.OutputFilename.
Returns
any Error encountered whilst performing the operation.
Definition at line 97 of file Archive.cpp.
References createNewArchiveMembers(), deepWriteArchive(), llvm::objcopy::CommonConfig::DeterministicArchives, llvm::objcopy::MultiFormatConfig::getCommonConfig(), 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().
◆ executeObjcopyOnBinary()
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).
Returns
any Error encountered whilst performing the operation.
Definition at line 37 of file ObjCopy.cpp.
References llvm::createStringError(), llvm::dyn_cast(), llvm::objcopy::coff::executeObjcopyOnBinary(), llvm::objcopy::dxbc::executeObjcopyOnBinary(), llvm::objcopy:🧝:executeObjcopyOnBinary(), llvm::objcopy::macho::executeObjcopyOnBinary(), llvm::objcopy::wasm::executeObjcopyOnBinary(), llvm::objcopy::xcoff::executeObjcopyOnBinary(), llvm::objcopy::macho::executeObjcopyOnMachOUniversalBinary(), llvm::objcopy::MultiFormatConfig::getCOFFConfig(), llvm::objcopy::MultiFormatConfig::getCommonConfig(), llvm::objcopy::MultiFormatConfig::getDXContainerConfig(), llvm::objcopy::MultiFormatConfig::getELFConfig(), llvm::objcopy::MultiFormatConfig::getMachOConfig(), llvm::objcopy::MultiFormatConfig::getWasmConfig(), llvm::objcopy::MultiFormatConfig::getXCOFFConfig(), and llvm::object::invalid_file_type.
Referenced by createNewArchiveMembers().