0
Files
src/gin
Marja Hölttä ed20fd4849 [compile hints] Enable testing both compile hints modes simultaneously
The two possible feature implementations are "follow the magic
comment always" and "follow the magic comment only when
producing the code cache".

This CL allows selecting the mode via a runtime enabled feature.

Drive-by fix 1: There was an unimplemented code path related to
modules and setting the runtime enabled flag. Fixed it in this CL.

Drive-by fix 2: module_record.cc was passing the params wrong when
calling V8CodeCache::GetCompileOptions.

Bug: 42203853
Change-Id: I4ad956bf2b257fac1e152d04add89340e773c412
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5953340
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Marja Hölttä <marja@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1379626}
2024-11-07 12:41:00 +00:00
..

Gin - Lightweight bindings for V8

This directory contains Gin, a set of utilities to make working with V8 easier.

Here are some of the key bits:

  • converter.h: Templatized JS ↔ C++ conversion routines for many common C++ types. You can define your own by specializing Converter.

  • function_template.h: Create JavaScript functions that dispatch to any C++ function, member function pointer, or base::RepeatingCallback.

  • object_template_builder.h: A handy utility for creation of v8::ObjectTemplate.

  • wrappable.h: Base class for C++ classes that want to be owned by the V8 GC. Wrappable objects are automatically deleted when GC discovers that nothing in the V8 heap refers to them. This is also an easy way to expose C++ objects to JavaScript.

  • runner.h: Create script contexts and run code in them.

  • module_runner_delegate.h: A delegate for runner that implements a subset of the AMD module specification. Also see modules/ with some example modules.