1
0
mirror of https://github.com/c64scene-ar/llvm-6502.git synced 2025-03-02 22:32:08 +00:00

Provide a generic unix implementation of the Process abstraction.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16290 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Reid Spencer 2004-09-11 04:56:56 +00:00
parent 1b554b4583
commit 27dafe1f3e
2 changed files with 68 additions and 0 deletions
lib/System/Unix

@ -0,0 +1,34 @@
//===- Unix/Process.cpp - Unix Process Implementation --------- -*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
// This file was developed by Reid Spencer and is distributed under the
// University of Illinois Open Source License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
// This file provides the generic Unix implementation of the Process class.
//
//===----------------------------------------------------------------------===//
#include <unistd.h>
//===----------------------------------------------------------------------===//
//=== WARNING: Implementation here must contain only generic UNIX code that
//=== is guaranteed to work on *all* UNIX variants.
//===----------------------------------------------------------------------===//
namespace llvm {
using namespace sys;
unsigned
Process::GetPageSize() {
// NOTE: The getpagesize function doesn't exist in POSIX 1003.1 and is
// "deprecated" in SUSv2. Platforms including this implementation should
// consider sysconf(_SC_PAGE_SIZE) if its available.
static const int page_size = getpagesize();
return static_cast<unsigned>(page_size);
}
}
// vim: sw=2 smartindent smarttab tw=80 autoindent expandtab

@ -0,0 +1,34 @@
//===- Unix/Process.cpp - Unix Process Implementation --------- -*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
// This file was developed by Reid Spencer and is distributed under the
// University of Illinois Open Source License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
// This file provides the generic Unix implementation of the Process class.
//
//===----------------------------------------------------------------------===//
#include <unistd.h>
//===----------------------------------------------------------------------===//
//=== WARNING: Implementation here must contain only generic UNIX code that
//=== is guaranteed to work on *all* UNIX variants.
//===----------------------------------------------------------------------===//
namespace llvm {
using namespace sys;
unsigned
Process::GetPageSize() {
// NOTE: The getpagesize function doesn't exist in POSIX 1003.1 and is
// "deprecated" in SUSv2. Platforms including this implementation should
// consider sysconf(_SC_PAGE_SIZE) if its available.
static const int page_size = getpagesize();
return static_cast<unsigned>(page_size);
}
}
// vim: sw=2 smartindent smarttab tw=80 autoindent expandtab