[libc-commits] [PATCH] D149594: [libc] Add explicit constructor calls to fix compilation when using UInt<T>

Mikhail Ramalho via Phabricator via libc-commits libc-commits at lists.llvm.org
Mon May 22 14:25:56 PDT 2023


mikhail.ramalho added inline comments.


================
Comment at: libc/src/__support/FPUtil/x86_64/LongDoubleBits.h:129
+    return cpp::bit_cast<long double>(bits_with_explicit_bit);
+  }
+
----------------
sivachandra wrote:
> Why was this method added? In other words, why was not required previously?
That's because of the new dyadic_float object used in clinger_fast_path.

DyadicFloat's conversion operator calls get_val(), but this was only implemented in the non-x86_64 class.


================
Comment at: libc/src/__support/UInt.h:480
 
+  constexpr UInt<Bits> operator/=(const UInt<Bits> &other) {
+    *this = *this / other;
----------------
lntue wrote:
> Should the return type be `UInt<Bits>&`?
I followed how it's done for the other operators, do you want me to change just this one?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D149594



More information about the libc-commits mailing list