 |
V8
latest master commit
V8 is Google's open source JavaScript engine
|
Go to the documentation of this file.
5 #ifndef V8_V8_PLATFORM_H_
6 #define V8_V8_PLATFORM_H_
47 virtual ~Task() =
default;
49 virtual void Run() = 0;
61 virtual void Run(
double deadline_in_seconds) = 0;
76 virtual void PostTask(std::unique_ptr<Task> task) = 0;
93 double delay_in_seconds) = 0;
104 double delay_in_seconds) {}
114 virtual void PostIdleTask(std::unique_ptr<IdleTask> task) = 0;
181 virtual void Join() = 0;
187 virtual void Cancel() = 0;
242 #if !defined(V8_USE_PERFETTO)
251 static uint8_t no = 0;
264 char phase,
const uint8_t* category_enabled_flag,
const char* name,
265 const char* scope, uint64_t
id, uint64_t bind_id, int32_t num_args,
266 const char** arg_names,
const uint8_t* arg_types,
267 const uint64_t* arg_values,
268 std::unique_ptr<ConvertableToTraceFormat>* arg_convertables,
269 unsigned int flags) {
273 char phase,
const uint8_t* category_enabled_flag,
const char* name,
274 const char* scope, uint64_t
id, uint64_t bind_id, int32_t num_args,
275 const char** arg_names,
const uint8_t* arg_types,
276 const uint64_t* arg_values,
277 std::unique_ptr<ConvertableToTraceFormat>* arg_convertables,
278 unsigned int flags, int64_t timestamp) {
287 const char* name, uint64_t handle) {}
288 #endif // !defined(V8_USE_PERFETTO)
352 virtual void*
AllocatePages(
void* address,
size_t length,
size_t alignment,
358 virtual bool FreePages(
void* address,
size_t length) = 0;
364 size_t new_length) = 0;
467 double delay_in_seconds) = 0;
528 TaskPriority priority, std::unique_ptr<JobTask> job_task) {
577 #endif // V8_V8_PLATFORM_H_
virtual void SetRandomMmapSeed(int64_t seed)=0
virtual bool ShouldYield()=0
virtual void Run(JobDelegate *delegate)=0
virtual ~JobHandle()=default
virtual ~TracingController()=default
virtual void PostNonNestableDelayedTask(std::unique_ptr< Task > task, double delay_in_seconds)
virtual ~TaskRunner()=default
virtual void PostDelayedTask(std::unique_ptr< Task > task, double delay_in_seconds)=0
virtual bool SetPermissions(void *address, size_t length, Permission permissions)=0
virtual ~JobTask()=default
virtual bool ReleasePages(void *address, size_t length, size_t new_length)=0
virtual size_t CommitPageSize()=0
virtual void NotifyConcurrencyIncrease()=0
virtual void * AllocatePages(void *address, size_t length, size_t alignment, Permission permissions)=0
virtual void PostIdleTask(std::unique_ptr< IdleTask > task)=0
TaskRunner & operator=(const TaskRunner &)=delete
virtual ~TraceStateObserver()=default
virtual bool IsRunning()=0
virtual uint64_t AddTraceEvent(char phase, const uint8_t *category_enabled_flag, const char *name, const char *scope, uint64_t id, uint64_t bind_id, int32_t num_args, const char **arg_names, const uint8_t *arg_types, const uint64_t *arg_values, std::unique_ptr< ConvertableToTraceFormat > *arg_convertables, unsigned int flags)
virtual void NotifyConcurrencyIncrease()=0
virtual bool NonNestableDelayedTasksEnabled() const
virtual void OnTraceDisabled()=0
virtual void * GetRandomMmapAddr()=0
virtual bool NonNestableTasksEnabled() const
virtual void PostTask(std::unique_ptr< Task > task)=0
virtual void OnTraceEnabled()=0
virtual ~PageAllocator()=default
virtual ~IdleTask()=default
virtual bool IdleTasksEnabled()=0
virtual void AddTraceStateObserver(TraceStateObserver *)
virtual void PostNonNestableTask(std::unique_ptr< Task > task)
virtual void RemoveTraceStateObserver(TraceStateObserver *)
virtual size_t GetMaxConcurrency() const =0
virtual size_t AllocatePageSize()=0
virtual bool DiscardSystemPages(void *address, size_t size)
virtual uint64_t AddTraceEventWithTimestamp(char phase, const uint8_t *category_enabled_flag, const char *name, const char *scope, uint64_t id, uint64_t bind_id, int32_t num_args, const char **arg_names, const uint8_t *arg_types, const uint64_t *arg_values, std::unique_ptr< ConvertableToTraceFormat > *arg_convertables, unsigned int flags, int64_t timestamp)
virtual const uint8_t * GetCategoryGroupEnabled(const char *name)
virtual bool FreePages(void *address, size_t length)=0
virtual void UpdateTraceEventDuration(const uint8_t *category_enabled_flag, const char *name, uint64_t handle)
virtual void Run(double deadline_in_seconds)=0