tree: 17a01292fa7a40158739f2c09f1f1752cce0d1d2
  1. builtins/
  2. codegen/
  3. compiler/
  4. heap/
  5. interpreter/
  6. objects/
  7. parsing/
  8. regexp/
  9. runtime/
  10. sandbox/
  11. security/
  12. snapshot/
  13. torque/
  14. viewer/
  15. wasm/
  16. api.md
  17. become-committer.md
  18. benchmarks.md
  19. blink-layout-tests.md
  20. build-gn.md
  21. build.md
  22. builtin-functions.md
  23. committer-responsibility.md
  24. compile-arm64.md
  25. contribute.md
  26. cross-compile-arm.md
  27. cross-compile-ios.md
  28. d8.md
  29. debug-arm.md
  30. design-review-guidelines.md
  31. embed.md
  32. evaluate-code-coverage.md
  33. feature-launch-process.md
  34. flake-bisect.md
  35. gdb-jit.md
  36. gdb.md
  37. i18n.md
  38. ide-setup.md
  39. index.md
  40. inspector.md
  41. javascript-overview.md
  42. linux-perf.md
  43. memory-leaks.md
  44. merge-patch.md
  45. node-integration.md
  46. official-support.md
  47. overview.md
  48. OWNERS
  49. ports.md
  50. profile-chromium.md
  51. profile.md
  52. rcs.md
  53. README.md
  54. release-process.md
  55. respectful-code.md
  56. source-code.md
  57. stack-trace-api.md
  58. test.md
  59. trace.md
  60. triage-issues.md
  61. untrusted-code-mitigations.md
  62. version-numbers.md
  63. wasm-shipping-checklist.md
  64. webassembly-opcode.md
docs/README.md

V8 Internals Documentation

This directory contains deep-dive documentation into V8 internals, generated from source code analysis. For general documentation, see v8.dev/docs.

Table of Contents

General

Heap and Memory

  • Heap Overview: General overview of V8's paged heap and object layout.
  • Garbage Collection: Overview of V8's generational GC.
  • Marking and Sweeping: Deep dive into Major GC phases.
  • Roots: How V8 manages root objects and static roots.
  • Handles: V8's mechanism for safe heap object references (Indirect vs Direct).
  • Heap Compaction: How V8 resolves memory fragmentation in the Old Generation.
  • Pointer Compression: Technique to reduce memory footprint on 64-bit architectures.
  • Pointer Tagging: How V8 encodes type information in pointers (Smis vs HeapObjects).
  • Zone Allocator: Region-based memory manager for fast allocation and batch deallocation.

Object Model

Sandbox

  • Architecture: V8's in-process sandbox to protect memory outside of it.

Torque

Builtins

  • Architecture: How V8 implements standard library and runtime helpers (Torque, CSA, C++, ASM).
  • Torque Tutorial: Introduction to writing Torque builtins.

Code Generation

RegExp

WebAssembly

  • Architecture: V8's WebAssembly implementation, including Liftoff and Turboshaft tiers.

Snapshots

  • Architecture: V8's snapshot and serializer system for fast startup.

Execution - Runtime

Compiler

Sparkplug

Maglev

TurboFan

Turboshaft

Common

Parsing