diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2019-12-20 19:53:05 +0000 |
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2019-12-20 19:53:05 +0000 |
| commit | 0b57cec536236d46e3dba9bd041533462f33dbb7 (patch) | |
| tree | 56229dbdbbf76d18580f72f789003db17246c8d9 /contrib/llvm/lib/Support/Unix/Unix.h | |
| parent | 718ef55ec7785aae63f98f8ca05dc07ed399c16d (diff) | |
Notes
Diffstat (limited to 'contrib/llvm/lib/Support/Unix/Unix.h')
| -rw-r--r-- | contrib/llvm/lib/Support/Unix/Unix.h | 105 |
1 files changed, 0 insertions, 105 deletions
diff --git a/contrib/llvm/lib/Support/Unix/Unix.h b/contrib/llvm/lib/Support/Unix/Unix.h deleted file mode 100644 index 86309b0567f5..000000000000 --- a/contrib/llvm/lib/Support/Unix/Unix.h +++ /dev/null @@ -1,105 +0,0 @@ -//===- llvm/Support/Unix/Unix.h - Common Unix Include File -------*- C++ -*-===// -// -// 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 -// -//===----------------------------------------------------------------------===// -// -// This file defines things specific to Unix implementations. -// -//===----------------------------------------------------------------------===// - -#ifndef LLVM_LIB_SUPPORT_UNIX_UNIX_H -#define LLVM_LIB_SUPPORT_UNIX_UNIX_H - -//===----------------------------------------------------------------------===// -//=== WARNING: Implementation here must contain only generic UNIX code that -//=== is guaranteed to work on all UNIX variants. -//===----------------------------------------------------------------------===// - -#include "llvm/Config/config.h" -#include "llvm/Support/Chrono.h" -#include "llvm/Support/Errno.h" -#include <algorithm> -#include <assert.h> -#include <cerrno> -#include <cstdio> -#include <cstdlib> -#include <cstring> -#include <string> -#include <sys/types.h> -#include <sys/wait.h> - -#ifdef HAVE_UNISTD_H -#include <unistd.h> -#endif - -#ifdef HAVE_SYS_PARAM_H -#include <sys/param.h> -#endif - -#ifdef HAVE_SYS_TIME_H -# include <sys/time.h> -#endif -#include <time.h> - -#ifdef HAVE_DLFCN_H -# include <dlfcn.h> -#endif - -#ifdef HAVE_FCNTL_H -# include <fcntl.h> -#endif - -/// This function builds an error message into \p ErrMsg using the \p prefix -/// string and the Unix error number given by \p errnum. If errnum is -1, the -/// default then the value of errno is used. -/// Make an error message -/// -/// If the error number can be converted to a string, it will be -/// separated from prefix by ": ". -static inline bool MakeErrMsg( - std::string* ErrMsg, const std::string& prefix, int errnum = -1) { - if (!ErrMsg) - return true; - if (errnum == -1) - errnum = errno; - *ErrMsg = prefix + ": " + llvm::sys::StrError(errnum); - return true; -} - -namespace llvm { -namespace sys { - -/// Convert a struct timeval to a duration. Note that timeval can be used both -/// as a time point and a duration. Be sure to check what the input represents. -inline std::chrono::microseconds toDuration(const struct timeval &TV) { - return std::chrono::seconds(TV.tv_sec) + - std::chrono::microseconds(TV.tv_usec); -} - -/// Convert a time point to struct timespec. -inline struct timespec toTimeSpec(TimePoint<> TP) { - using namespace std::chrono; - - struct timespec RetVal; - RetVal.tv_sec = toTimeT(TP); - RetVal.tv_nsec = (TP.time_since_epoch() % seconds(1)).count(); - return RetVal; -} - -/// Convert a time point to struct timeval. -inline struct timeval toTimeVal(TimePoint<std::chrono::microseconds> TP) { - using namespace std::chrono; - - struct timeval RetVal; - RetVal.tv_sec = toTimeT(TP); - RetVal.tv_usec = (TP.time_since_epoch() % seconds(1)).count(); - return RetVal; -} - -} // namespace sys -} // namespace llvm - -#endif |
