V8 Project
platform-win32.cc File Reference
+ Include dependency graph for platform-win32.cc:

Go to the source code of this file.

Classes

class  v8::base::TimezoneCache
 
class  v8::base::Win32Time
 
union  v8::base::Win32Time::TimeStamp
 
class  v8::base::Win32MemoryMappedFile
 
class  v8::base::Thread::PlatformData
 

Namespaces

 v8
 Debugger support for the V8 JavaScript engine.
 
 v8::base
 
 v8::base::anonymous_namespace{platform-win32.cc}
 

Macros

#define DBGHELP_FUNCTION_LIST(V)
 
#define TLHELP32_FUNCTION_LIST(V)
 
#define DLL_FUNC_TYPE(name)   _##name##_
 
#define DLL_FUNC_VAR(name)   _##name
 
#define IN
 
#define VOID   void
 
#define DEF_DLL_FUNCTION(name)   DLL_FUNC_TYPE(name) DLL_FUNC_VAR(name) = NULL;
 
#define LOAD_DLL_FUNC(name)
 
#define LOAD_DLL_FUNC(name)
 
#define DLL_FUNC_LOADED(name)   (DLL_FUNC_VAR(name) != NULL) &&
 

Typedefs

typedef IN PSTR v8::base::UserSearchPath
 
typedef IN PSTR IN BOOL v8::base::fInvadeProcess
 
typedef OUT PSTR v8::base::SearchPath
 
typedef OUT PSTR IN DWORD v8::base::SearchPathLength
 
typedef IN HANDLE v8::base::hFile
 
typedef IN HANDLE IN PSTR v8::base::ImageName
 
typedef IN HANDLE IN PSTR IN PSTR v8::base::ModuleName
 
typedef IN HANDLE IN PSTR IN PSTR IN DWORD64 v8::base::BaseOfDll
 
typedef IN HANDLE IN PSTR IN PSTR IN DWORD64 IN DWORD v8::base::SizeOfDll
 
typedef HANDLE v8::base::hProcess
 
typedef HANDLE HANDLE v8::base::hThread
 
typedef HANDLE HANDLE LPSTACKFRAME64 v8::base::StackFrame
 
typedef HANDLE HANDLE LPSTACKFRAME64 PVOID v8::base::ContextRecord
 
typedef HANDLE HANDLE LPSTACKFRAME64 PVOID PREAD_PROCESS_MEMORY_ROUTINE64 v8::base::ReadMemoryRoutine
 
typedef HANDLE HANDLE LPSTACKFRAME64 PVOID PREAD_PROCESS_MEMORY_ROUTINE64 PFUNCTION_TABLE_ACCESS_ROUTINE64 v8::base::FunctionTableAccessRoutine
 
typedef HANDLE HANDLE LPSTACKFRAME64 PVOID PREAD_PROCESS_MEMORY_ROUTINE64 PFUNCTION_TABLE_ACCESS_ROUTINE64 PGET_MODULE_BASE_ROUTINE64 v8::base::GetModuleBaseRoutine
 
typedef HANDLE HANDLE LPSTACKFRAME64 PVOID PREAD_PROCESS_MEMORY_ROUTINE64 PFUNCTION_TABLE_ACCESS_ROUTINE64 PGET_MODULE_BASE_ROUTINE64 PTRANSLATE_ADDRESS_ROUTINE64 v8::base::TranslateAddress
 
typedef IN DWORD64 v8::base::qwAddr
 
typedef IN DWORD64 OUT PDWORD64 v8::base::pdwDisplacement
 
typedef IN DWORD64 OUT PDWORD64 OUT PIMAGEHLP_SYMBOL64 v8::base::Symbol
 
typedef IN DWORD64 OUT PDWORD OUT PIMAGEHLP_LINE64 v8::base::Line64
 
typedef DWORD64 v8::base::AddrBase
 
typedef DWORD v8::base::th32ProcessID
 
typedef LPMODULEENTRY32W v8::base::lpme
 

Enumerations

enum  v8::base::OutputMode { v8::base::UNKNOWN , v8::base::CONSOLE , v8::base::ODS }
 

Functions

static bool v8::base::HasConsole ()
 
static void v8::base::VPrintHelper (FILE *stream, const char *format, va_list args)
 
static size_t v8::base::GetPageSize ()
 
static void * v8::base::RandomizedVirtualAlloc (size_t size, int action, int protection)
 
typedef v8::base::BOOL (__stdcall *DLL_FUNC_TYPE(SymInitialize))(IN HANDLE hProcess
 
typedef v8::base::DWORD (__stdcall *DLL_FUNC_TYPE(SymGetOptions))(VOID)
 
typedef v8::base::DWORD (__stdcall *DLL_FUNC_TYPE(SymSetOptions))(IN DWORD SymOptions)
 
typedef v8::base::BOOL (__stdcall *DLL_FUNC_TYPE(SymGetSearchPath))(IN HANDLE hProcess
 
typedef v8::base::DWORD64 (__stdcall *DLL_FUNC_TYPE(SymLoadModule64))(IN HANDLE hProcess
 
typedef v8::base::BOOL (__stdcall *DLL_FUNC_TYPE(StackWalk64))(DWORD MachineType
 
typedef v8::base::BOOL (__stdcall *DLL_FUNC_TYPE(SymGetSymFromAddr64))(IN HANDLE hProcess
 
typedef v8::base::BOOL (__stdcall *DLL_FUNC_TYPE(SymGetLineFromAddr64))(IN HANDLE hProcess
 
typedef v8::base::PVOID (__stdcall *DLL_FUNC_TYPE(SymFunctionTableAccess64))(HANDLE hProcess
 
typedef v8::base::DWORD64 (__stdcall *DLL_FUNC_TYPE(SymGetModuleBase64))(HANDLE hProcess
 
typedef v8::base::HANDLE (__stdcall *DLL_FUNC_TYPE(CreateToolhelp32Snapshot))(DWORD dwFlags
 
typedef v8::base::BOOL (__stdcall *DLL_FUNC_TYPE(Module32FirstW))(HANDLE hSnapshot
 
typedef v8::base::BOOL (__stdcall *DLL_FUNC_TYPE(Module32NextW))(HANDLE hSnapshot
 
static bool v8::base::LoadDbgHelpAndTlHelp32 ()
 
static std::vector< OS::SharedLibraryAddress > v8::base::LoadSymbols (HANDLE process_handle)
 
static unsigned int __stdcall v8::base::ThreadEntry (void *arg)
 

Variables

bool v8::base::anonymous_namespace{platform-win32.cc}::g_hard_abort = false
 
static OutputMode v8::base::output_mode = UNKNOWN
 
static LazyInstance< RandomNumberGenerator >::type v8::base::platform_random_number_generator = LAZY_INSTANCE_INITIALIZER
 
static const HANDLE v8::base::kNoThread = INVALID_HANDLE_VALUE
 

Macro Definition Documentation

◆ DBGHELP_FUNCTION_LIST

#define DBGHELP_FUNCTION_LIST (   V)
Value:
V(SymInitialize) \
V(SymGetOptions) \
V(SymSetOptions) \
V(SymGetSearchPath) \
V(SymLoadModule64) \
V(StackWalk64) \
V(SymGetSymFromAddr64) \
V(SymGetLineFromAddr64) \
V(SymFunctionTableAccess64) \
V(SymGetModuleBase64)
#define V(NAME, Name, id)
Definition: execution.h:170

Definition at line 918 of file platform-win32.cc.

◆ DEF_DLL_FUNCTION

#define DEF_DLL_FUNCTION (   name)    DLL_FUNC_TYPE(name) DLL_FUNC_VAR(name) = NULL;

Definition at line 1012 of file platform-win32.cc.

◆ DLL_FUNC_LOADED

#define DLL_FUNC_LOADED (   name)    (DLL_FUNC_VAR(name) != NULL) &&

◆ DLL_FUNC_TYPE

#define DLL_FUNC_TYPE (   name)    _##name##_

Definition at line 938 of file platform-win32.cc.

◆ DLL_FUNC_VAR

#define DLL_FUNC_VAR (   name)    _##name

Definition at line 939 of file platform-win32.cc.

◆ IN

#define IN

Definition at line 946 of file platform-win32.cc.

◆ LOAD_DLL_FUNC [1/2]

#define LOAD_DLL_FUNC (   name)
Value:
reinterpret_cast<DLL_FUNC_TYPE(name)>(GetProcAddress(module, #name));
enable harmony numeric enable harmony object literal extensions Optimize object Array DOM strings and string trace pretenuring decisions of HAllocate instructions Enables optimizations which favor memory size over execution speed maximum source size in bytes considered for a single inlining maximum cumulative number of AST nodes considered for inlining trace the tracking of allocation sites deoptimize every n garbage collections perform array bounds checks elimination analyze liveness of environment slots and zap dead values flushes the cache of optimized code for closures on every GC allow uint32 values on optimize frames if they are used only in safe operations track concurrent recompilation artificial compilation delay in ms do not emit check maps for constant values that have a leaf deoptimize the optimized code if the layout of the maps changes enable context specialization in TurboFan execution budget before interrupt is triggered max percentage of megamorphic generic ICs to allow optimization enable use of SAHF instruction if enable use of VFP3 instructions if available enable use of NEON instructions if enable use of SDIV and UDIV instructions if enable use of MLS instructions if enable loading bit constant by means of movw movt instruction enable unaligned accesses for enable use of d16 d31 registers on ARM this requires VFP3 force all emitted branches to be in long enable alignment of csp to bytes on platforms which prefer the register to always be expose gc extension under the specified name show built in functions in stack traces use random jit cookie to mask large constants minimum length for automatic enable preparsing CPU profiler sampling interval in microseconds trace out of bounds accesses to external arrays default size of stack region v8 is allowed to maximum length of function source code printed in a stack trace min size of a semi the new space consists of two semi spaces print one trace line following each garbage collection do not print trace line after scavenger collection print cumulative GC statistics in name
#define DLL_FUNC_VAR(name)

◆ LOAD_DLL_FUNC [2/2]

#define LOAD_DLL_FUNC (   name)
Value:
reinterpret_cast<DLL_FUNC_TYPE(name)>(GetProcAddress(module, #name));

◆ TLHELP32_FUNCTION_LIST

#define TLHELP32_FUNCTION_LIST (   V)
Value:
V(CreateToolhelp32Snapshot) \
V(Module32FirstW) \
V(Module32NextW)

Definition at line 931 of file platform-win32.cc.

◆ VOID

#define VOID   void

Definition at line 949 of file platform-win32.cc.