[libc-commits] [libc] [libc][stdfix] Implement fixed point fxbits functions in llvm-libc (PR #114912)
Nick Desaulniers via libc-commits
libc-commits at lists.llvm.org
Mon Nov 11 16:29:33 PST 2024
================
@@ -0,0 +1,19 @@
+//===-- Implementation of lkbits function ---------------------------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+#include "lkbits.h"
+#include "src/__support/common.h"
+#include "src/__support/fixed_point/fx_bits.h"
+#include "src/__support/macros/config.h"
+
+namespace LIBC_NAMESPACE_DECL {
+LLVM_LIBC_FUNCTION(long accum, lkbits, (int_lk_t x)) {
+ return cpp::bit_cast<long accum, int_lk_t>(x);
----------------
nickdesaulniers wrote:
>From a discussion with @smallp-o-p on #libc in LLVM discord:
> yeah i did some ad-hoc checking on godbolt and very inconveniently long is 4 bytes while long _Accum and its unsigned counterpart are always 8 bytes
https://github.com/llvm/llvm-project/pull/114912
More information about the libc-commits
mailing list