1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
llvm-mirror/tools/llvm-pdbutil
Simon Pilgrim 165132af1b [ADT] Remove APInt/APSInt toString() std::string variants
<string> is currently the highest impact header in a clang+llvm build:

https://commondatastorage.googleapis.com/chromium-browser-clang/llvm-include-analysis.html

One of the most common places this is being included is the APInt.h header, which needs it for an old toString() implementation that returns std::string - an inefficient method compared to the SmallString versions that it actually wraps.

This patch replaces these APInt/APSInt methods with a pair of llvm::toString() helpers inside StringExtras.h, adjusts users accordingly and removes the <string> from APInt.h - I was hoping that more of these users could be converted to use the SmallString methods, but it appears that most end up creating a std::string anyhow. I avoided trying to use the raw_ostream << operators as well as I didn't want to lose having the integer radix explicit in the code.

Differential Revision: https://reviews.llvm.org/D103888
2021-06-11 13:19:15 +01:00
..
BytesOutputStyle.cpp
BytesOutputStyle.h
CMakeLists.txt
DumpOutputStyle.cpp
DumpOutputStyle.h
ExplainOutputStyle.cpp
ExplainOutputStyle.h
FormatUtil.cpp
FormatUtil.h
InputFile.cpp
InputFile.h
LinePrinter.cpp
LinePrinter.h
llvm-pdbutil.cpp
llvm-pdbutil.h
MinimalSymbolDumper.cpp
MinimalSymbolDumper.h
MinimalTypeDumper.cpp
MinimalTypeDumper.h
OutputStyle.h
PdbYaml.cpp
PdbYaml.h
PrettyBuiltinDumper.cpp
PrettyBuiltinDumper.h
PrettyClassDefinitionDumper.cpp
PrettyClassDefinitionDumper.h
PrettyClassLayoutGraphicalDumper.cpp
PrettyClassLayoutGraphicalDumper.h
PrettyCompilandDumper.cpp
PrettyCompilandDumper.h
PrettyEnumDumper.cpp
PrettyEnumDumper.h
PrettyExternalSymbolDumper.cpp
PrettyExternalSymbolDumper.h
PrettyFunctionDumper.cpp
PrettyFunctionDumper.h
PrettyTypedefDumper.cpp
PrettyTypedefDumper.h
PrettyTypeDumper.cpp
PrettyTypeDumper.h
PrettyVariableDumper.cpp
PrettyVariableDumper.h
StreamUtil.cpp
StreamUtil.h
TypeReferenceTracker.cpp
TypeReferenceTracker.h
YAMLOutputStyle.cpp
YAMLOutputStyle.h