1041638c4SNick Desaulniers //===-- Implementation of stdc_bit_width_ull ------------------------------===// 2041638c4SNick Desaulniers // 3041638c4SNick Desaulniers // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4041638c4SNick Desaulniers // See https://llvm.org/LICENSE.txt for license information. 5041638c4SNick Desaulniers // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6041638c4SNick Desaulniers // 7041638c4SNick Desaulniers //===----------------------------------------------------------------------===// 8041638c4SNick Desaulniers 9041638c4SNick Desaulniers #include "src/stdbit/stdc_bit_width_ull.h" 10041638c4SNick Desaulniers 11041638c4SNick Desaulniers #include "src/__support/CPP/bit.h" 12041638c4SNick Desaulniers #include "src/__support/common.h" 13*5ff3ff33SPetr Hosek #include "src/__support/macros/config.h" 14041638c4SNick Desaulniers 15*5ff3ff33SPetr Hosek namespace LIBC_NAMESPACE_DECL { 16041638c4SNick Desaulniers 17041638c4SNick Desaulniers LLVM_LIBC_FUNCTION(unsigned, stdc_bit_width_ull, (unsigned long long value)) { 18041638c4SNick Desaulniers return static_cast<unsigned>(cpp::bit_width(value)); 19041638c4SNick Desaulniers } 20041638c4SNick Desaulniers 21*5ff3ff33SPetr Hosek } // namespace LIBC_NAMESPACE_DECL 22