LLVM 22.0.0git
CodeViewYAMLSymbols.h
Go to the documentation of this file.
1//===- CodeViewYAMLSymbols.h - CodeView YAMLIO Symbol implementation ------===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8//
9// This file defines classes for handling the YAML representation of CodeView
10// Debug Info.
11//
12//===----------------------------------------------------------------------===//
13
14#ifndef LLVM_OBJECTYAML_CODEVIEWYAMLSYMBOLS_H
15#define LLVM_OBJECTYAML_CODEVIEWYAMLSYMBOLS_H
16
20#include "llvm/Support/Error.h"
22#include <memory>
23
24namespace llvm {
25namespace CodeViewYAML {
26
27namespace detail {
28
29struct SymbolRecordBase;
30
31} // end namespace detail
32
43
44} // end namespace CodeViewYAML
45} // end namespace llvm
46
47LLVM_YAML_DECLARE_MAPPING_TRAITS(CodeViewYAML::SymbolRecord)
48LLVM_YAML_IS_SEQUENCE_VECTOR(CodeViewYAML::SymbolRecord)
49
50#endif // LLVM_OBJECTYAML_CODEVIEWYAMLSYMBOLS_H
#define LLVM_ABI
Definition Compiler.h:213
Basic Register Allocator
#define LLVM_YAML_IS_SEQUENCE_VECTOR(type)
Utility for declaring that a std::vector of a particular type should be considered a YAML sequence.
#define LLVM_YAML_DECLARE_MAPPING_TRAITS(Type)
Tagged union holding either a T or a Error.
Definition Error.h:485
CVRecord< SymbolKind > CVSymbol
Definition CVRecord.h:65
This is an optimization pass for GlobalISel generic memory operations.
BumpPtrAllocatorImpl BumpPtrAllocator
The standard BumpPtrAllocator which just uses the default template parameters.
Definition Allocator.h:383
LLVM_ABI codeview::CVSymbol toCodeViewSymbol(BumpPtrAllocator &Allocator, codeview::CodeViewContainer Container) const
std::shared_ptr< detail::SymbolRecordBase > Symbol
static LLVM_ABI Expected< SymbolRecord > fromCodeViewSymbol(codeview::CVSymbol Symbol)