Skip to content

Commit 727bf43

Browse files
authored
Merge pull request swiftlang#22088 from slavapestov/demangle-float-type
Demangler: Print BuiltinFloatType as "FPIEEE<size>" not "Float<size>"
2 parents dc2ea3e + 9761e5c commit 727bf43

File tree

7 files changed

+14
-8
lines changed

7 files changed

+14
-8
lines changed

include/swift/Strings.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ constexpr static const char BUILTIN_TYPE_NAME_INT512[] = "Builtin.Int512";
5858
constexpr static const char BUILTIN_TYPE_NAME_INTLITERAL[] =
5959
"Builtin.IntLiteral";
6060
/// The name of the Builtin type for Float
61-
constexpr static const char BUILTIN_TYPE_NAME_FLOAT[] = "Builtin.Float";
61+
constexpr static const char BUILTIN_TYPE_NAME_FLOAT[] = "Builtin.FPIEEE";
6262
/// The name of the Builtin type for NativeObject
6363
constexpr static const char BUILTIN_TYPE_NAME_NATIVEOBJECT[] =
6464
"Builtin.NativeObject";

lib/Demangling/OldDemangler.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1810,7 +1810,7 @@ class OldDemangler {
18101810
if (demangleBuiltinSize(size)) {
18111811
return Factory.createNode(
18121812
Node::Kind::BuiltinTypeName,
1813-
std::move(DemanglerPrinter() << "Builtin.Float" << size).str());
1813+
std::move(DemanglerPrinter() << "Builtin.FPIEEE" << size).str());
18141814
}
18151815
}
18161816
if (c == 'i') {

lib/Demangling/OldRemangler.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1350,7 +1350,7 @@ void Remangler::mangleBuiltinTypeName(Node *node) {
13501350
Out << 'w';
13511351
} else if (stripPrefix(text, "Builtin.Int")) {
13521352
Out << 'i' << text << '_';
1353-
} else if (stripPrefix(text, "Builtin.Float")) {
1353+
} else if (stripPrefix(text, "Builtin.FPIEEE")) {
13541354
Out << 'f' << text << '_';
13551355
} else if (stripPrefix(text, "Builtin.Vec")) {
13561356
// Avoid using StringRef::split because its definition is not

lib/Demangling/Remangler.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -709,7 +709,7 @@ void Remangler::mangleBuiltinTypeName(Node *node) {
709709
auto element = text.substr(splitIdx).substr(1);
710710
if (element == "RawPointer") {
711711
Buffer << 'p';
712-
} else if (element.consume_front("Float")) {
712+
} else if (element.consume_front("FPIEEE")) {
713713
Buffer << 'f' << element << '_';
714714
} else if (element.consume_front("Int")) {
715715
Buffer << 'i' << element << '_';

test/Demangle/Inputs/manglings.txt

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
1-
_TtBf80_ ---> Builtin.Float80
1+
_TtBf32_ ---> Builtin.FPIEEE32
2+
_TtBf64_ ---> Builtin.FPIEEE64
3+
_TtBf80_ ---> Builtin.FPIEEE80
24
_TtBi32_ ---> Builtin.Int32
5+
$sBf32_ ---> Builtin.FPIEEE32
6+
$sBf64_ ---> Builtin.FPIEEE64
7+
$sBf80_ ---> Builtin.FPIEEE80
8+
$sBi32_ ---> Builtin.Int32
39
_TtBw ---> Builtin.Word
410
_TtBO ---> Builtin.UnknownObject
511
_TtBo ---> Builtin.NativeObject

test/Demangle/Inputs/simplified-manglings.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
_TtBf80_ ---> Builtin.Float80
1+
_TtBf80_ ---> Builtin.FPIEEE80
22
_TtBi32_ ---> Builtin.Int32
33
_TtBw ---> Builtin.Word
44
_TtBO ---> Builtin.UnknownObject

test/SourceKit/Demangle/demangle.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
// RUN: %sourcekitd-test -req=demangle unmangled _TtBf80_ _TtP3foo3bar_ '$s3Foo11AppDelegateC29applicationDidFinishLaunchingyy10Foundation12NotificationVF' | %FileCheck %s
22
// CHECK: START DEMANGLE
33
// CHECK-NEXT: <empty>
4-
// CHECK-NEXT: Builtin.Float80
4+
// CHECK-NEXT: Builtin.FPIEEE80
55
// CHECK-NEXT: foo.bar
66
// CHECK-NEXT: Foo.AppDelegate.applicationDidFinishLaunching(Foundation.Notification) -> ()
77
// CHECK-NEXT: END DEMANGLE
88

99
// RUN: %sourcekitd-test -req=demangle unmangled _TtBf80_ _TtP3foo3bar_ '$s3Foo11AppDelegateC29applicationDidFinishLaunchingyy10Foundation12NotificationVF' -simplified-demangling | %FileCheck %s -check-prefix=SIMPLIFIED
1010
// SIMPLIFIED: START DEMANGLE
1111
// SIMPLIFIED-NEXT: <empty>
12-
// SIMPLIFIED-NEXT: Builtin.Float80
12+
// SIMPLIFIED-NEXT: Builtin.FPIEEE80
1313
// SIMPLIFIED-NEXT: bar
1414
// SIMPLIFIED-NEXT: AppDelegate.applicationDidFinishLaunching(_:)
1515
// SIMPLIFIED-NEXT: END DEMANGLE

0 commit comments

Comments
 (0)