LLVM 19.0.0git
PDBSymbolTypeFunctionSig.h
Go to the documentation of this file.
1//===- PDBSymbolTypeFunctionSig.h - function signature type info *- 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_PDBSYMBOLTYPEFUNCTIONSIG_H
10#define LLVM_DEBUGINFO_PDB_PDBSYMBOLTYPEFUNCTIONSIG_H
11
12#include "PDBSymbol.h"
13#include "PDBTypes.h"
14
15namespace llvm {
16
17class raw_ostream;
18namespace pdb {
19
22public:
23 std::unique_ptr<IPDBEnumSymbols> getArguments() const;
24
25 void dump(PDBSymDumper &Dumper) const override;
26 void dumpRight(PDBSymDumper &Dumper) const override;
28
29 bool isCVarArgs() const;
30
32 FORWARD_SYMBOL_ID_METHOD(getClassParent)
33 FORWARD_SYMBOL_ID_METHOD(getUnmodifiedType)
34 FORWARD_SYMBOL_METHOD(isConstType)
35 FORWARD_SYMBOL_METHOD(getCount)
36 FORWARD_SYMBOL_ID_METHOD(getLexicalParent)
37 // FORWARD_SYMBOL_METHOD(getObjectPointerType)
38 FORWARD_SYMBOL_METHOD(getThisAdjust)
40 FORWARD_SYMBOL_METHOD(isUnalignedType)
41 FORWARD_SYMBOL_METHOD(isVolatileType)
42};
43
44} // namespace pdb
45} // namespace llvm
46
47#endif // LLVM_DEBUGINFO_PDB_PDBSYMBOLTYPEFUNCTIONSIG_H
#define DECLARE_PDB_SYMBOL_CONCRETE_TYPE(TagValue)
Definition: PDBSymbol.h:48
#define FORWARD_SYMBOL_ID_METHOD_WITH_NAME(PrivateName, PublicName)
Definition: PDBSymbol.h:30
#define FORWARD_SYMBOL_ID_METHOD(MethodName)
Definition: PDBSymbol.h:34
#define FORWARD_SYMBOL_METHOD(MethodName)
Definition: PDBSymbol.h:17
raw_pwrite_stream & OS
static SymbolRef::Type getType(const Symbol *Sym)
Definition: TapiFile.cpp:40
void dumpArgList(raw_ostream &OS) const
void dump(PDBSymDumper &Dumper) const override
Dumps the contents of a symbol a raw_ostream.
std::unique_ptr< IPDBEnumSymbols > getArguments() const
void dumpRight(PDBSymDumper &Dumper) const override
For certain PDBSymbolTypes, dumps additional information for the type that normally goes on the right...
PDBSymbol defines the base of the inheritance hierarchy for concrete symbol types (e....
Definition: PDBSymbol.h:71
This class implements an extremely fast bulk output stream that can only output to a stream.
Definition: raw_ostream.h:52
unsigned getCallingConvention(StringRef LanguageString)
Definition: Dwarf.cpp:439
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18