1//===-- Implementation of ntohl function ----------------------------------===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#include "src/network/ntohl.h"
10#include "src/__support/common.h"
11#include "src/__support/endian.h"
12
13namespace LIBC_NAMESPACE {
14
15LLVM_LIBC_FUNCTION(uint32_t, ntohl, (uint32_t netlong)) {
16 if constexpr (Endian::IS_LITTLE)
17 return __builtin_bswap32(netlong);
18 else
19 return netlong;
20}
21
22} // namespace LIBC_NAMESPACE
23

source code of libc/src/network/ntohl.cpp