Skip to content

Commit b10bc8f

Browse files
authored
Merge pull request #7753 from eeckstein/demangler-wrappers
2 parents a562c0e + 437d4da commit b10bc8f

File tree

9 files changed

+17
-53
lines changed

9 files changed

+17
-53
lines changed

include/swift/Basic/DemangleWrappers.h

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -42,21 +42,9 @@ class NodeDumper {
4242
/// Utility function, useful to be called from the debugger.
4343
void dumpNode(const NodePointer &Root);
4444

45-
NodePointer
46-
demangleSymbolAsNode(StringRef MangledName,
47-
const DemangleOptions &Options = DemangleOptions());
48-
4945
std::string nodeToString(NodePointer Root,
5046
const DemangleOptions &Options = DemangleOptions());
5147

52-
std::string
53-
demangleSymbolAsString(StringRef MangledName,
54-
const DemangleOptions &Options = DemangleOptions());
55-
56-
std::string
57-
demangleTypeAsString(StringRef MangledTypeName,
58-
const DemangleOptions &Options = DemangleOptions());
59-
6048
} // end namespace demangle_wrappers
6149
} // end namespace swift
6250

lib/Basic/DemangleWrappers.cpp

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -79,34 +79,8 @@ class PrettyStackTraceNode : public llvm::PrettyStackTraceEntry {
7979
};
8080
} // end unnamed namespace
8181

82-
NodePointer
83-
swift::demangle_wrappers::demangleSymbolAsNode(llvm::StringRef MangledName,
84-
const DemangleOptions &Options) {
85-
PrettyStackTraceStringAction prettyStackTrace("demangling string",
86-
MangledName);
87-
return swift::Demangle::demangleSymbolAsNode(MangledName.data(),
88-
MangledName.size(), Options);
89-
}
90-
9182
std::string nodeToString(NodePointer Root,
9283
const DemangleOptions &Options) {
9384
PrettyStackTraceNode trace("printing", Root.get());
9485
return swift::Demangle::nodeToString(Root, Options);
9586
}
96-
97-
std::string swift::demangle_wrappers::demangleSymbolAsString(
98-
llvm::StringRef MangledName, const DemangleOptions &Options) {
99-
PrettyStackTraceStringAction prettyStackTrace("demangling string",
100-
MangledName);
101-
return swift::Demangle::demangleSymbolAsString(MangledName.data(),
102-
MangledName.size(), Options);
103-
}
104-
105-
std::string swift::demangle_wrappers::demangleTypeAsString(
106-
llvm::StringRef MangledName, const DemangleOptions &Options) {
107-
PrettyStackTraceStringAction prettyStackTrace("demangling type string",
108-
MangledName);
109-
return swift::Demangle::demangleTypeAsString(MangledName.data(),
110-
MangledName.size(), Options);
111-
}
112-

lib/Driver/DependencyGraph.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
//===----------------------------------------------------------------------===//
1212

1313
#include "swift/Driver/DependencyGraph.h"
14-
#include "swift/Basic/DemangleWrappers.h"
14+
#include "swift/Basic/Demangle.h"
1515
#include "llvm/ADT/SmallString.h"
1616
#include "llvm/ADT/SmallVector.h"
1717
#include "llvm/ADT/StringSwitch.h"
@@ -408,7 +408,7 @@ void DependencyGraphImpl::MarkTracerImpl::printPath(
408408
if (name.front() == 'P')
409409
name.push_back('_');
410410
out << " provides type '"
411-
<< swift::demangle_wrappers::demangleTypeAsString(name.str())
411+
<< swift::Demangle::demangleTypeAsString(name.str())
412412
<< "'\n";
413413

414414
} else if (entry.KindMask.contains(DependencyKind::NominalTypeMember)) {
@@ -426,7 +426,7 @@ void DependencyGraphImpl::MarkTracerImpl::printPath(
426426
StringRef memberPart = name.str().substr(splitPoint+1);
427427

428428
out << " provides member '" << memberPart << "' of type '"
429-
<< swift::demangle_wrappers::demangleTypeAsString(typePart)
429+
<< swift::Demangle::demangleTypeAsString(typePart)
430430
<< "'\n";
431431

432432
} else if (entry.KindMask.contains(DependencyKind::DynamicLookupName)) {

lib/SILOptimizer/IPO/GlobalOpt.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
//===----------------------------------------------------------------------===//
1212

1313
#define DEBUG_TYPE "globalopt"
14-
#include "swift/Basic/DemangleWrappers.h"
14+
#include "swift/Basic/Demangle.h"
1515
#include "swift/SIL/CFG.h"
1616
#include "swift/SIL/DebugUtils.h"
1717
#include "swift/SIL/SILInstruction.h"
@@ -398,7 +398,7 @@ static bool isAvailabilityCheckOnDomPath(SILBasicBlock *From, SILBasicBlock *To,
398398
void SILGlobalOpt::placeInitializers(SILFunction *InitF,
399399
ArrayRef<ApplyInst*> Calls) {
400400
DEBUG(llvm::dbgs() << "GlobalOpt: calls to "
401-
<< demangle_wrappers::demangleSymbolAsString(InitF->getName())
401+
<< Demangle::demangleSymbolAsString(InitF->getName())
402402
<< " : " << Calls.size() << "\n");
403403
// Map each initializer-containing function to its final initializer call.
404404
llvm::DenseMap<SILFunction*, ApplyInst*> ParentFuncs;

lib/SILOptimizer/PassManager/PassManager.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -801,7 +801,7 @@ namespace llvm {
801801

802802
std::string getNodeDescription(const CallGraph::Node *Node,
803803
const CallGraph *Graph) {
804-
std::string Label = demangle_wrappers::
804+
std::string Label = Demangle::
805805
demangleSymbolAsString(Node->F->getName());
806806
wrap(Label, Node->NumCallSites);
807807
return Label;

lib/SILOptimizer/UtilityPasses/FunctionOrderPrinter.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
//===----------------------------------------------------------------------===//
1717

1818
#include "swift/SILOptimizer/Analysis/FunctionOrder.h"
19-
#include "swift/Basic/DemangleWrappers.h"
19+
#include "swift/Basic/Demangle.h"
2020
#include "swift/SILOptimizer/Analysis/BasicCalleeAnalysis.h"
2121
#include "swift/SIL/SILFunction.h"
2222
#include "swift/SIL/SILModule.h"
@@ -50,7 +50,7 @@ class FunctionOrderPrinterPass : public SILModuleTransform {
5050

5151
for (auto *F : SCC) {
5252
llvm::outs() << Indent
53-
<< demangle_wrappers::demangleSymbolAsString(F->getName())
53+
<< Demangle::demangleSymbolAsString(F->getName())
5454
<< "\n";
5555
}
5656
}

tools/SourceKit/tools/sourcekitd/lib/API/Requests.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
#include "swift/Basic/DemangleWrappers.h"
2828
#include "swift/Basic/ManglingMacros.h"
2929
#include "swift/Basic/Mangler.h"
30+
#include "swift/Basic/Demangler.h"
3031

3132
#include "llvm/ADT/ArrayRef.h"
3233
#include "llvm/ADT/SmallString.h"
@@ -1118,7 +1119,7 @@ static sourcekitd_response_t demangleNames(ArrayRef<const char *> MangledNames,
11181119
if (!isSwiftPrefixed(MangledName))
11191120
return std::string(); // Not a mangled name
11201121

1121-
std::string Result = swift::demangle_wrappers::demangleSymbolAsString(
1122+
std::string Result = swift::Demangle::demangleSymbolAsString(
11221123
MangledName, DemangleOptions);
11231124

11241125
if (Result == MangledName)

tools/swift-ide-test/swift-ide-test.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1410,8 +1410,8 @@ static int doPrintAST(const CompilerInvocation &InitInvok,
14101410

14111411
// If we were given a mangled name, do a very simple form of LLDB's logic to
14121412
// look up a type based on that name.
1413-
Demangle::NodePointer node =
1414-
demangle_wrappers::demangleSymbolAsNode(MangledNameToFind);
1413+
Demangle::Context DCtx;
1414+
Demangle::NodePointer node = DCtx.demangleSymbolAsNode(MangledNameToFind);
14151415
using NodeKind = Demangle::Node::Kind;
14161416

14171417
if (!node) {
@@ -1560,7 +1560,8 @@ static int doPrintLocalTypes(const CompilerInvocation &InitInvok,
15601560
for (auto MangledName : MangledNames) {
15611561

15621562
// Global
1563-
auto node = demangle_wrappers::demangleSymbolAsNode(MangledName);
1563+
Demangle::Context DCtx;
1564+
auto node = DCtx.demangleSymbolAsNode(MangledName);
15641565

15651566
// TypeMangling
15661567
node = node->getFirstChild();

unittests/Basic/DemangleTest.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@
1010
//
1111
//===----------------------------------------------------------------------===//
1212

13-
#include "swift/Basic/DemangleWrappers.h"
13+
#include "swift/Basic/Demangle.h"
1414
#include "gtest/gtest.h"
1515

16-
using namespace swift::demangle_wrappers;
16+
using namespace swift::Demangle;
1717

1818
TEST(Demangle, DemangleWrappers) {
19-
EXPECT_EQ("", demangleSymbolAsString(""));
19+
EXPECT_EQ("", demangleSymbolAsString(llvm::StringRef("")));
2020
std::string MangledName = "_TtV1a1b\\\t\n\r\"\'\x1f\x20\x7e\x7f";
2121
MangledName += '\0';
2222
EXPECT_EQ("a.b with unmangled suffix \"\\\\\\t\\n\\r\\\"'\\x1F ~\\x7F\\0\"",

0 commit comments

Comments
 (0)