1//===---------------- Implementation of IO utils ----------------*- C++ -*-===//
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#ifndef LLVM_LIBC_SRC___SUPPORT_OSUTIL_IO_H
10#define LLVM_LIBC_SRC___SUPPORT_OSUTIL_IO_H
11
12#include "src/__support/macros/properties/architectures.h"
13
14#if defined(LIBC_TARGET_ARCH_IS_GPU)
15#include "gpu/io.h"
16#elif defined(__APPLE__)
17#include "darwin/io.h"
18#elif defined(__linux__)
19#include "linux/io.h"
20#elif defined(__Fuchsia__)
21#include "fuchsia/io.h"
22#elif defined(__ELF__)
23// TODO: Ideally we would have LIBC_TARGET_OS_IS_BAREMETAL.
24#include "baremetal/io.h"
25#endif
26
27#endif // LLVM_LIBC_SRC___SUPPORT_OSUTIL_IO_H
28

source code of libc/src/__support/OSUtil/io.h