LLVM  15.0.0git
Classes | Typedefs | Enumerations | Functions
llvm::objcopy::elf Namespace Reference

Classes

class  BasicELFBuilder
 
class  BinaryELFBuilder
 
class  BinaryReader
 
class  BinarySectionWriter
 
class  BinaryWriter
 
class  CompressedSection
 
class  DecompressedSection
 
class  DynamicRelocationSection
 
class  DynamicSection
 
class  DynamicSymbolTableSection
 
class  ELFBuilder
 
class  ELFReader
 
class  ELFSectionSizer
 
class  ELFSectionWriter
 
class  ELFWriter
 
class  GnuDebugLinkSection
 
class  GroupSection
 
class  IHexELFBuilder
 
class  IHexReader
 
struct  IHexRecord
 
class  IHexSectionWriter
 
class  IHexSectionWriterBase
 
class  IHexWriter
 
class  MutableSectionVisitor
 
class  Object
 
class  OwnedDataSection
 
class  Reader
 
struct  Relocation
 
class  RelocationSection
 
class  RelocationSectionBase
 
class  RelocSectionWithSymtabBase
 
class  Section
 
class  SectionBase
 
class  SectionIndexSection
 
class  SectionTableRef
 
class  SectionVisitor
 
class  SectionWriter
 
class  Segment
 
class  StringTableSection
 
struct  Symbol
 
class  SymbolTableSection
 
class  Writer
 

Typedefs

using IHexLineData = SmallVector< char, 64 >
 

Enumerations

enum  ElfType { ELFT_ELF32LE, ELFT_ELF64LE, ELFT_ELF32BE, ELFT_ELF64BE }
 
enum  SymbolShndxType {
  SYMBOL_SIMPLE_INDEX = 0, SYMBOL_ABS = ELF::SHN_ABS, SYMBOL_COMMON = ELF::SHN_COMMON, SYMBOL_LOPROC = ELF::SHN_LOPROC,
  SYMBOL_AMDGPU_LDS = ELF::SHN_AMDGPU_LDS, SYMBOL_HEXAGON_SCOMMON = ELF::SHN_HEXAGON_SCOMMON, SYMBOL_HEXAGON_SCOMMON_2 = ELF::SHN_HEXAGON_SCOMMON_2, SYMBOL_HEXAGON_SCOMMON_4 = ELF::SHN_HEXAGON_SCOMMON_4,
  SYMBOL_HEXAGON_SCOMMON_8 = ELF::SHN_HEXAGON_SCOMMON_8, SYMBOL_MIPS_ACOMMON = ELF::SHN_MIPS_ACOMMON, SYMBOL_MIPS_TEXT = ELF::SHN_MIPS_TEXT, SYMBOL_MIPS_DATA = ELF::SHN_MIPS_DATA,
  SYMBOL_MIPS_SCOMMON = ELF::SHN_MIPS_SCOMMON, SYMBOL_MIPS_SUNDEFINED = ELF::SHN_MIPS_SUNDEFINED, SYMBOL_HIPROC = ELF::SHN_HIPROC, SYMBOL_LOOS = ELF::SHN_LOOS,
  SYMBOL_HIOS = ELF::SHN_HIOS, SYMBOL_XINDEX = ELF::SHN_XINDEX
}
 

Functions

Error executeObjcopyOnIHex (const CommonConfig &Config, const ELFConfig &ELFConfig, MemoryBuffer &In, raw_ostream &Out)
 Apply the transformations described by Config and ELFConfig to In, which must represent an IHex file, and writes the result into Out. More...
 
Error executeObjcopyOnRawBinary (const CommonConfig &Config, const ELFConfig &ELFConfig, MemoryBuffer &In, raw_ostream &Out)
 Apply the transformations described by Config and ELFConfig to In, which is treated as a raw binary input, and writes the result into Out. More...
 
Error executeObjcopyOnBinary (const CommonConfig &Config, const ELFConfig &ELFConfig, object::ELFObjectFileBase &In, raw_ostream &Out)
 Apply the transformations described by Config and ELFConfig to In and writes the result into Out. More...
 

Typedef Documentation

◆ IHexLineData

using llvm::objcopy::elf::IHexLineData = typedef SmallVector<char, 64>

Definition at line 194 of file ELFObject.h.

Enumeration Type Documentation

◆ ElfType

Enumerator
ELFT_ELF32LE 
ELFT_ELF64LE 
ELFT_ELF32BE 
ELFT_ELF64BE 

Definition at line 71 of file ELFObject.h.

◆ SymbolShndxType

Enumerator
SYMBOL_SIMPLE_INDEX 
SYMBOL_ABS 
SYMBOL_COMMON 
SYMBOL_LOPROC 
SYMBOL_AMDGPU_LDS 
SYMBOL_HEXAGON_SCOMMON 
SYMBOL_HEXAGON_SCOMMON_2 
SYMBOL_HEXAGON_SCOMMON_4 
SYMBOL_HEXAGON_SCOMMON_8 
SYMBOL_MIPS_ACOMMON 
SYMBOL_MIPS_TEXT 
SYMBOL_MIPS_DATA 
SYMBOL_MIPS_SCOMMON 
SYMBOL_MIPS_SUNDEFINED 
SYMBOL_HIPROC 
SYMBOL_LOOS 
SYMBOL_HIOS 
SYMBOL_XINDEX 

Definition at line 611 of file ELFObject.h.

Function Documentation

◆ executeObjcopyOnBinary()

Error llvm::objcopy::elf::executeObjcopyOnBinary ( const CommonConfig Config,
const ELFConfig ELFConfig,
object::ELFObjectFileBase In,
raw_ostream Out 
)

◆ executeObjcopyOnIHex()

Error llvm::objcopy::elf::executeObjcopyOnIHex ( const CommonConfig Config,
const ELFConfig ELFConfig,
MemoryBuffer In,
raw_ostream Out 
)

Apply the transformations described by Config and ELFConfig to In, which must represent an IHex file, and writes the result into Out.

Returns
any Error encountered whilst performing the operation.

Definition at line 770 of file ELFObjcopy.cpp.

References llvm::objcopy::elf::Reader::create(), E, getOutputElfType(), handleArgs(), llvm::tgtok::In, llvm::objcopy::CommonConfig::OutputArch, llvm::Expected< T >::takeError(), and writeOutput().

◆ executeObjcopyOnRawBinary()

Error llvm::objcopy::elf::executeObjcopyOnRawBinary ( const CommonConfig Config,
const ELFConfig ELFConfig,
MemoryBuffer In,
raw_ostream Out 
)

Apply the transformations described by Config and ELFConfig to In, which is treated as a raw binary input, and writes the result into Out.

Returns
any Error encountered whilst performing the operation.

Definition at line 785 of file ELFObjcopy.cpp.

References llvm::objcopy::elf::Reader::create(), E, getOutputElfType(), handleArgs(), llvm::tgtok::In, llvm::objcopy::ELFConfig::NewSymbolVisibility, llvm::objcopy::CommonConfig::OutputArch, llvm::Expected< T >::takeError(), and writeOutput().