#include #include #include "llvm/BinaryFormat/ELFRelocs/x86_64.def" #include "llvm/BinaryFormat/ELFRelocs/Mips.def" #include "llvm/BinaryFormat/ELFRelocs/Hexagon.def" #include "llvm/BinaryFormat/ELFRelocs/i386.def" #include "llvm/BinaryFormat/ELFRelocs/AArch64.def" #include "llvm/BinaryFormat/ELFRelocs/ARM.def" #include "llvm/BinaryFormat/ELFRelocs/ARC.def" #include "llvm/BinaryFormat/ELFRelocs/RISCV.def" #include "llvm/BinaryFormat/ELFRelocs/Lanai.def" #include "llvm/BinaryFormat/ELFRelocs/AMDGPU.def" #include "llvm/BinaryFormat/ELFRelocs/BPF.def" #include "llvm/BinaryFormat/ELFRelocs/VE.def" #include "llvm/BinaryFormat/ELFRelocs/CSKY.def" #include "llvm/BinaryFormat/ELFRelocs/PowerPC.def" #include "llvm/BinaryFormat/ELFRelocs/PowerPC64.def" #include "llvm/BinaryFormat/ELFRelocs/Sparc.def" #include "llvm/BinaryFormat/ELFRelocs/M68k.def" #include "llvm/BinaryFormat/ELFRelocs/LoongArch.def" #include "llvm/BinaryFormat/ELFRelocs/Xtensa.def" #include "llvm/BinaryFormat/DynamicTags.def"">

LLVM: lib/ObjectYAML/ELFYAML.cpp File Reference (original) (raw)

#include "[llvm/ObjectYAML/ELFYAML.h](ELFYAML%5F8h%5Fsource.html)"
#include "[llvm/ADT/APInt.h](APInt%5F8h%5Fsource.html)"
#include "[llvm/ADT/MapVector.h](MapVector%5F8h%5Fsource.html)"
#include "[llvm/ADT/StringRef.h](StringRef%5F8h%5Fsource.html)"
#include "[llvm/BinaryFormat/ELF.h](BinaryFormat%5F2ELF%5F8h%5Fsource.html)"
#include "[llvm/Support/ARMEHABI.h](ARMEHABI%5F8h%5Fsource.html)"
#include "[llvm/Support/Casting.h](Casting%5F8h%5Fsource.html)"
#include "[llvm/Support/ErrorHandling.h](llvm%5F2Support%5F2ErrorHandling%5F8h%5Fsource.html)"
#include "[llvm/Support/MipsABIFlags.h](MipsABIFlags%5F8h%5Fsource.html)"
#include "[llvm/Support/YAMLTraits.h](YAMLTraits%5F8h%5Fsource.html)"
#include "[llvm/Support/WithColor.h](WithColor%5F8h%5Fsource.html)"
#include <cassert>
#include <cstdint>
#include <optional>
#include "llvm/BinaryFormat/ELFRelocs/x86_64.def"
#include "llvm/BinaryFormat/ELFRelocs/Mips.def"
#include "llvm/BinaryFormat/ELFRelocs/Hexagon.def"
#include "llvm/BinaryFormat/ELFRelocs/i386.def"
#include "llvm/BinaryFormat/ELFRelocs/AArch64.def"
#include "llvm/BinaryFormat/ELFRelocs/ARM.def"
#include "llvm/BinaryFormat/ELFRelocs/ARC.def"
#include "llvm/BinaryFormat/ELFRelocs/RISCV.def"
#include "llvm/BinaryFormat/ELFRelocs/Lanai.def"
#include "llvm/BinaryFormat/ELFRelocs/AMDGPU.def"
#include "llvm/BinaryFormat/ELFRelocs/BPF.def"
#include "llvm/BinaryFormat/ELFRelocs/VE.def"
#include "llvm/BinaryFormat/ELFRelocs/CSKY.def"
#include "llvm/BinaryFormat/ELFRelocs/PowerPC.def"
#include "llvm/BinaryFormat/ELFRelocs/PowerPC64.def"
#include "llvm/BinaryFormat/ELFRelocs/Sparc.def"
#include "llvm/BinaryFormat/ELFRelocs/M68k.def"
#include "llvm/BinaryFormat/ELFRelocs/LoongArch.def"
#include "llvm/BinaryFormat/ELFRelocs/Xtensa.def"
#include "llvm/BinaryFormat/DynamicTags.def"

Go to the source code of this file.

Namespaces
namespace llvm
This is an optimization pass for GlobalISel generic memory operations.
namespace llvm::ELFYAML
namespace llvm::yaml
Macros
#define ECase(X)
#define ECase(X)
#define ECase(X)
#define ECase(X)
#define ECase(X)
#define ECase(X)
#define ECase(X)
#define BCase(X)
#define BCaseMask(X, M)
#define ECase(X)
#define BCase(X)
#define BCase(X)
#define ECase(X)
#define ECase(X)
#define ECase(X)
#define ECase(X)
#define ELF_RELOC(X, Y)
#define AARCH64_DYNAMIC_TAG(name, value)
#define MIPS_DYNAMIC_TAG(name, value)
#define HEXAGON_DYNAMIC_TAG(name, value)
#define PPC_DYNAMIC_TAG(name, value)
#define PPC64_DYNAMIC_TAG(name, value)
#define DYNAMIC_TAG_MARKER(name, value)
#define STRINGIFY(X)
#define DYNAMIC_TAG(X, Y)
#define AARCH64_DYNAMIC_TAG(name, value)
#define AARCH64_DYNAMIC_TAG(name, value)
#define MIPS_DYNAMIC_TAG(name, value)
#define MIPS_DYNAMIC_TAG(name, value)
#define HEXAGON_DYNAMIC_TAG(name, value)
#define HEXAGON_DYNAMIC_TAG(name, value)
#define PPC_DYNAMIC_TAG(name, value)
#define PPC_DYNAMIC_TAG(name, value)
#define PPC64_DYNAMIC_TAG(name, value)
#define PPC64_DYNAMIC_TAG(name, value)
#define RISCV_DYNAMIC_TAG(name, value)
#define RISCV_DYNAMIC_TAG(name, value)
#define SPARC_DYNAMIC_TAG(name, value)
#define SPARC_DYNAMIC_TAG(name, value)
#define ECase(X)
#define ECase(X)
#define ECase(X)
#define BCase(X)
#define BCase(X)
Functions
static void llvm::yaml::commonSectionMapping (IO &IO, ELFYAML::Section &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::DynamicSection &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::RawContentSection &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::BBAddrMapSection &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::StackSizesSection &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::HashSection &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::NoteSection &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::GnuHashSection &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::NoBitsSection &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::VerdefSection &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::SymverSection &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::VerneedSection &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::RelocationSection &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::RelrSection &Section)
static void llvm::yaml::groupSectionMapping (IO &IO, ELFYAML::GroupSection &Group)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::SymtabShndxSection &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::AddrsigSection &Section)
static void llvm::yaml::fillMapping (IO &IO, ELFYAML::Fill &Fill)
static void llvm::yaml::sectionHeaderTableMapping (IO &IO, ELFYAML::SectionHeaderTable &SHT)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::LinkerOptionsSection &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::DependentLibrariesSection &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::CallGraphProfileSection &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::ARMIndexTableSection &Section)
static void llvm::yaml::sectionMapping (IO &IO, ELFYAML::MipsABIFlags &Section)
static StringRef llvm::yaml::getStringValue (IO &IO, const char *Key)
static void llvm::yaml::setStringValue (IO &IO, const char *Key, StringRef Val)
static bool llvm::yaml::isInteger (StringRef Val)

AARCH64_DYNAMIC_TAG [1/3]

#define AARCH64_DYNAMIC_TAG ( name,
value )

AARCH64_DYNAMIC_TAG [2/3]

#define AARCH64_DYNAMIC_TAG ( name,
value )

Value:

#define DYNAMIC_TAG(name, value)

AARCH64_DYNAMIC_TAG [3/3]

#define AARCH64_DYNAMIC_TAG ( name,
value )

BCase [1/5]

Value:

IO.bitSetCase(Value, #X, ELF::X)

static TableGen::Emitter::OptClass< SkeletonEmitter > X("gen-skeleton-class", "Generate example skeleton class")

BCase [2/5]

Value:

IO.bitSetCase(Value, #X, ELF::X)

BCase [3/5]

Value:

IO.bitSetCase(Value, #X, ELF::X)

BCase [4/5]

Value:

IO.bitSetCase(Value, #X, Mips::AFL_ASE_##X)

BCase [5/5]

Value:

IO.bitSetCase(Value, #X, Mips::AFL_FLAGS1_##X)

BCaseMask

#define BCaseMask ( X,
M )

DYNAMIC_TAG

#define DYNAMIC_TAG ( X,
Y )

Value:

IO.enumCase(Value, STRINGIFY(DT_##X), ELF::DT_##X);

DYNAMIC_TAG_MARKER

#define DYNAMIC_TAG_MARKER ( name,
value )

ECase [1/15]

Value:

IO.enumCase(Value, #X, ELF::X)

ECase [2/15]

Value:

IO.enumCase(Value, #X, ELF::X)

ECase [3/15]

Value:

IO.enumCase(Value, #X, ELF::X)

ECase [4/15]

Value:

IO.enumCase(Value, #X, ELF::X)

ECase [5/15]

Value:

IO.enumCase(Value, #X, ELF::X)

ECase [6/15]

Value:

IO.enumCase(Value, #X, ELF::X)

ECase [7/15]

Value:

IO.enumCase(Value, #X, ELF::X)

ECase [8/15]

Value:

IO.enumCase(Value, #X, ELF::X)

ECase [9/15]

Value:

IO.enumCase(Value, #X, ELF::X)

ECase [10/15]

Value:

IO.enumCase(Value, #X, ELF::X)

ECase [11/15]

Value:

IO.enumCase(Value, #X, ELF::X)

ECase [12/15]

Value:

IO.enumCase(Value, #X, ELF::X)

ECase [13/15]

Value:

IO.enumCase(Value, #X, Mips::AFL_##X)

ECase [14/15]

Value:

IO.enumCase(Value, #X, Mips::Val_GNU_MIPS_ABI_##X)

ECase [15/15]

Value:

IO.enumCase(Value, #X, Mips::AFL_##X)

ELF_RELOC

#define ELF_RELOC ( X,
Y )

Value:

IO.enumCase(Value, #X, ELF::X);

HEXAGON_DYNAMIC_TAG [1/3]

#define HEXAGON_DYNAMIC_TAG ( name,
value )

HEXAGON_DYNAMIC_TAG [2/3]

#define HEXAGON_DYNAMIC_TAG ( name,
value )

HEXAGON_DYNAMIC_TAG [3/3]

#define HEXAGON_DYNAMIC_TAG ( name,
value )

MIPS_DYNAMIC_TAG [1/3]

#define MIPS_DYNAMIC_TAG ( name,
value )

MIPS_DYNAMIC_TAG [2/3]

#define MIPS_DYNAMIC_TAG ( name,
value )

MIPS_DYNAMIC_TAG [3/3]

#define MIPS_DYNAMIC_TAG ( name,
value )

PPC64_DYNAMIC_TAG [1/3]

#define PPC64_DYNAMIC_TAG ( name,
value )

PPC64_DYNAMIC_TAG [2/3]

#define PPC64_DYNAMIC_TAG ( name,
value )

PPC64_DYNAMIC_TAG [3/3]

#define PPC64_DYNAMIC_TAG ( name,
value )

PPC_DYNAMIC_TAG [1/3]

#define PPC_DYNAMIC_TAG ( name,
value )

PPC_DYNAMIC_TAG [2/3]

#define PPC_DYNAMIC_TAG ( name,
value )

PPC_DYNAMIC_TAG [3/3]

#define PPC_DYNAMIC_TAG ( name,
value )

RISCV_DYNAMIC_TAG [1/2]

#define RISCV_DYNAMIC_TAG ( name,
value )

RISCV_DYNAMIC_TAG [2/2]

#define RISCV_DYNAMIC_TAG ( name,
value )

SPARC_DYNAMIC_TAG [1/2]

#define SPARC_DYNAMIC_TAG ( name,
value )

SPARC_DYNAMIC_TAG [2/2]

#define SPARC_DYNAMIC_TAG ( name,
value )

STRINGIFY