⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 platform-nullos.cc.svn-base

📁 Google浏览器V8内核代码
💻 SVN-BASE
字号:
// Copyright 2006-2008 the V8 project authors. All rights reserved.// Redistribution and use in source and binary forms, with or without// modification, are permitted provided that the following conditions are// met:////     * Redistributions of source code must retain the above copyright//       notice, this list of conditions and the following disclaimer.//     * Redistributions in binary form must reproduce the above//       copyright notice, this list of conditions and the following//       disclaimer in the documentation and/or other materials provided//       with the distribution.//     * Neither the name of Google Inc. nor the names of its//       contributors may be used to endorse or promote products derived//       from this software without specific prior written permission.//// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.// Platform specific code for NULLOS goes here// Minimal include to get access to abort, fprintf and friends for bootstrapping// messages.#include <stdio.h>#include <stdlib.h>#include "v8.h"#include "platform.h"namespace v8 { namespace internal {// Give V8 the opportunity to override the default ceil behaviour.double ceiling(double x) {  UNIMPLEMENTED();  return 0;}// Initialize OS class early in the V8 startup.void OS::Setup() {  // Seed the random number generator.  UNIMPLEMENTED();}// Returns the accumulated user time for thread.int OS::GetUserTime(uint32_t* secs,  uint32_t* usecs) {  UNIMPLEMENTED();  *secs = 0;  *usecs = 0;  return 0;}// Returns current time as the number of milliseconds since// 00:00:00 UTC, January 1, 1970.double OS::TimeCurrentMillis() {  UNIMPLEMENTED();  return 0;}// Returns ticks in microsecond resolution.int64_t OS::Ticks() {  UNIMPLEMENTED();  return 0;}// Returns a string identifying the current timezone taking into// account daylight saving.char* OS::LocalTimezone(double time) {  UNIMPLEMENTED();  return "<none>";}// Returns the daylight savings offset in milliseconds for the given time.double OS::DaylightSavingsOffset(double time) {  UNIMPLEMENTED();  return 0;}// Returns the local time offset in milliseconds east of UTC without// taking daylight savings time into account.double OS::LocalTimeOffset() {  UNIMPLEMENTED();  return 0;}// Print (debug) message to console.void OS::Print(const char* format, ...) {  UNIMPLEMENTED();}// Print (debug) message to console.void OS::VPrint(const char* format, va_list args) {  // Minimalistic implementation for bootstrapping.  vfprintf(stdout, format, args);}// Print error message to console.void OS::PrintError(const char* format, ...) {  // Minimalistic implementation for bootstrapping.  va_list args;  va_start(args, format);  VPrintError(format, args);  va_end(args);}// Print error message to console.void OS::VPrintError(const char* format, va_list args) {  // Minimalistic implementation for bootstrapping.  vfprintf(stderr, format, args);}int OS::SNPrintF(char* str, size_t size, const char* format, ...) {  UNIMPLEMENTED();  return 0;}int OS::VSNPrintF(char* str, size_t size, const char* format, va_list args) {  UNIMPLEMENTED();  return 0;}double OS::nan_value() {  UNIMPLEMENTED();  return 0;}bool OS::IsOutsideAllocatedSpace(void* address) {  UNIMPLEMENTED();  return false;}size_t OS::AllocateAlignment() {  UNIMPLEMENTED();  return 0;}void* OS::Allocate(const size_t requested,                   size_t* allocated,                   bool executable) {  UNIMPLEMENTED();  return NULL;}void OS::Free(void* buf, const size_t length) {  // TODO(1240712): potential system call return value which is ignored here.  UNIMPLEMENTED();}void OS::Sleep(int milliseconds) {  UNIMPLEMENTED();}void OS::Abort() {  // Minimalistic implementation for bootstrapping.  abort();}void OS::DebugBreak() {  UNIMPLEMENTED();}OS::MemoryMappedFile* OS::MemoryMappedFile::create(const char* name, int size,    void* initial) {  UNIMPLEMENTED();  return NULL;}void OS::LogSharedLibraryAddresses() {  UNIMPLEMENTED();}int OS::StackWalk(OS::StackFrame* frames, int frames_size) {  UNIMPLEMENTED();  return 0;}VirtualMemory::VirtualMemory(size_t size, void* address_hint) {  UNIMPLEMENTED();}VirtualMemory::~VirtualMemory() {  UNIMPLEMENTED();}bool VirtualMemory::IsReserved() {  UNIMPLEMENTED();  return false;}bool VirtualMemory::Commit(void* address, size_t size, bool executable) {  UNIMPLEMENTED();  return false;}bool VirtualMemory::Uncommit(void* address, size_t size) {  UNIMPLEMENTED();  return false;}class ThreadHandle::PlatformData : public Malloced { public:  explicit PlatformData(ThreadHandle::Kind kind) {    UNIMPLEMENTED();  }  void* pd_data_;};ThreadHandle::ThreadHandle(Kind kind) {  UNIMPLEMENTED();  // Shared setup follows.  data_ = new PlatformData(kind);}void ThreadHandle::Initialize(ThreadHandle::Kind kind) {  UNIMPLEMENTED();}ThreadHandle::~ThreadHandle() {  UNIMPLEMENTED();  // Shared tear down follows.  delete data_;}bool ThreadHandle::IsSelf() const {  UNIMPLEMENTED();  return false;}bool ThreadHandle::IsValid() const {  UNIMPLEMENTED();  return false;}Thread::Thread() : ThreadHandle(ThreadHandle::INVALID) {  UNIMPLEMENTED();}Thread::~Thread() {  UNIMPLEMENTED();}void Thread::Start() {  UNIMPLEMENTED();}void Thread::Join() {  UNIMPLEMENTED();}Thread::LocalStorageKey Thread::CreateThreadLocalKey() {  UNIMPLEMENTED();  return static_cast<LocalStorageKey>(0);}void Thread::DeleteThreadLocalKey(LocalStorageKey key) {  UNIMPLEMENTED();}void* Thread::GetThreadLocal(LocalStorageKey key) {  UNIMPLEMENTED();  return NULL;}void Thread::SetThreadLocal(LocalStorageKey key, void* value) {  UNIMPLEMENTED();}void Thread::YieldCPU() {  UNIMPLEMENTED();}class NullMutex : public Mutex { public:  NullMutex() : data_(NULL) {    UNIMPLEMENTED();  }  virtual ~NullMutex() {    UNIMPLEMENTED();  }  virtual int Lock() {    UNIMPLEMENTED();    return 0;  }  virtual int Unlock() {    UNIMPLEMENTED();    return 0;  } private:  void* data_;};Mutex* OS::CreateMutex() {  UNIMPLEMENTED();  return new NullMutex();}class NullSemaphore : public Semaphore { public:  explicit NullSemaphore(int count) : data_(NULL) {    UNIMPLEMENTED();  }  virtual ~NullSemaphore() {    UNIMPLEMENTED();  }  virtual void Wait() {    UNIMPLEMENTED();  }  virtual void Signal() {    UNIMPLEMENTED();  } private:  void* data_;};Semaphore* OS::CreateSemaphore(int count) {  UNIMPLEMENTED();  return new NullSemaphore(count);}#ifdef ENABLE_LOGGING_AND_PROFILINGclass ProfileSampler::PlatformData  : public Malloced { public:  PlatformData() {    UNIMPLEMENTED();  }};ProfileSampler::ProfileSampler(int interval) {  UNIMPLEMENTED();  // Shared setup follows.  data_ = new PlatformData();  interval_ = interval;  active_ = false;}ProfileSampler::~ProfileSampler() {  UNIMPLEMENTED();  // Shared tear down follows.  delete data_;}void ProfileSampler::Start() {  UNIMPLEMENTED();}void ProfileSampler::Stop() {  UNIMPLEMENTED();}#endif  // ENABLE_LOGGING_AND_PROFILING} }  // namespace v8::internal

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -