summaryrefslogtreecommitdiff
path: root/tools/llvm-pdbdump/BuiltinDumper.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tools/llvm-pdbdump/BuiltinDumper.cpp')
-rw-r--r--tools/llvm-pdbdump/BuiltinDumper.cpp27
1 files changed, 23 insertions, 4 deletions
diff --git a/tools/llvm-pdbdump/BuiltinDumper.cpp b/tools/llvm-pdbdump/BuiltinDumper.cpp
index 43270540f4534..2ce1a78391102 100644
--- a/tools/llvm-pdbdump/BuiltinDumper.cpp
+++ b/tools/llvm-pdbdump/BuiltinDumper.cpp
@@ -14,6 +14,7 @@
#include "llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h"
using namespace llvm;
+using namespace llvm::pdb;
BuiltinDumper::BuiltinDumper(LinePrinter &P)
: PDBSymDumper(false), Printer(P) {}
@@ -30,13 +31,31 @@ StringRef BuiltinDumper::getTypeName(const PDBSymbolTypeBuiltin &Symbol) {
return "float";
return "double";
case PDB_BuiltinType::UInt:
- if (Symbol.getLength() == 8)
+ switch (Symbol.getLength()) {
+ case 8:
return "unsigned __int64";
- return "unsigned";
+ case 4:
+ return "unsigned int";
+ case 2:
+ return "unsigned short";
+ case 1:
+ return "unsigned char";
+ default:
+ return "unsigned";
+ }
case PDB_BuiltinType::Int:
- if (Symbol.getLength() == 4)
+ switch (Symbol.getLength()) {
+ case 8:
+ return "__int64";
+ case 4:
+ return "int";
+ case 2:
+ return "short";
+ case 1:
+ return "char";
+ default:
return "int";
- return "__int64";
+ }
case PDB_BuiltinType::Char:
return "char";
case PDB_BuiltinType::WCharT: