LLVM  14.0.0git
NativeTypeVTShape.h
Go to the documentation of this file.
1 //===- NativeTypeVTShape.h - info about virtual table shape ------*- C++-*-===//
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 #ifndef LLVM_DEBUGINFO_PDB_NATIVE_NATIVETYPEVTSHAPE_H
10 #define LLVM_DEBUGINFO_PDB_NATIVE_NATIVETYPEVTSHAPE_H
11 
16 
17 namespace llvm {
18 namespace pdb {
19 
21 public:
22  // Create a pointer record for a non-simple type.
25 
26  ~NativeTypeVTShape() override;
27 
28  void dump(raw_ostream &OS, int Indent, PdbSymbolIdField ShowIdFields,
29  PdbSymbolIdField RecurseIdFields) const override;
30 
31  bool isConstType() const override;
32  bool isVolatileType() const override;
33  bool isUnalignedType() const override;
34  uint32_t getCount() const override;
35 
36 protected:
39 };
40 
41 } // namespace pdb
42 } // namespace llvm
43 
44 #endif // LLVM_DEBUGINFO_PDB_NATIVE_NATIVETYPEVTSHAPE_H
llvm
This file implements support for optimizing divisions by a constant.
Definition: AllocatorList.h:23
llvm::pdb::NativeTypeVTShape
Definition: NativeTypeVTShape.h:20
llvm::codeview::VFTableShapeRecord
Definition: TypeRecord.h:552
llvm::pdb::NativeTypeVTShape::dump
void dump(raw_ostream &OS, int Indent, PdbSymbolIdField ShowIdFields, PdbSymbolIdField RecurseIdFields) const override
Definition: NativeTypeVTShape.cpp:15
llvm::pdb::NativeTypeVTShape::isUnalignedType
bool isUnalignedType() const override
Definition: NativeTypeVTShape.cpp:33
llvm::raw_ostream
This class implements an extremely fast bulk output stream that can only output to a stream.
Definition: raw_ostream.h:53
CodeView.h
llvm::pdb::NativeTypeVTShape::isVolatileType
bool isVolatileType() const override
Definition: NativeTypeVTShape.cpp:31
llvm::pdb::NativeTypeVTShape::~NativeTypeVTShape
~NativeTypeVTShape() override
Definition: NativeTypeVTShape.cpp:13
TypeRecord.h
llvm::pdb::NativeTypeVTShape::TI
codeview::TypeIndex TI
Definition: NativeTypeVTShape.h:37
llvm::pdb::NativeTypeVTShape::NativeTypeVTShape
NativeTypeVTShape(NativeSession &Session, SymIndexId Id, codeview::TypeIndex TI, codeview::VFTableShapeRecord SR)
Definition: NativeTypeVTShape.cpp:7
llvm::pdb::NativeTypeVTShape::isConstType
bool isConstType() const override
Definition: NativeTypeVTShape.cpp:29
llvm::pdb::NativeTypeVTShape::getCount
uint32_t getCount() const override
Definition: NativeTypeVTShape.cpp:35
uint32_t
NativeRawSymbol.h
llvm::pdb::NativeSession
Definition: NativeSession.h:28
llvm::pdb::PdbSymbolIdField
PdbSymbolIdField
Definition: IPDBRawSymbol.h:24
llvm::codeview::TypeIndex
A 32-bit type reference.
Definition: TypeIndex.h:96
llvm::pdb::NativeRawSymbol::Session
NativeSession & Session
Definition: NativeRawSymbol.h:232
llvm::AMDGPU::VGPRIndexMode::Id
Id
Definition: SIDefines.h:231
llvm::pdb::NativeRawSymbol
Definition: NativeRawSymbol.h:21
llvm::pdb::NativeTypeVTShape::Record
codeview::VFTableShapeRecord Record
Definition: NativeTypeVTShape.h:38
NativeSession.h