LLVM 20.0.0git
Classes | Namespaces | Macros | Typedefs | Enumerations
ELFObject.h File Reference
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/Twine.h"
#include "llvm/BinaryFormat/ELF.h"
#include "llvm/MC/StringTableBuilder.h"
#include "llvm/ObjCopy/CommonConfig.h"
#include "llvm/Object/ELFObjectFile.h"
#include "llvm/Support/Errc.h"
#include "llvm/Support/FileOutputBuffer.h"
#include "llvm/Support/MemoryBuffer.h"
#include <cstddef>
#include <cstdint>
#include <functional>
#include <memory>
#include <set>
#include <vector>

Go to the source code of this file.

Classes

class  llvm::objcopy::elf::SectionTableRef
 
class  llvm::objcopy::elf::SectionVisitor
 
class  llvm::objcopy::elf::MutableSectionVisitor
 
class  llvm::objcopy::elf::SectionWriter
 
class  llvm::objcopy::elf::ELFSectionWriter< ELFT >
 
class  llvm::objcopy::elf::ELFSectionSizer< ELFT >
 
class  llvm::objcopy::elf::BinarySectionWriter
 
struct  llvm::objcopy::elf::IHexRecord
 
class  llvm::objcopy::elf::IHexSectionWriterBase
 
class  llvm::objcopy::elf::IHexSectionWriter
 
class  llvm::objcopy::elf::Writer
 
class  llvm::objcopy::elf::ELFWriter< ELFT >
 
class  llvm::objcopy::elf::BinaryWriter
 
class  llvm::objcopy::elf::ASCIIHexWriter
 
class  llvm::objcopy::elf::IHexWriter
 
class  llvm::objcopy::elf::SRECWriter
 
struct  llvm::objcopy::elf::SRecord
 
class  llvm::objcopy::elf::SRECSectionWriterBase
 
class  llvm::objcopy::elf::SRECSizeCalculator
 
class  llvm::objcopy::elf::SRECSectionWriter
 
class  llvm::objcopy::elf::SectionBase
 
class  llvm::objcopy::elf::Segment
 
class  llvm::objcopy::elf::Section
 
class  llvm::objcopy::elf::OwnedDataSection
 
class  llvm::objcopy::elf::CompressedSection
 
class  llvm::objcopy::elf::DecompressedSection
 
class  llvm::objcopy::elf::StringTableSection
 
struct  llvm::objcopy::elf::Symbol
 
class  llvm::objcopy::elf::SectionIndexSection
 
class  llvm::objcopy::elf::SymbolTableSection
 
struct  llvm::objcopy::elf::Relocation
 
class  llvm::objcopy::elf::RelocationSectionBase
 
class  llvm::objcopy::elf::RelocSectionWithSymtabBase< SymTabType >
 
class  llvm::objcopy::elf::RelocationSection
 
class  llvm::objcopy::elf::GroupSection
 
class  llvm::objcopy::elf::DynamicSymbolTableSection
 
class  llvm::objcopy::elf::DynamicSection
 
class  llvm::objcopy::elf::DynamicRelocationSection
 
class  llvm::objcopy::elf::GnuDebugLinkSection
 
class  llvm::objcopy::elf::Reader
 
class  llvm::objcopy::elf::BasicELFBuilder
 
class  llvm::objcopy::elf::BinaryELFBuilder
 
class  llvm::objcopy::elf::IHexELFBuilder
 
class  llvm::objcopy::elf::ELFBuilder< ELFT >
 
class  llvm::objcopy::elf::BinaryReader
 
class  llvm::objcopy::elf::IHexReader
 
class  llvm::objcopy::elf::ELFReader
 
class  llvm::objcopy::elf::Object
 

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 
namespace  llvm::objcopy
 
namespace  llvm::objcopy::elf
 

Macros

#define MAKE_SEC_WRITER_FRIEND
 

Typedefs

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

Enumerations

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

Macro Definition Documentation

◆ MAKE_SEC_WRITER_FRIEND

#define MAKE_SEC_WRITER_FRIEND
Value:
friend class SectionWriter; \
friend class IHexSectionWriterBase; \
friend class IHexSectionWriter; \
friend class SRECSectionWriter; \
friend class SRECSectionWriterBase; \
friend class SRECSizeCalculator; \
template <class ELFT> friend class ELFSectionWriter; \
template <class ELFT> friend class ELFSectionSizer;

Definition at line 171 of file ELFObject.h.