[libcxx-commits] [PATCH] D74163: [demangler] Fix the parsing of long double literals for PowerPC and S390

Hubert Tong via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Thu Feb 6 14:25:52 PST 2020


hubert.reinterpretcast added inline comments.
Herald added a subscriber: wuzish.
Herald added a reviewer: mclow.lists.


================
Comment at: libcxxabi/src/cxa_demangle.cpp:9
 
+#if defined(__powerpc__) && !defined(__LONG_DOUBLE_128__)
+#error "Demangler must be built in long double 128 mode on PowerPC."
----------------
As information, this will block building the demangler on AIX with the `xlclang++` invocation of the IBM XL compiler.


================
Comment at: libcxxabi/src/cxa_demangle.cpp:10
+#if defined(__powerpc__) && !defined(__LONG_DOUBLE_128__)
+#error "Demangler must be built in long double 128 mode on PowerPC."
+#endif
----------------
This may need to also guard against building with `__LONG_DOUBLE_IEEE128__`.


================
Comment at: libcxxabi/src/demangle/ItaniumDemangle.h:4235
+    ++First;
+    return getDerived().template parseFloatingLiteral<double>();
+#else
----------------
As information, the status quo on AIX is that `e` is used for both 64-bit and 128-bit long double.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D74163/new/

https://reviews.llvm.org/D74163





More information about the libcxx-commits mailing list