[llvm] r228516 - Some cleanup for libpdb.
Zachary Turner
zturner at google.com
Sat Feb 7 16:29:30 PST 2015
Author: zturner
Date: Sat Feb 7 18:29:29 2015
New Revision: 228516
URL: http://llvm.org/viewvc/llvm-project?rev=228516&view=rev
Log:
Some cleanup for libpdb.
This patch implements a few of the optional suggestions from the
initial patch comitting libpdb. In particular, it implements a
virtual function out of line for each of the concrete classes.
A few other minor cleanups exist as well, such as using override
instead of virtual, etc.
Added:
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolAnnotation.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolBlock.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompiland.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandDetails.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolData.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolExe.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolFunc.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolFuncDebugEnd.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolFuncDebugStart.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolLabel.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolPublicSymbol.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolThunk.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeArray.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeBaseClass.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeBuiltin.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeCustom.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeDimension.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeEnum.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeFriend.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeFunctionArg.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeFunctionSig.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeManaged.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypePointer.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeTypedef.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeUDT.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeVTable.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeVTableShape.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolUnknown.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolUsingNamespace.cpp
- copied, changed from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
Modified:
llvm/trunk/include/llvm/DebugInfo/PDB/IPDBRawSymbol.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbol.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolAnnotation.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolBlock.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCompiland.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCompilandDetails.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCompilandEnv.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCustom.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolData.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolExe.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolFunc.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugEnd.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugStart.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolLabel.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolPublicSymbol.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolThunk.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeArray.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeBaseClass.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeCustom.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeDimension.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeEnum.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeFriend.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionArg.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionSig.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeManaged.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypePointer.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeTypedef.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeUDT.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTable.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTableShape.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolUnknown.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolUsingNamespace.h
llvm/trunk/include/llvm/DebugInfo/PDB/PDBTypes.h
llvm/trunk/lib/DebugInfo/PDB/CMakeLists.txt
llvm/trunk/lib/DebugInfo/PDB/PDBInterfaceAnchors.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp
llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/trunk/unittests/DebugInfo/PDB/PDBApiTest.cpp
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/IPDBRawSymbol.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/IPDBRawSymbol.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/IPDBRawSymbol.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/IPDBRawSymbol.h Sat Feb 7 18:29:29 2015
@@ -14,12 +14,12 @@
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringRef.h"
-#include "llvm/Support/COFF.h"
-#include "llvm/Support/raw_ostream.h"
#include "PDBTypes.h"
namespace llvm {
+class raw_ostream;
+
/// IPDBRawSymbol defines an interface used to represent an arbitrary symbol.
/// It exposes a monolithic interface consisting of accessors for the union of
/// all properties that are valid for any symbol type. This interface is then
@@ -41,14 +41,12 @@ public:
findInlineFramesByRVA(uint32_t RVA) const = 0;
virtual void getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) const = 0;
+ virtual void getBackEndVersion(VersionInfo &Version) const = 0;
virtual PDB_MemberAccess getAccess() const = 0;
virtual uint32_t getAddressOffset() const = 0;
virtual uint32_t getAddressSection() const = 0;
virtual uint32_t getAge() const = 0;
virtual uint32_t getArrayIndexTypeId() const = 0;
- virtual uint32_t getBackEndBuild() const = 0;
- virtual uint32_t getBackEndMajor() const = 0;
- virtual uint32_t getBackEndMinor() const = 0;
virtual uint32_t getBaseDataOffset() const = 0;
virtual uint32_t getBaseDataSlot() const = 0;
virtual uint32_t getBaseSymbolId() const = 0;
@@ -59,9 +57,7 @@ public:
virtual std::string getCompilerName() const = 0;
virtual uint32_t getCount() const = 0;
virtual uint32_t getCountLiveRanges() const = 0;
- virtual uint32_t getFrontEndBuild() const = 0;
- virtual uint32_t getFrontEndMajor() const = 0;
- virtual uint32_t getFrontEndMinor() const = 0;
+ virtual void getFrontEndVersion(VersionInfo &Version) const = 0;
virtual PDB_Lang getLanguage() const = 0;
virtual uint32_t getLexicalParentId() const = 0;
virtual std::string getLibraryName() const = 0;
@@ -117,7 +113,7 @@ public:
virtual int32_t getThisAdjust() const = 0;
virtual int32_t getVirtualBasePointerOffset() const = 0;
virtual PDB_LocType getLocationType() const = 0;
- virtual COFF::MachineTypes getMachineType() const = 0;
+ virtual PDB_Machine getMachineType() const = 0;
virtual PDB_ThunkOrdinal getThunkOrdinal() const = 0;
virtual uint64_t getLength() const = 0;
virtual uint64_t getLiveRangeLength() const = 0;
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbol.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbol.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbol.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbol.h Sat Feb 7 18:29:29 2015
@@ -13,7 +13,6 @@
#include <memory>
#include "llvm/ADT/StringRef.h"
-#include "llvm/Support/raw_ostream.h"
#include "llvm/Support/Casting.h"
#include "IPDBRawSymbol.h"
@@ -27,6 +26,7 @@
namespace llvm {
class IPDBRawSymbol;
+class raw_ostream;
/// PDBSymbol defines the base of the inheritance hierarchy for concrete symbol
/// types (e.g. functions, executables, vtables, etc). All concrete symbol
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolAnnotation.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolAnnotation.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolAnnotation.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolAnnotation.h Sat Feb 7 18:29:29 2015
@@ -16,10 +16,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolAnnotation : public PDBSymbol {
public:
PDBSymbolAnnotation(std::unique_ptr<IPDBRawSymbol> AnnotationSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getAddressOffset)
FORWARD_SYMBOL_METHOD(getAddressSection)
FORWARD_SYMBOL_METHOD(getDataKind)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolBlock.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolBlock.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolBlock.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolBlock.h Sat Feb 7 18:29:29 2015
@@ -16,10 +16,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolBlock : public PDBSymbol {
public:
PDBSymbolBlock(std::unique_ptr<IPDBRawSymbol> BlockSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getAddressOffset)
FORWARD_SYMBOL_METHOD(getAddressSection)
FORWARD_SYMBOL_METHOD(getLength)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCompiland.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCompiland.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCompiland.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCompiland.h Sat Feb 7 18:29:29 2015
@@ -16,10 +16,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolCompiland : public PDBSymbol {
public:
PDBSymbolCompiland(std::unique_ptr<IPDBRawSymbol> CompilandSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(isEditAndContinueEnabled)
FORWARD_SYMBOL_METHOD(getLexicalParentId)
FORWARD_SYMBOL_METHOD(getLibraryName)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCompilandDetails.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCompilandDetails.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCompilandDetails.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCompilandDetails.h Sat Feb 7 18:29:29 2015
@@ -15,18 +15,24 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolCompilandDetails : public PDBSymbol {
public:
PDBSymbolCompilandDetails(std::unique_ptr<IPDBRawSymbol> DetailsSymbol);
- FORWARD_SYMBOL_METHOD(getBackEndBuild)
- FORWARD_SYMBOL_METHOD(getBackEndMajor)
- FORWARD_SYMBOL_METHOD(getBackEndMinor)
+ void dump(llvm::raw_ostream &OS) const override;
+
+ void getFrontEndVersion(VersionInfo &Version) const {
+ RawSymbol->getFrontEndVersion(Version);
+ }
+
+ void getBackEndVersion(VersionInfo &Version) const {
+ RawSymbol->getBackEndVersion(Version);
+ }
+
FORWARD_SYMBOL_METHOD(getCompilerName)
FORWARD_SYMBOL_METHOD(isEditAndContinueEnabled)
- FORWARD_SYMBOL_METHOD(getFrontEndBuild)
- FORWARD_SYMBOL_METHOD(getFrontEndMajor)
- FORWARD_SYMBOL_METHOD(getFrontEndMinor)
FORWARD_SYMBOL_METHOD(hasDebugInfo)
FORWARD_SYMBOL_METHOD(hasManagedCode)
FORWARD_SYMBOL_METHOD(hasSecurityChecks)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCompilandEnv.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCompilandEnv.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCompilandEnv.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCompilandEnv.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolCompilandEnv : public PDBSymbol {
public:
PDBSymbolCompilandEnv(std::unique_ptr<IPDBRawSymbol> CompilandEnvSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getLexicalParentId)
FORWARD_SYMBOL_METHOD(getName)
FORWARD_SYMBOL_METHOD(getSymIndexId)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCustom.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCustom.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCustom.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolCustom.h Sat Feb 7 18:29:29 2015
@@ -17,6 +17,8 @@
namespace llvm {
+class raw_ostream;
+
/// PDBSymbolCustom represents symbols that are compiler-specific and do not
/// fit anywhere else in the lexical hierarchy.
/// https://msdn.microsoft.com/en-us/library/d88sf09h.aspx
@@ -24,8 +26,9 @@ class PDBSymbolCustom : public PDBSymbol
public:
PDBSymbolCustom(std::unique_ptr<IPDBRawSymbol> CustomSymbol);
- void getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes);
+ void dump(llvm::raw_ostream &OS) const override;
+ void getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes);
FORWARD_SYMBOL_METHOD(getSymIndexId)
static bool classof(const PDBSymbol *S) {
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolData.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolData.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolData.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolData.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolData : public PDBSymbol {
public:
PDBSymbolData(std::unique_ptr<IPDBRawSymbol> DataSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getAccess)
FORWARD_SYMBOL_METHOD(getAddressOffset)
FORWARD_SYMBOL_METHOD(getAddressSection)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolExe.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolExe.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolExe.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolExe.h Sat Feb 7 18:29:29 2015
@@ -6,6 +6,7 @@
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
+
#ifndef LLVM_DEBUGINFO_PDB_PDBSYMBOLEXE_H
#define LLVM_DEBUGINFO_PDB_PDBSYMBOLEXE_H
@@ -18,10 +19,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolExe : public PDBSymbol {
public:
PDBSymbolExe(std::unique_ptr<IPDBRawSymbol> ExeSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getAge)
FORWARD_SYMBOL_METHOD(getGuid)
FORWARD_SYMBOL_METHOD(hasCTypes)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolFunc.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolFunc.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolFunc.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolFunc.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolFunc : public PDBSymbol {
public:
PDBSymbolFunc(std::unique_ptr<IPDBRawSymbol> FuncSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getAccess)
FORWARD_SYMBOL_METHOD(getAddressOffset)
FORWARD_SYMBOL_METHOD(getAddressSection)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugEnd.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugEnd.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugEnd.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugEnd.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolFuncDebugEnd : public PDBSymbol {
public:
PDBSymbolFuncDebugEnd(std::unique_ptr<IPDBRawSymbol> FuncDebugEndSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getAddressOffset)
FORWARD_SYMBOL_METHOD(getAddressSection)
FORWARD_SYMBOL_METHOD(hasCustomCallingConvention)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugStart.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugStart.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugStart.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugStart.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolFuncDebugStart : public PDBSymbol {
public:
PDBSymbolFuncDebugStart(std::unique_ptr<IPDBRawSymbol> FuncDebugStartSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getAddressOffset)
FORWARD_SYMBOL_METHOD(getAddressSection)
FORWARD_SYMBOL_METHOD(hasCustomCallingConvention)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolLabel.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolLabel.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolLabel.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolLabel.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolLabel : public PDBSymbol {
public:
PDBSymbolLabel(std::unique_ptr<IPDBRawSymbol> LabelSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getAddressOffset)
FORWARD_SYMBOL_METHOD(getAddressSection)
FORWARD_SYMBOL_METHOD(hasCustomCallingConvention)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolPublicSymbol.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolPublicSymbol.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolPublicSymbol.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolPublicSymbol.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolPublicSymbol : public PDBSymbol {
public:
PDBSymbolPublicSymbol(std::unique_ptr<IPDBRawSymbol> PublicSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getAddressOffset)
FORWARD_SYMBOL_METHOD(getAddressSection)
FORWARD_SYMBOL_METHOD(isCode)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolThunk.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolThunk.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolThunk.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolThunk.h Sat Feb 7 18:29:29 2015
@@ -6,6 +6,7 @@
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
+
#ifndef LLVM_DEBUGINFO_PDB_PDBSYMBOLTHUNK_H
#define LLVM_DEBUGINFO_PDB_PDBSYMBOLTHUNK_H
@@ -16,10 +17,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolThunk : public PDBSymbol {
public:
PDBSymbolThunk(std::unique_ptr<IPDBRawSymbol> ThunkSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getAccess)
FORWARD_SYMBOL_METHOD(getAddressOffset)
FORWARD_SYMBOL_METHOD(getAddressSection)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeArray.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeArray.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeArray.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeArray.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolTypeArray : public PDBSymbol {
public:
PDBSymbolTypeArray(std::unique_ptr<IPDBRawSymbol> ArrayTypeSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getArrayIndexTypeId)
FORWARD_SYMBOL_METHOD(isConstType)
FORWARD_SYMBOL_METHOD(getCount)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeBaseClass.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeBaseClass.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeBaseClass.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeBaseClass.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolTypeBaseClass : public PDBSymbol {
public:
PDBSymbolTypeBaseClass(std::unique_ptr<IPDBRawSymbol> BaseClassTypeSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getAccess)
FORWARD_SYMBOL_METHOD(getClassParentId)
FORWARD_SYMBOL_METHOD(hasConstructor)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolTypeBuiltin : public PDBSymbol {
public:
PDBSymbolTypeBuiltin(std::unique_ptr<IPDBRawSymbol> BuiltinTypeSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getBuiltinType)
FORWARD_SYMBOL_METHOD(isConstType)
FORWARD_SYMBOL_METHOD(getLength)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeCustom.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeCustom.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeCustom.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeCustom.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolTypeCustom : public PDBSymbol {
public:
PDBSymbolTypeCustom(std::unique_ptr<IPDBRawSymbol> CustomTypeSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getOemId)
FORWARD_SYMBOL_METHOD(getOemSymbolId)
FORWARD_SYMBOL_METHOD(getSymIndexId)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeDimension.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeDimension.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeDimension.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeDimension.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolTypeDimension : public PDBSymbol {
public:
PDBSymbolTypeDimension(std::unique_ptr<IPDBRawSymbol> DimensionTypeSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getLowerBoundId)
FORWARD_SYMBOL_METHOD(getUpperBoundId)
FORWARD_SYMBOL_METHOD(getSymIndexId)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeEnum.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeEnum.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeEnum.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeEnum.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolTypeEnum : public PDBSymbol {
public:
PDBSymbolTypeEnum(std::unique_ptr<IPDBRawSymbol> EnumTypeSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getBuiltinType)
FORWARD_SYMBOL_METHOD(getClassParentId)
FORWARD_SYMBOL_METHOD(hasConstructor)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeFriend.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeFriend.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeFriend.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeFriend.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolTypeFriend : public PDBSymbol {
public:
PDBSymbolTypeFriend(std::unique_ptr<IPDBRawSymbol> FriendTypeSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getClassParentId)
FORWARD_SYMBOL_METHOD(getName)
FORWARD_SYMBOL_METHOD(getSymIndexId)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionArg.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionArg.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionArg.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionArg.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolTypeFunctionArg : public PDBSymbol {
public:
PDBSymbolTypeFunctionArg(std::unique_ptr<IPDBRawSymbol> FuncArgTypeSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getClassParentId)
FORWARD_SYMBOL_METHOD(getLexicalParentId)
FORWARD_SYMBOL_METHOD(getSymIndexId)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionSig.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionSig.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionSig.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionSig.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolTypeFunctionSig : public PDBSymbol {
public:
PDBSymbolTypeFunctionSig(std::unique_ptr<IPDBRawSymbol> FuncSigTypeSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getCallingConvention)
FORWARD_SYMBOL_METHOD(getClassParentId)
FORWARD_SYMBOL_METHOD(isConstType)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeManaged.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeManaged.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeManaged.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeManaged.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolTypeManaged : public PDBSymbol {
public:
PDBSymbolTypeManaged(std::unique_ptr<IPDBRawSymbol> ManagedTypeSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getName)
FORWARD_SYMBOL_METHOD(getSymIndexId)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypePointer.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypePointer.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypePointer.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypePointer.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolTypePointer : public PDBSymbol {
public:
PDBSymbolTypePointer(std::unique_ptr<IPDBRawSymbol> PointerTypeSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(isConstType)
FORWARD_SYMBOL_METHOD(getLength)
FORWARD_SYMBOL_METHOD(getLexicalParentId)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeTypedef.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeTypedef.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeTypedef.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeTypedef.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolTypeTypedef : public PDBSymbol {
public:
PDBSymbolTypeTypedef(std::unique_ptr<IPDBRawSymbol> TypedefSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getBuiltinType)
FORWARD_SYMBOL_METHOD(getClassParentId)
FORWARD_SYMBOL_METHOD(hasConstructor)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeUDT.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeUDT.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeUDT.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeUDT.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolTypeUDT : public PDBSymbol {
public:
PDBSymbolTypeUDT(std::unique_ptr<IPDBRawSymbol> UDTSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getClassParentId)
FORWARD_SYMBOL_METHOD(hasConstructor)
FORWARD_SYMBOL_METHOD(isConstType)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTable.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTable.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTable.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTable.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolTypeVTable : public PDBSymbol {
public:
PDBSymbolTypeVTable(std::unique_ptr<IPDBRawSymbol> VtblSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getClassParentId)
FORWARD_SYMBOL_METHOD(isConstType)
FORWARD_SYMBOL_METHOD(getLexicalParentId)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTableShape.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTableShape.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTableShape.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTableShape.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolTypeVTableShape : public PDBSymbol {
public:
PDBSymbolTypeVTableShape(std::unique_ptr<IPDBRawSymbol> VtblShapeSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(isConstType)
FORWARD_SYMBOL_METHOD(getCount)
FORWARD_SYMBOL_METHOD(getLexicalParentId)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolUnknown.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolUnknown.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolUnknown.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolUnknown.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolUnknown : public PDBSymbol {
public:
PDBSymbolUnknown(std::unique_ptr<IPDBRawSymbol> UnknownSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
static bool classof(const PDBSymbol *S) {
return (S->getSymTag() == PDB_SymType::None ||
S->getSymTag() >= PDB_SymType::Max);
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolUsingNamespace.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolUsingNamespace.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolUsingNamespace.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBSymbolUsingNamespace.h Sat Feb 7 18:29:29 2015
@@ -15,10 +15,14 @@
namespace llvm {
+class raw_ostream;
+
class PDBSymbolUsingNamespace : public PDBSymbol {
public:
PDBSymbolUsingNamespace(std::unique_ptr<IPDBRawSymbol> UsingSymbol);
+ void dump(llvm::raw_ostream &OS) const override;
+
FORWARD_SYMBOL_METHOD(getLexicalParentId)
FORWARD_SYMBOL_METHOD(getName)
FORWARD_SYMBOL_METHOD(getSymIndexId)
Modified: llvm/trunk/include/llvm/DebugInfo/PDB/PDBTypes.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/PDB/PDBTypes.h?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/include/llvm/DebugInfo/PDB/PDBTypes.h (original)
+++ llvm/trunk/include/llvm/DebugInfo/PDB/PDBTypes.h Sat Feb 7 18:29:29 2015
@@ -25,7 +25,7 @@ class IPDBRawSymbol;
class IPDBSession;
class IPDBSourceFile;
-typedef IPDBEnumChildren<IPDBRawSymbol> IPDBEnumSymbols;
+typedef IPDBEnumChildren<PDBSymbol> IPDBEnumSymbols;
typedef IPDBEnumChildren<IPDBSourceFile> IPDBEnumSourceFiles;
typedef IPDBEnumChildren<IPDBDataStream> IPDBEnumDataStreams;
typedef IPDBEnumChildren<PDBSymbolCompiland> IPDBEnumCompilands;
@@ -171,6 +171,31 @@ enum class PDB_Cpu {
D3D11_Shader = 0x100,
};
+enum class PDB_Machine {
+ Invalid = 0xffff,
+ Unknown = 0x0,
+ Am33 = 0x13,
+ Amd64 = 0x8664,
+ Arm = 0x1C0,
+ Armnt = 0x1C4,
+ Ebc = 0xEBC,
+ I386 = 0x14C,
+ Ia64 = 0x200,
+ M32r = 0x9041,
+ Mips16 = 0x266,
+ MipsFPU = 0x366,
+ MipsFPU16 = 0x466,
+ PowerPC = 0x1F0,
+ PowerPCFP = 0x1F1,
+ R4000 = 0x166,
+ SH3 = 0x1A2,
+ SH3DSP = 0x1A3,
+ SH4 = 0x1A6,
+ SH5 = 0x1A8,
+ Thumb = 0x1C2,
+ WceMipsV2 = 0x169
+};
+
/// These values correspond to the CV_call_e enumeration, and are documented
/// at the following locations:
/// https://msdn.microsoft.com/en-us/library/b2fc64ek.aspx
@@ -345,6 +370,13 @@ enum class PDB_BuiltinType {
enum class PDB_MemberAccess { Private = 1, Protected = 2, Public = 3 };
+struct VersionInfo {
+ uint32_t Major;
+ uint32_t Minor;
+ uint32_t Build;
+ uint32_t QFE;
+};
+
} // namespace llvm
#endif
Modified: llvm/trunk/lib/DebugInfo/PDB/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/CMakeLists.txt?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/CMakeLists.txt (original)
+++ llvm/trunk/lib/DebugInfo/PDB/CMakeLists.txt Sat Feb 7 18:29:29 2015
@@ -2,6 +2,35 @@ add_llvm_library(LLVMDebugInfoPDB
PDB.cpp
PDBInterfaceAnchors.cpp
PDBSymbol.cpp
+ PDBSymbolAnnotation.cpp
+ PDBSymbolBlock.cpp
+ PDBSymbolCompiland.cpp
+ PDBSymbolCompilandDetails.cpp
PDBSymbolCompilandEnv.cpp
PDBSymbolCustom.cpp
+ PDBSymbolData.cpp
+ PDBSymbolExe.cpp
+ PDBSymbolFunc.cpp
+ PDBSymbolFuncDebugEnd.cpp
+ PDBSymbolFuncDebugStart.cpp
+ PDBSymbolLabel.cpp
+ PDBSymbolPublicSymbol.cpp
+ PDBSymbolThunk.cpp
+ PDBSymbolTypeArray.cpp
+ PDBSymbolTypeBaseClass.cpp
+ PDBSymbolTypeBuiltin.cpp
+ PDBSymbolTypeCustom.cpp
+ PDBSymbolTypeDimension.cpp
+ PDBSymbolTypeEnum.cpp
+ PDBSymbolTypeFriend.cpp
+ PDBSymbolTypeFunctionArg.cpp
+ PDBSymbolTypeFunctionSig.cpp
+ PDBSymbolTypeManaged.cpp
+ PDBSymbolTypePointer.cpp
+ PDBSymbolTypeTypedef.cpp
+ PDBSymbolTypeUDT.cpp
+ PDBSymbolTypeVTable.cpp
+ PDBSymbolTypeVTableShape.cpp
+ PDBSymbolUnknown.cpp
+ PDBSymbolUsingNamespace.cpp
)
Modified: llvm/trunk/lib/DebugInfo/PDB/PDBInterfaceAnchors.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBInterfaceAnchors.cpp?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBInterfaceAnchors.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBInterfaceAnchors.cpp Sat Feb 7 18:29:29 2015
@@ -17,38 +17,6 @@
#include "llvm/DebugInfo/PDB/IPDBSourceFile.h"
#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolAnnotation.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolBlock.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCompiland.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCompilandDetails.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCompilandEnv.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolData.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolExe.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolFunc.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolFuncDebugEnd.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolFuncDebugStart.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolLabel.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolPublicSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolThunk.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolTypeArray.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolTypeBaseClass.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolTypeCustom.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolTypeDimension.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolTypeEnum.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolTypeFriend.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolTypeFunctionArg.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolTypeFunctionSig.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolTypeManaged.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolTypePointer.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolTypeTypedef.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolTypeUDT.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolTypeVTable.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolTypeVTableShape.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolUnknown.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolUsingNamespace.h"
-
using namespace llvm;
IPDBSession::~IPDBSession() {}
@@ -60,42 +28,3 @@ IPDBRawSymbol::~IPDBRawSymbol() {}
IPDBSourceFile::~IPDBSourceFile() {}
IPDBLineNumber::~IPDBLineNumber() {}
-
-// All of the concrete symbol types have their methods declared inline through
-// the use of a forwarding macro, so the constructor should be declared out of
-// line to get the vtable in this file.
-#define FORWARD_SYMBOL_CONSTRUCTOR(ClassName) \
- ClassName::ClassName(std::unique_ptr<IPDBRawSymbol> Symbol) \
- : PDBSymbol(std::move(Symbol)) {}
-
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolAnnotation)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolBlock)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolCompiland)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolCompilandDetails)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolCompilandEnv)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolCustom)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolData)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolExe)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolFunc)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolFuncDebugEnd)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolFuncDebugStart)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolLabel)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolPublicSymbol)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolThunk)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolTypeArray)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolTypeBaseClass)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolTypeBuiltin)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolTypeCustom)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolTypeDimension)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolTypeEnum)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolTypeFriend)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolTypeFunctionArg)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolTypeFunctionSig)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolTypeManaged)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolTypePointer)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolTypeTypedef)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolTypeUDT)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolTypeVTable)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolTypeVTableShape)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolUnknown)
-FORWARD_SYMBOL_CONSTRUCTOR(PDBSymbolUsingNamespace)
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolAnnotation.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolAnnotation.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolAnnotation.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolAnnotation.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolAnnotation.cpp - --------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,12 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolAnnotation.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolAnnotation::PDBSymbolAnnotation(std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolAnnotation::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolBlock.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolBlock.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolBlock.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolBlock.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolBlock.cpp - -------------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,12 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolBlock.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolBlock::PDBSymbolBlock(std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolBlock::dump(llvm::raw_ostream &OS) const {}
Added: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompiland.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompiland.cpp?rev=228516&view=auto
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompiland.cpp (added)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompiland.cpp Sat Feb 7 18:29:29 2015
@@ -0,0 +1,24 @@
+//===- PDBSymbolCompiland.cpp - compiland details --------*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#include <utility>
+
+#include "llvm/DebugInfo/PDB/IPDBEnumChildren.h"
+#include "llvm/DebugInfo/PDB/PDBSymbol.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolCompiland.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolCompilandDetails.h"
+#include "llvm/Support/raw_ostream.h"
+
+using namespace llvm;
+
+PDBSymbolCompiland::PDBSymbolCompiland(std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolCompiland::dump(llvm::raw_ostream &OS) const {
+}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandDetails.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandDetails.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandDetails.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandDetails.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolCompilandDetails.cpp - compiland details --------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,13 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolCompilandDetails.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolCompilandDetails::PDBSymbolCompilandDetails(
+ std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolCompilandDetails::dump(llvm::raw_ostream &OS) const {}
Modified: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp Sat Feb 7 18:29:29 2015
@@ -15,7 +15,13 @@
using namespace llvm;
+PDBSymbolCompilandEnv::PDBSymbolCompilandEnv(
+ std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
std::string PDBSymbolCompilandEnv::getValue() const {
// call RawSymbol->getValue() and convert the result to an std::string.
return std::string();
}
+
+void PDBSymbolCompilandEnv::dump(llvm::raw_ostream &OS) const {}
Modified: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp Sat Feb 7 18:29:29 2015
@@ -15,6 +15,11 @@
using namespace llvm;
+PDBSymbolCustom::PDBSymbolCustom(std::unique_ptr<IPDBRawSymbol> CustomSymbol)
+ : PDBSymbol(std::move(CustomSymbol)) {}
+
void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
RawSymbol->getDataBytes(bytes);
}
+
+void PDBSymbolCustom::dump(llvm::raw_ostream &OS) const {}
\ No newline at end of file
Added: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolData.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolData.cpp?rev=228516&view=auto
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolData.cpp (added)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolData.cpp Sat Feb 7 18:29:29 2015
@@ -0,0 +1,17 @@
+//===- PDBSymbolData.cpp - PDB data (e.g. variable) accessors ---*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#include "llvm/DebugInfo/PDB/PDBSymbolData.h"
+
+using namespace llvm;
+
+PDBSymbolData::PDBSymbolData(std::unique_ptr<IPDBRawSymbol> DataSymbol)
+ : PDBSymbol(std::move(DataSymbol)) {}
+
+void PDBSymbolData::dump(llvm::raw_ostream &OS) const {}
\ No newline at end of file
Added: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolExe.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolExe.cpp?rev=228516&view=auto
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolExe.cpp (added)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolExe.cpp Sat Feb 7 18:29:29 2015
@@ -0,0 +1,45 @@
+//===- PDBSymbolExe.cpp - ---------------------------------------*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#include <utility>
+
+#include "llvm/DebugInfo/PDB/PDBSymbol.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolExe.h"
+#include "llvm/Support/ConvertUTF.h"
+#include "llvm/Support/FileSystem.h"
+#include "llvm/Support/raw_ostream.h"
+
+#if defined(_WIN32)
+#include <windows.h>
+#endif
+
+using namespace llvm;
+
+namespace {
+std::string GuidToString(PDB_UniqueId *Id) {
+#if defined(_WIN32)
+ GUID *Guid = reinterpret_cast<GUID *>(Id);
+ OLECHAR GuidBuf[40];
+ int Result = StringFromGUID2(*Guid, GuidBuf, 39);
+ const char *InputBytes = reinterpret_cast<const char *>(GuidBuf);
+ std::string ResultString;
+ convertUTF16ToUTF8String(ArrayRef<char>(InputBytes, Result * 2),
+ ResultString);
+ return ResultString;
+#else
+ return std::string();
+#endif
+}
+}
+
+PDBSymbolExe::PDBSymbolExe(std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolExe::dump(llvm::raw_ostream &OS) const {
+}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolFunc.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolFunc.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolFunc.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolFunc.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolFunc.cpp - --------------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,12 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolFunc.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolFunc::PDBSymbolFunc(std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolFunc::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolFuncDebugEnd.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolFuncDebugEnd.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolFuncDebugEnd.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolFuncDebugEnd.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolFuncDebugEnd.cpp - ------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,13 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolFuncDebugEnd.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolFuncDebugEnd::PDBSymbolFuncDebugEnd(
+ std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolFuncDebugEnd::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolFuncDebugStart.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolFuncDebugStart.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolFuncDebugStart.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolFuncDebugStart.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolFuncDebugStart.cpp - ----------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,13 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolFuncDebugStart.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolFuncDebugStart::PDBSymbolFuncDebugStart(
+ std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolFuncDebugStart::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolLabel.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolLabel.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolLabel.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolLabel.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolLabel.cpp - -------------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,12 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolLabel.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolLabel::PDBSymbolLabel(std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolLabel::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolPublicSymbol.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolPublicSymbol.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolPublicSymbol.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolPublicSymbol.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolPublicSymbol.cpp - ------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,13 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolPublicSymbol.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolPublicSymbol::PDBSymbolPublicSymbol(
+ std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolPublicSymbol::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolThunk.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolThunk.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolThunk.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolThunk.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolThunk.cpp - -------------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,12 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolThunk.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolThunk::PDBSymbolThunk(std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolThunk::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeArray.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeArray.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeArray.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeArray.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolTypeArray.cpp - ---------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,12 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolTypeArray.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolTypeArray::PDBSymbolTypeArray(std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolTypeArray::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeBaseClass.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeBaseClass.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeBaseClass.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeBaseClass.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolTypeBaseClass.cpp - -----------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,13 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolTypeBaseClass.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolTypeBaseClass::PDBSymbolTypeBaseClass(
+ std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolTypeBaseClass::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeBuiltin.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeBuiltin.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeBuiltin.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeBuiltin.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolTypeBuiltin.cpp - ------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,13 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolTypeBuiltin::PDBSymbolTypeBuiltin(
+ std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolTypeBuiltin::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeCustom.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeCustom.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeCustom.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeCustom.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolTypeCustom.cpp - --------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,12 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolTypeCustom.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolTypeCustom::PDBSymbolTypeCustom(std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolTypeCustom::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeDimension.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeDimension.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeDimension.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeDimension.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,5 @@
-//===- PDBSymbolCompilandEnv.cpp - compiland env variables ------*- C++ -*-===//
+//===- PDBSymbolTypeDimension.cpp - --------------------------------*- C++
+//-*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,13 +10,13 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCompilandEnv.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolTypeDimension.h"
using namespace llvm;
-std::string PDBSymbolCompilandEnv::getValue() const {
- // call RawSymbol->getValue() and convert the result to an std::string.
- return std::string();
-}
+PDBSymbolTypeDimension::PDBSymbolTypeDimension(
+ std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolTypeDimension::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeEnum.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeEnum.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeEnum.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeEnum.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolTypeEnum.cpp - --------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,12 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolTypeEnum.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolTypeEnum::PDBSymbolTypeEnum(std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolTypeEnum::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeFriend.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeFriend.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeFriend.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeFriend.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolTypeFriend.cpp - --------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,12 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolTypeFriend.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolTypeFriend::PDBSymbolTypeFriend(std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolTypeFriend::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeFunctionArg.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeFunctionArg.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeFunctionArg.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeFunctionArg.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCompilandEnv.cpp - compiland env variables ------*- C++ -*-===//
+//===- PDBSymbolTypeFunctionArg.cpp - --------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,13 +9,13 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCompilandEnv.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolTypeFunctionArg.h"
using namespace llvm;
-std::string PDBSymbolCompilandEnv::getValue() const {
- // call RawSymbol->getValue() and convert the result to an std::string.
- return std::string();
-}
+PDBSymbolTypeFunctionArg::PDBSymbolTypeFunctionArg(
+ std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolTypeFunctionArg::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeFunctionSig.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeFunctionSig.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeFunctionSig.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeFunctionSig.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCompilandEnv.cpp - compiland env variables ------*- C++ -*-===//
+//===- PDBSymbolTypeFunctionSig.cpp - --------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,13 +9,13 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCompilandEnv.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolTypeFunctionSig.h"
using namespace llvm;
-std::string PDBSymbolCompilandEnv::getValue() const {
- // call RawSymbol->getValue() and convert the result to an std::string.
- return std::string();
-}
+PDBSymbolTypeFunctionSig::PDBSymbolTypeFunctionSig(
+ std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolTypeFunctionSig::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeManaged.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeManaged.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeManaged.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeManaged.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymboTypelManaged.cpp - ------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,13 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolTypeManaged.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolTypeManaged::PDBSymbolTypeManaged(
+ std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolTypeManaged::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypePointer.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypePointer.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypePointer.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypePointer.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,5 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolTypePointer.cpp - --------------------------------*- C++
+//-*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +10,13 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolTypePointer.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolTypePointer::PDBSymbolTypePointer(
+ std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolTypePointer::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeTypedef.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeTypedef.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeTypedef.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeTypedef.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,5 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolTypeTypedef.cpp - --------------------------------*- C++
+//-*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +10,13 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolTypeTypedef.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolTypeTypedef::PDBSymbolTypeTypedef(
+ std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolTypeTypedef::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeUDT.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeUDT.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeUDT.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeUDT.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolTypeUDT.cpp - --------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,12 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolTypeUDT.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolTypeUDT::PDBSymbolTypeUDT(std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolTypeUDT::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeVTable.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeVTable.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeVTable.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeVTable.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolTypeVTable.cpp - --------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,12 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolTypeVTable.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolTypeVTable::PDBSymbolTypeVTable(std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolTypeVTable::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeVTableShape.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeVTableShape.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeVTableShape.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolTypeVTableShape.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolTypeVTableShape.cpp - ---------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,13 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolTypeVTableShape.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolTypeVTableShape::PDBSymbolTypeVTableShape(
+ std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolTypeVTableShape::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolUnknown.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolUnknown.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolUnknown.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolUnknown.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolUnknown.cpp - -----------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,12 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolUnknown.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolUnknown::PDBSymbolUnknown(std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolUnknown::dump(llvm::raw_ostream &OS) const {}
Copied: llvm/trunk/lib/DebugInfo/PDB/PDBSymbolUsingNamespace.cpp (from r228515, llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp)
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/PDB/PDBSymbolUsingNamespace.cpp?p2=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolUsingNamespace.cpp&p1=llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp&r1=228515&r2=228516&rev=228516&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (original)
+++ llvm/trunk/lib/DebugInfo/PDB/PDBSymbolUsingNamespace.cpp Sat Feb 7 18:29:29 2015
@@ -1,4 +1,4 @@
-//===- PDBSymbolCustom.cpp - compiler-specific types ------------*- C++ -*-===//
+//===- PDBSymbolUsingNamespace.cpp - ------------------- --------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
@@ -9,12 +9,13 @@
#include <utility>
-#include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
#include "llvm/DebugInfo/PDB/PDBSymbol.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"
+#include "llvm/DebugInfo/PDB/PDBSymbolUsingNamespace.h"
using namespace llvm;
-void PDBSymbolCustom::getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) {
- RawSymbol->getDataBytes(bytes);
-}
+PDBSymbolUsingNamespace::PDBSymbolUsingNamespace(
+ std::unique_ptr<IPDBRawSymbol> Symbol)
+ : PDBSymbol(std::move(Symbol)) {}
+
+void PDBSymbolUsingNamespace::dump(llvm::raw_ostream &OS) const {}
Modified: llvm/trunk/unittests/DebugInfo/PDB/PDBApiTest.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/unittests/DebugInfo/PDB/PDBApiTest.cpp?rev=228516&r1=228515&r2=228516&view=diff
==============================================================================
--- llvm/trunk/unittests/DebugInfo/PDB/PDBApiTest.cpp (original)
+++ llvm/trunk/unittests/DebugInfo/PDB/PDBApiTest.cpp Sat Feb 7 18:29:29 2015
@@ -88,6 +88,8 @@ public:
}
void getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) const override {}
+ void getFrontEndVersion(VersionInfo &Version) const override {}
+ void getBackEndVersion(VersionInfo &Version) const override {}
PDB_SymType getSymTag() const override { return Type; }
@@ -96,9 +98,6 @@ public:
MOCK_SYMBOL_ACCESSOR(getAddressSection)
MOCK_SYMBOL_ACCESSOR(getAge)
MOCK_SYMBOL_ACCESSOR(getArrayIndexTypeId)
- MOCK_SYMBOL_ACCESSOR(getBackEndBuild)
- MOCK_SYMBOL_ACCESSOR(getBackEndMajor)
- MOCK_SYMBOL_ACCESSOR(getBackEndMinor)
MOCK_SYMBOL_ACCESSOR(getBaseDataOffset)
MOCK_SYMBOL_ACCESSOR(getBaseDataSlot)
MOCK_SYMBOL_ACCESSOR(getBaseSymbolId)
@@ -109,9 +108,6 @@ public:
MOCK_SYMBOL_ACCESSOR(getCompilerName)
MOCK_SYMBOL_ACCESSOR(getCount)
MOCK_SYMBOL_ACCESSOR(getCountLiveRanges)
- MOCK_SYMBOL_ACCESSOR(getFrontEndBuild)
- MOCK_SYMBOL_ACCESSOR(getFrontEndMajor)
- MOCK_SYMBOL_ACCESSOR(getFrontEndMinor)
MOCK_SYMBOL_ACCESSOR(getLanguage)
MOCK_SYMBOL_ACCESSOR(getLexicalParentId)
MOCK_SYMBOL_ACCESSOR(getLibraryName)
More information about the llvm-commits
mailing list