mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-22 18:54:02 +01:00
llvm-undname: Support demangling char8_t
Ports clang's mangling support added in r354633 to llvm-undname. llvm-svn: 361839
This commit is contained in:
parent
04498a83a8
commit
d5dc9ff9ab
@ -82,6 +82,7 @@ enum class PrimitiveKind {
|
||||
Char,
|
||||
Schar,
|
||||
Uchar,
|
||||
Char8,
|
||||
Char16,
|
||||
Char32,
|
||||
Short,
|
||||
|
@ -1944,6 +1944,8 @@ PrimitiveTypeNode *Demangler::demanglePrimitiveType(StringView &MangledName) {
|
||||
return Arena.alloc<PrimitiveTypeNode>(PrimitiveKind::Uint64);
|
||||
case 'W':
|
||||
return Arena.alloc<PrimitiveTypeNode>(PrimitiveKind::Wchar);
|
||||
case 'Q':
|
||||
return Arena.alloc<PrimitiveTypeNode>(PrimitiveKind::Char8);
|
||||
case 'S':
|
||||
return Arena.alloc<PrimitiveTypeNode>(PrimitiveKind::Char16);
|
||||
case 'U':
|
||||
|
@ -130,6 +130,7 @@ void PrimitiveTypeNode::outputPre(OutputStream &OS, OutputFlags Flags) const {
|
||||
OUTPUT_ENUM_CLASS_VALUE(PrimitiveKind, Char, "char");
|
||||
OUTPUT_ENUM_CLASS_VALUE(PrimitiveKind, Schar, "signed char");
|
||||
OUTPUT_ENUM_CLASS_VALUE(PrimitiveKind, Uchar, "unsigned char");
|
||||
OUTPUT_ENUM_CLASS_VALUE(PrimitiveKind, Char8, "char8_t");
|
||||
OUTPUT_ENUM_CLASS_VALUE(PrimitiveKind, Char16, "char16_t");
|
||||
OUTPUT_ENUM_CLASS_VALUE(PrimitiveKind, Char32, "char32_t");
|
||||
OUTPUT_ENUM_CLASS_VALUE(PrimitiveKind, Short, "short");
|
||||
|
@ -7,3 +7,6 @@
|
||||
|
||||
??__MS@@QEAA?AVstrong_ordering@std@@AEBU0@@Z'
|
||||
; CHECK: class std::strong_ordering __cdecl S::operator<=>(struct S const &)
|
||||
|
||||
?f@@YAX_Q@Z
|
||||
; CHECK: void __cdecl f(char8_t)
|
||||
|
Loading…
Reference in New Issue
Block a user