blob: 4644ddcf24e39578e30afef9cf211b1fe0493c6f [file] [log] [blame]
Adrian McCarthy8d090fc2017-07-12 19:38:11 +00001//===- NativeBuiltinSymbol.cpp ------------------------------------ C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10#include "llvm/DebugInfo/PDB/Native/NativeBuiltinSymbol.h"
11
Adrian McCarthy8d090fc2017-07-12 19:38:11 +000012
13namespace llvm {
14namespace pdb {
15
16NativeBuiltinSymbol::NativeBuiltinSymbol(NativeSession &PDBSession,
17 SymIndexId Id, PDB_BuiltinType T,
18 uint64_t L)
19 : NativeRawSymbol(PDBSession, Id), Session(PDBSession), Type(T), Length(L) {
20}
21
22NativeBuiltinSymbol::~NativeBuiltinSymbol() {}
23
24std::unique_ptr<NativeRawSymbol> NativeBuiltinSymbol::clone() const {
Reid Kleckner0962cb22017-07-12 19:46:35 +000025 return llvm::make_unique<NativeBuiltinSymbol>(Session, SymbolId, Type, Length);
Adrian McCarthy8d090fc2017-07-12 19:38:11 +000026}
27
28void NativeBuiltinSymbol::dump(raw_ostream &OS, int Indent) const {
29 // TODO: Apparently nothing needs this yet.
30}
31
32PDB_SymType NativeBuiltinSymbol::getSymTag() const {
33 return PDB_SymType::BuiltinType;
34}
35
36PDB_BuiltinType NativeBuiltinSymbol::getBuiltinType() const { return Type; }
37
38bool NativeBuiltinSymbol::isConstType() const { return false; }
39
40uint64_t NativeBuiltinSymbol::getLength() const { return Length; }
41
42bool NativeBuiltinSymbol::isUnalignedType() const { return false; }
43
44bool NativeBuiltinSymbol::isVolatileType() const { return false; }
45
46} // namespace pdb
47} // namespace llvm