LLVM 20.0.0git
Namespaces | Macros | Functions
WasmYAML.cpp File Reference
#include "llvm/ObjectYAML/WasmYAML.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/BinaryFormat/Wasm.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/YAMLTraits.h"
#include "llvm/BinaryFormat/WasmRelocs.def"

Go to the source code of this file.

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 
namespace  llvm::WasmYAML
 
namespace  llvm::yaml
 

Macros

#define ECase(X)   IO.enumCase(Type, #X, wasm::WASM_SEC_##X);
 
#define ECase(X)   IO.enumCase(Kind, #X, wasm::WASM_FEATURE_PREFIX_##X);
 
#define ECase(X)   IO.enumCase(Kind, #X, wasm::WASM_COMDAT_##X);
 
#define BCase(X)   IO.bitSetCase(Value, #X, wasm::WASM_LIMITS_FLAG_##X)
 
#define BCase(X)   IO.bitSetCase(Value, #X, wasm::WASM_SEG_FLAG_##X)
 
#define BCaseMask(M, X)    IO.maskedBitSetCase(Value, #X, wasm::WASM_SYMBOL_##X, wasm::WASM_SYMBOL_##M)
 
#define ECase(X)   IO.enumCase(Kind, #X, wasm::WASM_SYMBOL_TYPE_##X);
 
#define CONCAT(X)   (uint32_t) wasm::ValType::X
 
#define ECase(X)   IO.enumCase(Type, #X, CONCAT(X));
 
#define ECase(X)   IO.enumCase(Kind, #X, wasm::WASM_EXTERNAL_##X);
 
#define ECase(X)   IO.enumCase(Code, #X, wasm::WASM_OPCODE_##X);
 
#define CONCAT(X)   (uint32_t) wasm::ValType::X
 
#define ECase(X)   IO.enumCase(Type, #X, CONCAT(X));
 
#define WASM_RELOC(name, value)   IO.enumCase(Type, #name, wasm::name);
 

Functions

static void llvm::yaml::commonSectionMapping (IO &IO, WasmYAML::Section &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::DylinkSection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::NameSection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::LinkingSection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::ProducersSection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::TargetFeaturesSection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::CustomSection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::TypeSection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::ImportSection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::FunctionSection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::TableSection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::MemorySection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::TagSection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::GlobalSection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::ExportSection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::StartSection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::ElemSection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::CodeSection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::DataSection &Section)
 
static void llvm::yaml::sectionMapping (IO &IO, WasmYAML::DataCountSection &Section)
 

Macro Definition Documentation

◆ BCase [1/2]

#define BCase (   X)    IO.bitSetCase(Value, #X, wasm::WASM_LIMITS_FLAG_##X)

◆ BCase [2/2]

#define BCase (   X)    IO.bitSetCase(Value, #X, wasm::WASM_SEG_FLAG_##X)

◆ BCaseMask

#define BCaseMask (   M,
  X 
)     IO.maskedBitSetCase(Value, #X, wasm::WASM_SYMBOL_##X, wasm::WASM_SYMBOL_##M)

◆ CONCAT [1/2]

#define CONCAT (   X)    (uint32_t) wasm::ValType::X

◆ CONCAT [2/2]

#define CONCAT (   X)    (uint32_t) wasm::ValType::X

◆ ECase [1/8]

#define ECase (   X)    IO.enumCase(Type, #X, wasm::WASM_SEC_##X);

◆ ECase [2/8]

#define ECase (   X)    IO.enumCase(Kind, #X, wasm::WASM_FEATURE_PREFIX_##X);

◆ ECase [3/8]

#define ECase (   X)    IO.enumCase(Kind, #X, wasm::WASM_COMDAT_##X);

◆ ECase [4/8]

#define ECase (   X)    IO.enumCase(Kind, #X, wasm::WASM_SYMBOL_TYPE_##X);

◆ ECase [5/8]

#define ECase (   X)    IO.enumCase(Type, #X, CONCAT(X));

◆ ECase [6/8]

#define ECase (   X)    IO.enumCase(Kind, #X, wasm::WASM_EXTERNAL_##X);

◆ ECase [7/8]

#define ECase (   X)    IO.enumCase(Code, #X, wasm::WASM_OPCODE_##X);

◆ ECase [8/8]

#define ECase (   X)    IO.enumCase(Type, #X, CONCAT(X));

◆ WASM_RELOC

#define WASM_RELOC (   name,
  value 
)    IO.enumCase(Type, #name, wasm::name);