[llvm] e0c54a2 - [libc++abi][VE] Support VE in long double demangler

Kazushi Marukawa via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 13 16:12:03 PDT 2023


Author: Kazushi (Jam) Marukawa
Date: 2023-09-14T08:11:56+09:00
New Revision: e0c54a2e7b9ca20bbf3fb554162bfcd6d5f56a1d

URL: https://github.com/llvm/llvm-project/commit/e0c54a2e7b9ca20bbf3fb554162bfcd6d5f56a1d
DIFF: https://github.com/llvm/llvm-project/commit/e0c54a2e7b9ca20bbf3fb554162bfcd6d5f56a1d.diff

LOG: [libc++abi][VE] Support VE in long double demangler

Support VE in long double demangler.  This patch corrects
libcxxabi/test/test_demangle.pass.cpp on VE.

Reviewed By: MaskRay, #libc_abi, ldionne

Differential Revision: https://reviews.llvm.org/D159004

Added: 
    

Modified: 
    libcxxabi/src/demangle/ItaniumDemangle.h
    llvm/include/llvm/Demangle/ItaniumDemangle.h

Removed: 
    


################################################################################
diff  --git a/libcxxabi/src/demangle/ItaniumDemangle.h b/libcxxabi/src/demangle/ItaniumDemangle.h
index c80f343cc876e99..e96fee18b27a3ad 100644
--- a/libcxxabi/src/demangle/ItaniumDemangle.h
+++ b/libcxxabi/src/demangle/ItaniumDemangle.h
@@ -5134,7 +5134,8 @@ template <>
 struct FloatData<long double>
 {
 #if defined(__mips__) && defined(__mips_n64) || defined(__aarch64__) || \
-    defined(__wasm__) || defined(__riscv) || defined(__loongarch__)
+    defined(__wasm__) || defined(__riscv) || defined(__loongarch__) || \
+    defined(__ve__)
     static const size_t mangled_size = 32;
 #elif defined(__arm__) || defined(__mips__) || defined(__hexagon__)
     static const size_t mangled_size = 16;

diff  --git a/llvm/include/llvm/Demangle/ItaniumDemangle.h b/llvm/include/llvm/Demangle/ItaniumDemangle.h
index 26acd38f8ae8476..04faeb462e097e7 100644
--- a/llvm/include/llvm/Demangle/ItaniumDemangle.h
+++ b/llvm/include/llvm/Demangle/ItaniumDemangle.h
@@ -5129,7 +5129,8 @@ template <>
 struct FloatData<long double>
 {
 #if defined(__mips__) && defined(__mips_n64) || defined(__aarch64__) || \
-    defined(__wasm__) || defined(__riscv) || defined(__loongarch__)
+    defined(__wasm__) || defined(__riscv) || defined(__loongarch__) || \
+    defined(__ve__)
     static const size_t mangled_size = 32;
 #elif defined(__arm__) || defined(__mips__) || defined(__hexagon__)
     static const size_t mangled_size = 16;


        


More information about the llvm-commits mailing list