Move handles-related files to src/handles

Bug: v8:9247
Change-Id: I0023200c54fa6499ae4e2cf5e4c89407cc35f187
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624218
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Reviewed-by: Michael Stanton <mvstanton@chromium.org>
Commit-Queue: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#61762}
diff --git a/BUILD.gn b/BUILD.gn
index e8604cc..aafcdf3 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -2259,11 +2259,13 @@
     "src/flags.cc",
     "src/flags.h",
     "src/function-kind.h",
-    "src/global-handles.cc",
-    "src/global-handles.h",
-    "src/handles-inl.h",
-    "src/handles.cc",
-    "src/handles.h",
+    "src/handles/global-handles.cc",
+    "src/handles/global-handles.h",
+    "src/handles/handles-inl.h",
+    "src/handles/handles.cc",
+    "src/handles/handles.h",
+    "src/handles/maybe-handles-inl.h",
+    "src/handles/maybe-handles.h",
     "src/hash-seed-inl.h",
     "src/heap-symbols.h",
     "src/heap/array-buffer-collector.cc",
@@ -2427,8 +2429,6 @@
     "src/logging/log-utils.h",
     "src/logging/log.cc",
     "src/logging/log.h",
-    "src/maybe-handles-inl.h",
-    "src/maybe-handles.h",
     "src/memcopy.cc",
     "src/memcopy.h",
     "src/numbers/bignum-dtoa.cc",
diff --git a/src/allocation-site-scopes.h b/src/allocation-site-scopes.h
index b6bc644..898dcf0 100644
--- a/src/allocation-site-scopes.h
+++ b/src/allocation-site-scopes.h
@@ -5,7 +5,7 @@
 #ifndef V8_ALLOCATION_SITE_SCOPES_H_
 #define V8_ALLOCATION_SITE_SCOPES_H_
 
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects.h"
 #include "src/objects/allocation-site.h"
 #include "src/objects/map.h"
diff --git a/src/api/api-inl.h b/src/api/api-inl.h
index c7e22d9..202c097 100644
--- a/src/api/api-inl.h
+++ b/src/api/api-inl.h
@@ -6,7 +6,7 @@
 #define V8_API_API_INL_H_
 
 #include "src/api/api.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 #include "src/objects/foreign-inl.h"
 #include "src/objects/stack-frame-info.h"
diff --git a/src/api/api-natives.h b/src/api/api-natives.h
index de5c46c..a7b5c8a 100644
--- a/src/api/api-natives.h
+++ b/src/api/api-natives.h
@@ -7,8 +7,8 @@
 
 #include "include/v8.h"
 #include "src/base/macros.h"
-#include "src/handles.h"
-#include "src/maybe-handles.h"
+#include "src/handles/handles.h"
+#include "src/handles/maybe-handles.h"
 #include "src/objects.h"
 #include "src/objects/property-details.h"
 
diff --git a/src/api/api.cc b/src/api/api.cc
index b94accd..54931f9 100644
--- a/src/api/api.cc
+++ b/src/api/api.cc
@@ -45,8 +45,8 @@
 #include "src/execution/runtime-profiler.h"
 #include "src/execution/simulator.h"
 #include "src/execution/vm-state-inl.h"
-#include "src/global-handles.h"
 #include "src/globals.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/embedder-tracing.h"
 #include "src/heap/heap-inl.h"
 #include "src/init/bootstrapper.h"
diff --git a/src/asmjs/asm-js.cc b/src/asmjs/asm-js.cc
index 5bf65e8..05e0a3c 100644
--- a/src/asmjs/asm-js.cc
+++ b/src/asmjs/asm-js.cc
@@ -15,7 +15,7 @@
 #include "src/execution/execution.h"
 #include "src/execution/isolate.h"
 #include "src/execution/message-template.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/heap/factory.h"
 #include "src/logging/counters.h"
 #include "src/objects-inl.h"
diff --git a/src/builtins/builtins-array.cc b/src/builtins/builtins-array.cc
index 2eb665c..63daad5 100644
--- a/src/builtins/builtins-array.cc
+++ b/src/builtins/builtins-array.cc
@@ -8,7 +8,7 @@
 #include "src/contexts.h"
 #include "src/debug/debug.h"
 #include "src/execution/isolate.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/logging/counters.h"
 #include "src/objects-inl.h"
 #include "src/objects/elements-inl.h"
diff --git a/src/builtins/builtins-arraybuffer.cc b/src/builtins/builtins-arraybuffer.cc
index 49280ca..e893991 100644
--- a/src/builtins/builtins-arraybuffer.cc
+++ b/src/builtins/builtins-arraybuffer.cc
@@ -4,9 +4,9 @@
 
 #include "src/builtins/builtins-utils-inl.h"
 #include "src/builtins/builtins.h"
+#include "src/handles/maybe-handles-inl.h"
 #include "src/heap/heap-inl.h"  // For ToBoolean. TODO(jkummerow): Drop.
 #include "src/logging/counters.h"
-#include "src/maybe-handles-inl.h"
 #include "src/numbers/conversions.h"
 #include "src/objects-inl.h"
 #include "src/objects/js-array-buffer-inl.h"
diff --git a/src/builtins/builtins-call.cc b/src/builtins/builtins-call.cc
index 379fe0f..355965b 100644
--- a/src/builtins/builtins-call.cc
+++ b/src/builtins/builtins-call.cc
@@ -5,7 +5,7 @@
 #include "src/builtins/builtins-utils.h"
 #include "src/builtins/builtins.h"
 #include "src/execution/isolate.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 
 namespace v8 {
diff --git a/src/builtins/builtins-typed-array-gen.cc b/src/builtins/builtins-typed-array-gen.cc
index ee1d1ad..41494ac 100644
--- a/src/builtins/builtins-typed-array-gen.cc
+++ b/src/builtins/builtins-typed-array-gen.cc
@@ -8,7 +8,7 @@
 #include "src/builtins/builtins-utils-gen.h"
 #include "src/builtins/builtins.h"
 #include "src/builtins/growable-fixed-array-gen.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/heap/factory-inl.h"
 #include "torque-generated/builtins-typed-array-createtypedarray-gen-tq.h"
 
diff --git a/src/builtins/constants-table-builder.h b/src/builtins/constants-table-builder.h
index 53cf2b4..271e303 100644
--- a/src/builtins/constants-table-builder.h
+++ b/src/builtins/constants-table-builder.h
@@ -7,7 +7,7 @@
 
 #include "src/allocation.h"
 #include "src/base/macros.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/identity-map.h"
 
 namespace v8 {
diff --git a/src/builtins/setup-builtins-internal.cc b/src/builtins/setup-builtins-internal.cc
index 1fda39d..668ac0a 100644
--- a/src/builtins/setup-builtins-internal.cc
+++ b/src/builtins/setup-builtins-internal.cc
@@ -10,7 +10,7 @@
 #include "src/codegen/macro-assembler.h"
 #include "src/compiler/code-assembler.h"
 #include "src/execution/isolate.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/heap/heap-inl.h"  // For MemoryAllocator::code_range.
 #include "src/interpreter/bytecodes.h"
 #include "src/interpreter/interpreter-generator.h"
diff --git a/src/codegen/assembler.h b/src/codegen/assembler.h
index bd3b78c..06dce53 100644
--- a/src/codegen/assembler.h
+++ b/src/codegen/assembler.h
@@ -45,7 +45,7 @@
 #include "src/external-reference.h"
 #include "src/flags.h"
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects.h"
 
 namespace v8 {
diff --git a/src/codegen/code-reference.cc b/src/codegen/code-reference.cc
index 3e88428..014f013 100644
--- a/src/codegen/code-reference.cc
+++ b/src/codegen/code-reference.cc
@@ -6,7 +6,7 @@
 
 #include "src/codegen/code-desc.h"
 #include "src/globals.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 #include "src/wasm/wasm-code-manager.h"
 
diff --git a/src/codegen/code-reference.h b/src/codegen/code-reference.h
index e4d3721..4326cf0 100644
--- a/src/codegen/code-reference.h
+++ b/src/codegen/code-reference.h
@@ -5,7 +5,7 @@
 #ifndef V8_CODEGEN_CODE_REFERENCE_H_
 #define V8_CODEGEN_CODE_REFERENCE_H_
 
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects/code.h"
 
 namespace v8 {
diff --git a/src/codegen/optimized-compilation-info.h b/src/codegen/optimized-compilation-info.h
index e48928b..b8ea2c9 100644
--- a/src/codegen/optimized-compilation-info.h
+++ b/src/codegen/optimized-compilation-info.h
@@ -11,7 +11,7 @@
 #include "src/codegen/source-position-table.h"
 #include "src/execution/frames.h"
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects.h"
 #include "src/utils.h"
 #include "src/vector.h"
diff --git a/src/codegen/source-position.h b/src/codegen/source-position.h
index 6f593a8..a0a25eb 100644
--- a/src/codegen/source-position.h
+++ b/src/codegen/source-position.h
@@ -9,7 +9,7 @@
 
 #include "src/flags.h"
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/utils.h"
 
 namespace v8 {
diff --git a/src/codegen/string-constants.h b/src/codegen/string-constants.h
index d41c367..8043c60 100644
--- a/src/codegen/string-constants.h
+++ b/src/codegen/string-constants.h
@@ -5,7 +5,7 @@
 #ifndef V8_CODEGEN_STRING_CONSTANTS_H_
 #define V8_CODEGEN_STRING_CONSTANTS_H_
 
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects/string.h"
 #include "src/zone/zone.h"
 
diff --git a/src/codegen/unoptimized-compilation-info.h b/src/codegen/unoptimized-compilation-info.h
index 58f5333..dd66d4a 100644
--- a/src/codegen/unoptimized-compilation-info.h
+++ b/src/codegen/unoptimized-compilation-info.h
@@ -10,7 +10,7 @@
 #include "src/codegen/source-position-table.h"
 #include "src/feedback-vector.h"
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects.h"
 #include "src/utils.h"
 
diff --git a/src/compiler-dispatcher/compiler-dispatcher.cc b/src/compiler-dispatcher/compiler-dispatcher.cc
index 10e71f4..221bed3 100644
--- a/src/compiler-dispatcher/compiler-dispatcher.cc
+++ b/src/compiler-dispatcher/compiler-dispatcher.cc
@@ -10,7 +10,7 @@
 #include "src/cancelable-task.h"
 #include "src/codegen/compiler.h"
 #include "src/flags.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/objects-inl.h"
 #include "src/parsing/parse-info.h"
 #include "src/parsing/parser.h"
diff --git a/src/compiler-dispatcher/compiler-dispatcher.h b/src/compiler-dispatcher/compiler-dispatcher.h
index 0bfbe9d..96fa3f9 100644
--- a/src/compiler-dispatcher/compiler-dispatcher.h
+++ b/src/compiler-dispatcher/compiler-dispatcher.h
@@ -18,8 +18,8 @@
 #include "src/base/platform/mutex.h"
 #include "src/base/platform/semaphore.h"
 #include "src/globals.h"
+#include "src/handles/maybe-handles.h"
 #include "src/identity-map.h"
-#include "src/maybe-handles.h"
 #include "testing/gtest/include/gtest/gtest_prod.h"  // nogncheck
 
 namespace v8 {
diff --git a/src/compiler/access-builder.cc b/src/compiler/access-builder.cc
index 3034790..b0f0689 100644
--- a/src/compiler/access-builder.cc
+++ b/src/compiler/access-builder.cc
@@ -7,7 +7,7 @@
 #include "src/compiler/type-cache.h"
 #include "src/contexts.h"
 #include "src/execution/frames.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/heap/heap.h"
 #include "src/objects-inl.h"
 #include "src/objects/arguments.h"
diff --git a/src/compiler/bytecode-analysis.h b/src/compiler/bytecode-analysis.h
index 44efede..5c6cd0c 100644
--- a/src/compiler/bytecode-analysis.h
+++ b/src/compiler/bytecode-analysis.h
@@ -8,7 +8,7 @@
 #include "src/base/hashmap.h"
 #include "src/bit-vector.h"
 #include "src/compiler/bytecode-liveness-map.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/interpreter/bytecode-register.h"
 #include "src/utils.h"
 #include "src/zone/zone-containers.h"
diff --git a/src/compiler/bytecode-graph-builder.h b/src/compiler/bytecode-graph-builder.h
index a8962dd..814d136 100644
--- a/src/compiler/bytecode-graph-builder.h
+++ b/src/compiler/bytecode-graph-builder.h
@@ -7,7 +7,7 @@
 
 #include "src/compiler/js-operator.h"
 #include "src/compiler/js-type-hint-lowering.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/utils.h"
 
 namespace v8 {
diff --git a/src/compiler/common-operator.cc b/src/compiler/common-operator.cc
index c8cc988..45e558f 100644
--- a/src/compiler/common-operator.cc
+++ b/src/compiler/common-operator.cc
@@ -9,7 +9,7 @@
 #include "src/compiler/node.h"
 #include "src/compiler/opcodes.h"
 #include "src/compiler/operator.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/zone/zone.h"
 
 namespace v8 {
diff --git a/src/compiler/compilation-dependencies.cc b/src/compiler/compilation-dependencies.cc
index 2a52aa3..c79caf3 100644
--- a/src/compiler/compilation-dependencies.cc
+++ b/src/compiler/compilation-dependencies.cc
@@ -4,7 +4,7 @@
 
 #include "src/compiler/compilation-dependencies.h"
 
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 #include "src/objects/allocation-site-inl.h"
 #include "src/zone/zone-handle-set.h"
diff --git a/src/compiler/effect-control-linearizer.h b/src/compiler/effect-control-linearizer.h
index be9e36f..e6de796 100644
--- a/src/compiler/effect-control-linearizer.h
+++ b/src/compiler/effect-control-linearizer.h
@@ -7,7 +7,7 @@
 
 #include <vector>
 
-#include "src/handles.h"
+#include "src/handles/handles.h"
 
 namespace v8 {
 namespace internal {
diff --git a/src/compiler/escape-analysis.cc b/src/compiler/escape-analysis.cc
index a113a39..dc0db4d 100644
--- a/src/compiler/escape-analysis.cc
+++ b/src/compiler/escape-analysis.cc
@@ -8,7 +8,7 @@
 #include "src/compiler/node-matchers.h"
 #include "src/compiler/operator-properties.h"
 #include "src/compiler/simplified-operator.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/init/bootstrapper.h"
 #include "src/objects/map-inl.h"
 
diff --git a/src/compiler/frame-states.cc b/src/compiler/frame-states.cc
index 717630a..11212dc 100644
--- a/src/compiler/frame-states.cc
+++ b/src/compiler/frame-states.cc
@@ -9,7 +9,7 @@
 #include "src/compiler/graph.h"
 #include "src/compiler/js-graph.h"
 #include "src/compiler/node.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 
 namespace v8 {
diff --git a/src/compiler/frame-states.h b/src/compiler/frame-states.h
index 4c0549e..570adb0 100644
--- a/src/compiler/frame-states.h
+++ b/src/compiler/frame-states.h
@@ -6,7 +6,7 @@
 #define V8_COMPILER_FRAME_STATES_H_
 
 #include "src/builtins/builtins.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects/shared-function-info.h"
 #include "src/utils.h"
 
diff --git a/src/compiler/graph-visualizer.h b/src/compiler/graph-visualizer.h
index 0e1ed78..089c9aa 100644
--- a/src/compiler/graph-visualizer.h
+++ b/src/compiler/graph-visualizer.h
@@ -11,7 +11,7 @@
 #include <memory>
 
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 
 namespace v8 {
 namespace internal {
diff --git a/src/compiler/js-context-specialization.h b/src/compiler/js-context-specialization.h
index 2c58476..14a72a7 100644
--- a/src/compiler/js-context-specialization.h
+++ b/src/compiler/js-context-specialization.h
@@ -6,7 +6,7 @@
 #define V8_COMPILER_JS_CONTEXT_SPECIALIZATION_H_
 
 #include "src/compiler/graph-reducer.h"
-#include "src/maybe-handles.h"
+#include "src/handles/maybe-handles.h"
 
 namespace v8 {
 namespace internal {
diff --git a/src/compiler/js-heap-broker.h b/src/compiler/js-heap-broker.h
index 71e0947..1047455 100644
--- a/src/compiler/js-heap-broker.h
+++ b/src/compiler/js-heap-broker.h
@@ -11,7 +11,7 @@
 #include "src/feedback-vector.h"
 #include "src/function-kind.h"
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects.h"
 #include "src/objects/instance-type.h"
 #include "src/ostreams.h"
diff --git a/src/compiler/js-operator.cc b/src/compiler/js-operator.cc
index 2280084..658e5c4 100644
--- a/src/compiler/js-operator.cc
+++ b/src/compiler/js-operator.cc
@@ -9,7 +9,7 @@
 #include "src/base/lazy-instance.h"
 #include "src/compiler/opcodes.h"
 #include "src/compiler/operator.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 #include "src/vector-slot-pair.h"
 
diff --git a/src/compiler/js-operator.h b/src/compiler/js-operator.h
index 9557e41..e4bbe48 100644
--- a/src/compiler/js-operator.h
+++ b/src/compiler/js-operator.h
@@ -7,7 +7,7 @@
 
 #include "src/base/compiler-specific.h"
 #include "src/globals.h"
-#include "src/maybe-handles.h"
+#include "src/handles/maybe-handles.h"
 #include "src/runtime/runtime.h"
 #include "src/type-hints.h"
 #include "src/vector-slot-pair.h"
diff --git a/src/compiler/js-type-hint-lowering.h b/src/compiler/js-type-hint-lowering.h
index 778aabc..7164a0b 100644
--- a/src/compiler/js-type-hint-lowering.h
+++ b/src/compiler/js-type-hint-lowering.h
@@ -8,7 +8,7 @@
 #include "src/base/flags.h"
 #include "src/compiler/graph-reducer.h"
 #include "src/deoptimizer/deoptimize-reason.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 
 namespace v8 {
 namespace internal {
diff --git a/src/compiler/load-elimination.h b/src/compiler/load-elimination.h
index 64dca23..1a641dc 100644
--- a/src/compiler/load-elimination.h
+++ b/src/compiler/load-elimination.h
@@ -9,7 +9,7 @@
 #include "src/codegen/machine-type.h"
 #include "src/compiler/graph-reducer.h"
 #include "src/globals.h"
-#include "src/maybe-handles.h"
+#include "src/handles/maybe-handles.h"
 #include "src/zone/zone-handle-set.h"
 
 namespace v8 {
diff --git a/src/compiler/node-properties.cc b/src/compiler/node-properties.cc
index ca4775f..c726197 100644
--- a/src/compiler/node-properties.cc
+++ b/src/compiler/node-properties.cc
@@ -12,7 +12,7 @@
 #include "src/compiler/operator-properties.h"
 #include "src/compiler/simplified-operator.h"
 #include "src/compiler/verifier.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 
 namespace v8 {
diff --git a/src/compiler/operator.h b/src/compiler/operator.h
index db1b16c..23b8a95 100644
--- a/src/compiler/operator.h
+++ b/src/compiler/operator.h
@@ -11,7 +11,7 @@
 #include "src/base/flags.h"
 #include "src/base/functional.h"
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/zone/zone.h"
 
 namespace v8 {
diff --git a/src/compiler/property-access-builder.h b/src/compiler/property-access-builder.h
index 53e8ade..f3c071a 100644
--- a/src/compiler/property-access-builder.h
+++ b/src/compiler/property-access-builder.h
@@ -9,7 +9,7 @@
 
 #include "src/codegen/machine-type.h"
 #include "src/compiler/js-heap-broker.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects/map.h"
 #include "src/zone/zone-containers.h"
 
diff --git a/src/compiler/serializer-for-background-compilation.cc b/src/compiler/serializer-for-background-compilation.cc
index 623fa2f..fb80584 100644
--- a/src/compiler/serializer-for-background-compilation.cc
+++ b/src/compiler/serializer-for-background-compilation.cc
@@ -7,7 +7,7 @@
 #include <sstream>
 
 #include "src/compiler/js-heap-broker.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/interpreter/bytecode-array-iterator.h"
 #include "src/objects/code.h"
 #include "src/objects/shared-function-info-inl.h"
diff --git a/src/compiler/serializer-for-background-compilation.h b/src/compiler/serializer-for-background-compilation.h
index bbf76d3..549d538 100644
--- a/src/compiler/serializer-for-background-compilation.h
+++ b/src/compiler/serializer-for-background-compilation.h
@@ -7,8 +7,8 @@
 
 #include "src/base/optional.h"
 #include "src/compiler/access-info.h"
-#include "src/handles.h"
-#include "src/maybe-handles.h"
+#include "src/handles/handles.h"
+#include "src/handles/maybe-handles.h"
 #include "src/utils.h"
 #include "src/zone/zone-containers.h"
 
diff --git a/src/compiler/simplified-operator.cc b/src/compiler/simplified-operator.cc
index 815c8f5..590501d 100644
--- a/src/compiler/simplified-operator.cc
+++ b/src/compiler/simplified-operator.cc
@@ -8,7 +8,7 @@
 #include "src/compiler/opcodes.h"
 #include "src/compiler/operator.h"
 #include "src/compiler/types.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 #include "src/objects/map.h"
 #include "src/objects/name.h"
diff --git a/src/compiler/simplified-operator.h b/src/compiler/simplified-operator.h
index 93863cb..9ceee6f 100644
--- a/src/compiler/simplified-operator.h
+++ b/src/compiler/simplified-operator.h
@@ -14,8 +14,8 @@
 #include "src/compiler/write-barrier-kind.h"
 #include "src/deoptimizer/deoptimize-reason.h"
 #include "src/globals.h"
-#include "src/handles.h"
-#include "src/maybe-handles.h"
+#include "src/handles/handles.h"
+#include "src/handles/maybe-handles.h"
 #include "src/objects.h"
 #include "src/type-hints.h"
 #include "src/vector-slot-pair.h"
diff --git a/src/compiler/types.cc b/src/compiler/types.cc
index 1ec94f8..aa6da57 100644
--- a/src/compiler/types.cc
+++ b/src/compiler/types.cc
@@ -6,7 +6,7 @@
 
 #include "src/compiler/types.h"
 
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 #include "src/ostreams.h"
 
diff --git a/src/compiler/types.h b/src/compiler/types.h
index 5c3d4a3..aa0bc8f 100644
--- a/src/compiler/types.h
+++ b/src/compiler/types.h
@@ -8,7 +8,7 @@
 #include "src/base/compiler-specific.h"
 #include "src/compiler/js-heap-broker.h"
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/numbers/conversions.h"
 #include "src/objects.h"
 #include "src/ostreams.h"
diff --git a/src/debug/debug-coverage.h b/src/debug/debug-coverage.h
index 2512794..29c3963 100644
--- a/src/debug/debug-coverage.h
+++ b/src/debug/debug-coverage.h
@@ -8,7 +8,7 @@
 #include <vector>
 
 #include "src/debug/debug-interface.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects.h"
 
 namespace v8 {
diff --git a/src/debug/debug-property-iterator.h b/src/debug/debug-property-iterator.h
index 889efbf..822260a 100644
--- a/src/debug/debug-property-iterator.h
+++ b/src/debug/debug-property-iterator.h
@@ -7,7 +7,7 @@
 
 #include "src/debug/debug-interface.h"
 #include "src/execution/isolate.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects/prototype.h"
 
 #include "include/v8.h"
diff --git a/src/debug/debug-type-profile.h b/src/debug/debug-type-profile.h
index 37f2b659..f1ac494 100644
--- a/src/debug/debug-type-profile.h
+++ b/src/debug/debug-type-profile.h
@@ -8,7 +8,7 @@
 #include <vector>
 
 #include "src/debug/debug-interface.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects.h"
 
 namespace v8 {
diff --git a/src/debug/debug.cc b/src/debug/debug.cc
index 66565e2..302f4ae 100644
--- a/src/debug/debug.cc
+++ b/src/debug/debug.cc
@@ -22,8 +22,8 @@
 #include "src/execution/frames-inl.h"
 #include "src/execution/isolate-inl.h"
 #include "src/execution/message-template.h"
-#include "src/global-handles.h"
 #include "src/globals.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/heap-inl.h"  // For NextDebuggingId.
 #include "src/init/bootstrapper.h"
 #include "src/interpreter/bytecode-array-accessor.h"
diff --git a/src/debug/debug.h b/src/debug/debug.h
index 15578ca..9b69b8e 100644
--- a/src/debug/debug.h
+++ b/src/debug/debug.h
@@ -13,7 +13,7 @@
 #include "src/execution/frames.h"
 #include "src/execution/isolate.h"
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects/debug-objects.h"
 
 namespace v8 {
diff --git a/src/debug/liveedit.h b/src/debug/liveedit.h
index 0daba0d..51cada9 100644
--- a/src/debug/liveedit.h
+++ b/src/debug/liveedit.h
@@ -8,7 +8,7 @@
 #include <vector>
 
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 
 namespace v8 {
 namespace debug {
diff --git a/src/deoptimizer/deoptimizer.cc b/src/deoptimizer/deoptimizer.cc
index 49663e5..e9fabd3 100644
--- a/src/deoptimizer/deoptimizer.cc
+++ b/src/deoptimizer/deoptimizer.cc
@@ -14,7 +14,7 @@
 #include "src/codegen/register-configuration.h"
 #include "src/diagnostics/disasm.h"
 #include "src/execution/frames-inl.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/heap-inl.h"
 #include "src/interpreter/interpreter.h"
 #include "src/logging/counters.h"
diff --git a/src/diagnostics/gdb-jit.cc b/src/diagnostics/gdb-jit.cc
index e4716b4..a6a5976 100644
--- a/src/diagnostics/gdb-jit.cc
+++ b/src/diagnostics/gdb-jit.cc
@@ -12,7 +12,7 @@
 #include "src/base/platform/platform.h"
 #include "src/execution/frames-inl.h"
 #include "src/execution/frames.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/init/bootstrapper.h"
 #include "src/objects.h"
 #include "src/ostreams.h"
diff --git a/src/execution/arguments-inl.h b/src/execution/arguments-inl.h
index 420ba34..291a918 100644
--- a/src/execution/arguments-inl.h
+++ b/src/execution/arguments-inl.h
@@ -7,7 +7,7 @@
 
 #include "src/execution/arguments.h"
 
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"  // TODO(jkummerow): Just smi-inl.h.
 
 namespace v8 {
diff --git a/src/execution/arguments.h b/src/execution/arguments.h
index 7cc6257..3dc8c07 100644
--- a/src/execution/arguments.h
+++ b/src/execution/arguments.h
@@ -6,7 +6,7 @@
 #define V8_EXECUTION_ARGUMENTS_H_
 
 #include "src/allocation.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/logging/counters.h"
 #include "src/objects.h"
 #include "src/objects/slots.h"
diff --git a/src/execution/frames.h b/src/execution/frames.h
index ba78f9df..3a38b6b 100644
--- a/src/execution/frames.h
+++ b/src/execution/frames.h
@@ -6,7 +6,7 @@
 #define V8_EXECUTION_FRAMES_H_
 
 #include "src/codegen/safepoint-table.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects.h"
 #include "src/objects/code.h"
 
diff --git a/src/execution/futex-emulation.cc b/src/execution/futex-emulation.cc
index 478691e..82b16ca 100644
--- a/src/execution/futex-emulation.cc
+++ b/src/execution/futex-emulation.cc
@@ -9,7 +9,7 @@
 #include "src/base/macros.h"
 #include "src/base/platform/time.h"
 #include "src/execution/isolate.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/numbers/conversions.h"
 #include "src/objects-inl.h"
 #include "src/objects/js-array-buffer-inl.h"
diff --git a/src/execution/isolate.h b/src/execution/isolate.h
index c6c94c9..1bf1663 100644
--- a/src/execution/isolate.h
+++ b/src/execution/isolate.h
@@ -25,7 +25,7 @@
 #include "src/execution/isolate-data.h"
 #include "src/execution/messages.h"
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/heap/factory.h"
 #include "src/heap/heap.h"
 #include "src/heap/read-only-heap.h"
diff --git a/src/execution/messages.h b/src/execution/messages.h
index 6cc807d..2719578 100644
--- a/src/execution/messages.h
+++ b/src/execution/messages.h
@@ -13,7 +13,7 @@
 #include <memory>
 
 #include "src/execution/message-template.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 
 namespace v8 {
 namespace internal {
diff --git a/src/execution/microtask-queue.cc b/src/execution/microtask-queue.cc
index f20ad16..75e1580 100644
--- a/src/execution/microtask-queue.cc
+++ b/src/execution/microtask-queue.cc
@@ -10,7 +10,7 @@
 #include "src/api/api-inl.h"
 #include "src/base/logging.h"
 #include "src/execution/isolate.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects/microtask-inl.h"
 #include "src/roots-inl.h"
 #include "src/tracing/trace-event.h"
diff --git a/src/execution/runtime-profiler.cc b/src/execution/runtime-profiler.cc
index b8a8ff8..bdcd7e2 100644
--- a/src/execution/runtime-profiler.cc
+++ b/src/execution/runtime-profiler.cc
@@ -10,7 +10,7 @@
 #include "src/codegen/compiler.h"
 #include "src/execution/execution.h"
 #include "src/execution/frames-inl.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/init/bootstrapper.h"
 #include "src/interpreter/interpreter.h"
 #include "src/tracing/trace-event.h"
diff --git a/src/extensions/externalize-string-extension.cc b/src/extensions/externalize-string-extension.cc
index 4968ce8..d0f25c8 100644
--- a/src/extensions/externalize-string-extension.cc
+++ b/src/extensions/externalize-string-extension.cc
@@ -6,7 +6,7 @@
 
 #include "src/api/api-inl.h"
 #include "src/execution/isolate.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects-inl.h"
 
 namespace v8 {
diff --git a/src/handles/OWNERS b/src/handles/OWNERS
new file mode 100644
index 0000000..57fcdd4
--- /dev/null
+++ b/src/handles/OWNERS
@@ -0,0 +1,4 @@
+ishell@chromium.org
+jkummerow@chromium.org
+mlippautz@chromium.org
+yangguo@chromium.org
diff --git a/src/global-handles.cc b/src/handles/global-handles.cc
similarity index 98%
rename from src/global-handles.cc
rename to src/handles/global-handles.cc
index ab61728..98b015b 100644
--- a/src/global-handles.cc
+++ b/src/handles/global-handles.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 
 #include "src/api/api-inl.h"
 #include "src/base/compiler-specific.h"
@@ -396,12 +396,8 @@
 
   // State and flag accessors.
 
-  State state() const {
-    return NodeState::decode(flags_);
-  }
-  void set_state(State state) {
-    flags_ = NodeState::update(flags_, state);
-  }
+  State state() const { return NodeState::decode(flags_); }
+  void set_state(State state) { flags_ = NodeState::update(flags_, state); }
 
   bool is_in_young_list() const { return IsInYoungList::decode(flags_); }
   void set_in_young_list(bool v) { flags_ = IsInYoungList::update(flags_, v); }
@@ -578,13 +574,9 @@
 
  private:
   // Fields that are not used for managing node memory.
-  void ClearImplFields() {
-    weak_callback_ = nullptr;
-  }
+  void ClearImplFields() { weak_callback_ = nullptr; }
 
-  void CheckImplFieldsAreCleared() {
-    DCHECK_EQ(nullptr, weak_callback_);
-  }
+  void CheckImplFieldsAreCleared() { DCHECK_EQ(nullptr, weak_callback_); }
 
   // This stores three flags (independent, partially_dependent and
   // in_young_list) and a State.
@@ -1287,7 +1279,6 @@
   PrintF("  # total      = %d\n", total);
 }
 
-
 void GlobalHandles::Print() {
   PrintF("Global handles:\n");
   for (Node* node : *regular_nodes_) {
diff --git a/src/global-handles.h b/src/handles/global-handles.h
similarity index 98%
rename from src/global-handles.h
rename to src/handles/global-handles.h
index 8d5bae1..9c7bfd2 100644
--- a/src/global-handles.h
+++ b/src/handles/global-handles.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef V8_GLOBAL_HANDLES_H_
-#define V8_GLOBAL_HANDLES_H_
+#ifndef V8_HANDLES_GLOBAL_HANDLES_H_
+#define V8_HANDLES_GLOBAL_HANDLES_H_
 
 #include <type_traits>
 #include <utility>
@@ -12,7 +12,7 @@
 #include "include/v8.h"
 #include "include/v8-profiler.h"
 
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects.h"
 #include "src/utils.h"
 
@@ -309,4 +309,4 @@
 }  // namespace internal
 }  // namespace v8
 
-#endif  // V8_GLOBAL_HANDLES_H_
+#endif  // V8_HANDLES_GLOBAL_HANDLES_H_
diff --git a/src/handles-inl.h b/src/handles/handles-inl.h
similarity index 97%
rename from src/handles-inl.h
rename to src/handles/handles-inl.h
index a235db9..5adb5fc 100644
--- a/src/handles-inl.h
+++ b/src/handles/handles-inl.h
@@ -2,11 +2,11 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef V8_HANDLES_INL_H_
-#define V8_HANDLES_INL_H_
+#ifndef V8_HANDLES_HANDLES_INL_H_
+#define V8_HANDLES_HANDLES_INL_H_
 
 #include "src/execution/isolate.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/sanitizer/msan.h"
 
 namespace v8 {
@@ -175,4 +175,4 @@
 }  // namespace internal
 }  // namespace v8
 
-#endif  // V8_HANDLES_INL_H_
+#endif  // V8_HANDLES_HANDLES_INL_H_
diff --git a/src/handles.cc b/src/handles/handles.cc
similarity index 98%
rename from src/handles.cc
rename to src/handles/handles.cc
index ee2c8eb..de04d4b 100644
--- a/src/handles.cc
+++ b/src/handles/handles.cc
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "src/handles.h"
+#include "src/handles/handles.h"
 
 #include "src/address-map.h"
 #include "src/api/api.h"
 #include "src/base/logging.h"
+#include "src/handles/maybe-handles.h"
 #include "src/identity-map.h"
-#include "src/maybe-handles.h"
 #include "src/objects-inl.h"
 #include "src/roots-inl.h"
 
diff --git a/src/handles.h b/src/handles/handles.h
similarity index 98%
rename from src/handles.h
rename to src/handles/handles.h
index 7764059..85f4c45 100644
--- a/src/handles.h
+++ b/src/handles/handles.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef V8_HANDLES_H_
-#define V8_HANDLES_H_
+#ifndef V8_HANDLES_HANDLES_H_
+#define V8_HANDLES_HANDLES_H_
 
 #include <type_traits>
 
@@ -364,4 +364,4 @@
 }  // namespace internal
 }  // namespace v8
 
-#endif  // V8_HANDLES_H_
+#endif  // V8_HANDLES_HANDLES_H_
diff --git a/src/maybe-handles-inl.h b/src/handles/maybe-handles-inl.h
similarity index 92%
rename from src/maybe-handles-inl.h
rename to src/handles/maybe-handles-inl.h
index 8e0e7e3..b56780e 100644
--- a/src/maybe-handles-inl.h
+++ b/src/handles/maybe-handles-inl.h
@@ -2,12 +2,12 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef V8_MAYBE_HANDLES_INL_H_
-#define V8_MAYBE_HANDLES_INL_H_
+#ifndef V8_HANDLES_MAYBE_HANDLES_INL_H_
+#define V8_HANDLES_MAYBE_HANDLES_INL_H_
 
-#include "src/maybe-handles.h"
+#include "src/handles/maybe-handles.h"
 
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects/maybe-object-inl.h"
 
 namespace v8 {
@@ -83,4 +83,4 @@
 }  // namespace internal
 }  // namespace v8
 
-#endif  // V8_MAYBE_HANDLES_INL_H_
+#endif  // V8_HANDLES_MAYBE_HANDLES_INL_H_
diff --git a/src/maybe-handles.h b/src/handles/maybe-handles.h
similarity index 96%
rename from src/maybe-handles.h
rename to src/handles/maybe-handles.h
index 8a68c85..1edd1a2 100644
--- a/src/maybe-handles.h
+++ b/src/handles/maybe-handles.h
@@ -2,12 +2,12 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef V8_MAYBE_HANDLES_H_
-#define V8_MAYBE_HANDLES_H_
+#ifndef V8_HANDLES_MAYBE_HANDLES_H_
+#define V8_HANDLES_MAYBE_HANDLES_H_
 
 #include <type_traits>
 
-#include "src/handles.h"
+#include "src/handles/handles.h"
 
 namespace v8 {
 namespace internal {
@@ -118,4 +118,4 @@
 }  // namespace internal
 }  // namespace v8
 
-#endif  // V8_MAYBE_HANDLES_H_
+#endif  // V8_HANDLES_MAYBE_HANDLES_H_
diff --git a/src/heap/factory-inl.h b/src/heap/factory-inl.h
index 93a6eb2..9ec0c5ec 100644
--- a/src/heap/factory-inl.h
+++ b/src/heap/factory-inl.h
@@ -10,7 +10,7 @@
 // Clients of this interface shouldn't depend on lots of heap internals.
 // Do not include anything from src/heap here!
 #include "src/execution/isolate-inl.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 #include "src/objects/feedback-cell.h"
 #include "src/objects/heap-number-inl.h"
diff --git a/src/heap/factory.h b/src/heap/factory.h
index 753f24e..c77b4a2 100644
--- a/src/heap/factory.h
+++ b/src/heap/factory.h
@@ -11,9 +11,9 @@
 #include "src/execution/messages.h"
 #include "src/function-kind.h"
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
+#include "src/handles/maybe-handles.h"
 #include "src/heap/heap.h"
-#include "src/maybe-handles.h"
 #include "src/objects/code.h"
 #include "src/objects/dictionary.h"
 #include "src/objects/js-array.h"
diff --git a/src/heap/heap.cc b/src/heap/heap.cc
index b32c4a0..6826707 100644
--- a/src/heap/heap.cc
+++ b/src/heap/heap.cc
@@ -22,7 +22,7 @@
 #include "src/execution/runtime-profiler.h"
 #include "src/execution/vm-state-inl.h"
 #include "src/feedback-vector.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/array-buffer-collector.h"
 #include "src/heap/array-buffer-tracker-inl.h"
 #include "src/heap/barrier.h"
diff --git a/src/heap/mark-compact.cc b/src/heap/mark-compact.cc
index 750e7cc..0b31b7b 100644
--- a/src/heap/mark-compact.cc
+++ b/src/heap/mark-compact.cc
@@ -13,7 +13,7 @@
 #include "src/execution/execution.h"
 #include "src/execution/frames-inl.h"
 #include "src/execution/vm-state-inl.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/array-buffer-collector.h"
 #include "src/heap/array-buffer-tracker-inl.h"
 #include "src/heap/gc-tracer.h"
diff --git a/src/ic/handler-configuration-inl.h b/src/ic/handler-configuration-inl.h
index 3625027..3e7a446 100644
--- a/src/ic/handler-configuration-inl.h
+++ b/src/ic/handler-configuration-inl.h
@@ -7,7 +7,7 @@
 
 #include "src/ic/handler-configuration.h"
 
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 #include "src/objects/data-handler-inl.h"
 #include "src/objects/field-index-inl.h"
diff --git a/src/ic/handler-configuration.h b/src/ic/handler-configuration.h
index a09b0e9..84b4bd4 100644
--- a/src/ic/handler-configuration.h
+++ b/src/ic/handler-configuration.h
@@ -6,7 +6,7 @@
 #define V8_IC_HANDLER_CONFIGURATION_H_
 
 #include "src/globals.h"
-#include "src/maybe-handles.h"
+#include "src/handles/maybe-handles.h"
 #include "src/objects.h"
 #include "src/objects/data-handler.h"
 #include "src/objects/elements-kind.h"
diff --git a/src/ic/ic-inl.h b/src/ic/ic-inl.h
index d3d6496..846e3c6 100644
--- a/src/ic/ic-inl.h
+++ b/src/ic/ic-inl.h
@@ -10,7 +10,7 @@
 #include "src/codegen/assembler-inl.h"
 #include "src/debug/debug.h"
 #include "src/execution/frames-inl.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects/prototype.h"
 
 namespace v8 {
diff --git a/src/ic/ic.cc b/src/ic/ic.cc
index 7849d99..c39783e 100644
--- a/src/ic/ic.cc
+++ b/src/ic/ic.cc
@@ -14,7 +14,7 @@
 #include "src/execution/execution.h"
 #include "src/execution/frames-inl.h"
 #include "src/execution/isolate-inl.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/ic/call-optimization.h"
 #include "src/ic/handler-configuration-inl.h"
 #include "src/ic/ic-inl.h"
diff --git a/src/identity-map.h b/src/identity-map.h
index fe254be..48d6eb6 100644
--- a/src/identity-map.h
+++ b/src/identity-map.h
@@ -6,7 +6,7 @@
 #define V8_IDENTITY_MAP_H_
 
 #include "src/base/functional.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects/heap-object.h"
 
 namespace v8 {
diff --git a/src/interpreter/bytecode-array-accessor.h b/src/interpreter/bytecode-array-accessor.h
index db33b6f..f9536b0 100644
--- a/src/interpreter/bytecode-array-accessor.h
+++ b/src/interpreter/bytecode-array-accessor.h
@@ -6,7 +6,7 @@
 #define V8_INTERPRETER_BYTECODE_ARRAY_ACCESSOR_H_
 
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/interpreter/bytecode-register.h"
 #include "src/interpreter/bytecodes.h"
 #include "src/objects.h"
diff --git a/src/keys.cc b/src/keys.cc
index 1d727b9..7e54048 100644
--- a/src/keys.cc
+++ b/src/keys.cc
@@ -6,7 +6,7 @@
 
 #include "src/api/api-arguments-inl.h"
 #include "src/execution/isolate-inl.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/heap/factory.h"
 #include "src/identity-map.h"
 #include "src/objects-inl.h"
diff --git a/src/logging/log.cc b/src/logging/log.cc
index 026b5dc..1fa6220 100644
--- a/src/logging/log.cc
+++ b/src/logging/log.cc
@@ -18,7 +18,7 @@
 #include "src/execution/isolate.h"
 #include "src/execution/runtime-profiler.h"
 #include "src/execution/vm-state-inl.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/init/bootstrapper.h"
 #include "src/interpreter/bytecodes.h"
 #include "src/interpreter/interpreter.h"
diff --git a/src/numbers/conversions.cc b/src/numbers/conversions.cc
index 0abc386..da50fc3 100644
--- a/src/numbers/conversions.cc
+++ b/src/numbers/conversions.cc
@@ -10,7 +10,7 @@
 
 #include "src/allocation.h"
 #include "src/assert-scope.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/heap/factory.h"
 #include "src/numbers/dtoa.h"
 #include "src/numbers/strtod.h"
diff --git a/src/objects-inl.h b/src/objects-inl.h
index 1342185..afd4825 100644
--- a/src/objects-inl.h
+++ b/src/objects-inl.h
@@ -16,7 +16,7 @@
 
 #include "src/base/bits.h"
 #include "src/builtins/builtins.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/heap/factory.h"
 #include "src/heap/heap-write-barrier-inl.h"
 #include "src/keys.h"
diff --git a/src/objects/debug-objects.cc b/src/objects/debug-objects.cc
index 760edbf..2d89db0 100644
--- a/src/objects/debug-objects.cc
+++ b/src/objects/debug-objects.cc
@@ -5,7 +5,7 @@
 #include "src/objects/debug-objects.h"
 
 #include "src/debug/debug-evaluate.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects/debug-objects-inl.h"
 #include "src/ostreams.h"
 
diff --git a/src/objects/descriptor-array-inl.h b/src/objects/descriptor-array-inl.h
index 2954e95..4159f5b 100644
--- a/src/objects/descriptor-array-inl.h
+++ b/src/objects/descriptor-array-inl.h
@@ -8,9 +8,9 @@
 #include "src/objects/descriptor-array.h"
 
 #include "src/execution/isolate.h"
+#include "src/handles/maybe-handles-inl.h"
 #include "src/heap/heap-write-barrier.h"
 #include "src/heap/heap.h"
-#include "src/maybe-handles-inl.h"
 #include "src/objects/field-type.h"
 #include "src/objects/heap-object-inl.h"
 #include "src/objects/lookup-cache-inl.h"
diff --git a/src/objects/elements-inl.h b/src/objects/elements-inl.h
index 1bf44e6..25db22b 100644
--- a/src/objects/elements-inl.h
+++ b/src/objects/elements-inl.h
@@ -7,7 +7,7 @@
 
 #include "src/objects/elements.h"
 
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 
 namespace v8 {
diff --git a/src/objects/embedder-data-array.h b/src/objects/embedder-data-array.h
index 3fdf91c..28d43c6 100644
--- a/src/objects/embedder-data-array.h
+++ b/src/objects/embedder-data-array.h
@@ -6,7 +6,7 @@
 #define V8_OBJECTS_EMBEDDER_DATA_ARRAY_H_
 
 #include "src/globals.h"
-#include "src/maybe-handles.h"
+#include "src/handles/maybe-handles.h"
 #include "src/objects/heap-object.h"
 #include "torque-generated/field-offsets-tq.h"
 
diff --git a/src/objects/field-type.cc b/src/objects/field-type.cc
index 4dfec05..97073f9 100644
--- a/src/objects/field-type.cc
+++ b/src/objects/field-type.cc
@@ -4,7 +4,7 @@
 
 #include "src/objects/field-type.h"
 
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 #include "src/objects/smi.h"
 #include "src/ostreams.h"
diff --git a/src/objects/fixed-array-inl.h b/src/objects/fixed-array-inl.h
index 02d94c5..8ad9403 100644
--- a/src/objects/fixed-array-inl.h
+++ b/src/objects/fixed-array-inl.h
@@ -7,7 +7,7 @@
 
 #include "src/objects/fixed-array.h"
 
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/heap/heap-write-barrier-inl.h"
 #include "src/numbers/conversions.h"
 #include "src/objects-inl.h"
diff --git a/src/objects/fixed-array.h b/src/objects/fixed-array.h
index 8d4e146..0216767 100644
--- a/src/objects/fixed-array.h
+++ b/src/objects/fixed-array.h
@@ -5,7 +5,7 @@
 #ifndef V8_OBJECTS_FIXED_ARRAY_H_
 #define V8_OBJECTS_FIXED_ARRAY_H_
 
-#include "src/maybe-handles.h"
+#include "src/handles/maybe-handles.h"
 #include "src/objects/instance-type.h"
 #include "src/objects/smi.h"
 #include "torque-generated/field-offsets-tq.h"
diff --git a/src/objects/intl-objects.cc b/src/objects/intl-objects.cc
index 153f195..1b66c8e 100644
--- a/src/objects/intl-objects.cc
+++ b/src/objects/intl-objects.cc
@@ -15,7 +15,7 @@
 
 #include "src/api/api-inl.h"
 #include "src/execution/isolate.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/factory.h"
 #include "src/objects-inl.h"
 #include "src/objects/js-collator-inl.h"
diff --git a/src/objects/js-locale.cc b/src/objects/js-locale.cc
index d15df33..c1e6f20 100644
--- a/src/objects/js-locale.cc
+++ b/src/objects/js-locale.cc
@@ -15,7 +15,7 @@
 
 #include "src/api/api.h"
 #include "src/execution/isolate.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/factory.h"
 #include "src/objects-inl.h"
 #include "src/objects/intl-objects.h"
diff --git a/src/objects/js-locale.h b/src/objects/js-locale.h
index 9505b49..ffd6f53 100644
--- a/src/objects/js-locale.h
+++ b/src/objects/js-locale.h
@@ -10,7 +10,7 @@
 #define V8_OBJECTS_JS_LOCALE_H_
 
 #include "src/execution/isolate.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/factory.h"
 #include "src/objects.h"
 #include "src/objects/managed.h"
diff --git a/src/objects/js-objects.cc b/src/objects/js-objects.cc
index f60a76e..be72b58 100644
--- a/src/objects/js-objects.cc
+++ b/src/objects/js-objects.cc
@@ -9,13 +9,13 @@
 #include "src/date/date.h"
 #include "src/execution/arguments.h"
 #include "src/execution/isolate.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
+#include "src/handles/maybe-handles.h"
 #include "src/heap/heap-inl.h"
 #include "src/ic/ic.h"
 #include "src/init/bootstrapper.h"
 #include "src/logging/counters.h"
 #include "src/logging/log.h"
-#include "src/maybe-handles.h"
 #include "src/objects-inl.h"
 #include "src/objects/allocation-site-inl.h"
 #include "src/objects/api-callbacks.h"
diff --git a/src/objects/layout-descriptor-inl.h b/src/objects/layout-descriptor-inl.h
index e53f81d..bbe008d 100644
--- a/src/objects/layout-descriptor-inl.h
+++ b/src/objects/layout-descriptor-inl.h
@@ -7,7 +7,7 @@
 
 #include "src/objects/layout-descriptor.h"
 
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 #include "src/objects/descriptor-array-inl.h"
 #include "src/objects/smi.h"
diff --git a/src/objects/layout-descriptor.cc b/src/objects/layout-descriptor.cc
index af5090c..266a45a 100644
--- a/src/objects/layout-descriptor.cc
+++ b/src/objects/layout-descriptor.cc
@@ -7,7 +7,7 @@
 #include <sstream>
 
 #include "src/base/bits.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 
 namespace v8 {
diff --git a/src/objects/lookup-inl.h b/src/objects/lookup-inl.h
index c36885b..8de434b 100644
--- a/src/objects/lookup-inl.h
+++ b/src/objects/lookup-inl.h
@@ -7,7 +7,7 @@
 
 #include "src/objects/lookup.h"
 
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/heap/factory-inl.h"
 #include "src/objects-inl.h"
 #include "src/objects/api-callbacks.h"
diff --git a/src/objects/managed.h b/src/objects/managed.h
index cf80122..b12127b 100644
--- a/src/objects/managed.h
+++ b/src/objects/managed.h
@@ -7,8 +7,8 @@
 
 #include <memory>
 #include "src/execution/isolate.h"
-#include "src/global-handles.h"
-#include "src/handles.h"
+#include "src/handles/global-handles.h"
+#include "src/handles/handles.h"
 #include "src/heap/factory.h"
 #include "src/objects/foreign.h"
 
diff --git a/src/objects/map-updater.cc b/src/objects/map-updater.cc
index 77d960e..1332e7b 100644
--- a/src/objects/map-updater.cc
+++ b/src/objects/map-updater.cc
@@ -5,7 +5,7 @@
 #include "src/objects/map-updater.h"
 
 #include "src/execution/isolate.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects-inl.h"
 #include "src/objects.h"
 #include "src/objects/field-type.h"
diff --git a/src/objects/map-updater.h b/src/objects/map-updater.h
index 4ad2c7c..f84b17c 100644
--- a/src/objects/map-updater.h
+++ b/src/objects/map-updater.h
@@ -6,7 +6,7 @@
 #define V8_OBJECTS_MAP_UPDATER_H_
 
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects/elements-kind.h"
 #include "src/objects/field-type.h"
 #include "src/objects/map.h"
diff --git a/src/objects/map.cc b/src/objects/map.cc
index 3996916..fb3bb5e 100644
--- a/src/objects/map.cc
+++ b/src/objects/map.cc
@@ -6,12 +6,12 @@
 
 #include "src/execution/frames.h"
 #include "src/execution/isolate.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
+#include "src/handles/maybe-handles.h"
 #include "src/heap/heap-write-barrier-inl.h"
 #include "src/init/bootstrapper.h"
 #include "src/logging/counters-inl.h"
 #include "src/logging/log.h"
-#include "src/maybe-handles.h"
 #include "src/objects/descriptor-array.h"
 #include "src/objects/field-type.h"
 #include "src/objects/js-objects.h"
diff --git a/src/objects/oddball-inl.h b/src/objects/oddball-inl.h
index 5084212..1263fd9 100644
--- a/src/objects/oddball-inl.h
+++ b/src/objects/oddball-inl.h
@@ -7,7 +7,7 @@
 
 #include "src/objects/oddball.h"
 
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/heap/heap-write-barrier-inl.h"
 #include "src/objects-inl.h"
 #include "src/objects/string-inl.h"
diff --git a/src/objects/property-descriptor.h b/src/objects/property-descriptor.h
index e4f9f10..22fb1d6 100644
--- a/src/objects/property-descriptor.h
+++ b/src/objects/property-descriptor.h
@@ -5,7 +5,7 @@
 #ifndef V8_OBJECTS_PROPERTY_DESCRIPTOR_H_
 #define V8_OBJECTS_PROPERTY_DESCRIPTOR_H_
 
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects/property-details.h"
 
 namespace v8 {
diff --git a/src/objects/property.cc b/src/objects/property.cc
index a45f776..2d9af24 100644
--- a/src/objects/property.cc
+++ b/src/objects/property.cc
@@ -4,7 +4,7 @@
 
 #include "src/objects/property.h"
 
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 #include "src/objects/field-type.h"
 #include "src/objects/name-inl.h"
diff --git a/src/objects/property.h b/src/objects/property.h
index 3b0b948..c9db0fc 100644
--- a/src/objects/property.h
+++ b/src/objects/property.h
@@ -8,8 +8,8 @@
 #include <iosfwd>
 
 #include "src/globals.h"
-#include "src/handles.h"
-#include "src/maybe-handles.h"
+#include "src/handles/handles.h"
+#include "src/handles/maybe-handles.h"
 #include "src/objects.h"
 #include "src/objects/name.h"
 #include "src/objects/property-details.h"
diff --git a/src/objects/prototype-inl.h b/src/objects/prototype-inl.h
index e5caf50..05cd84d 100644
--- a/src/objects/prototype-inl.h
+++ b/src/objects/prototype-inl.h
@@ -7,7 +7,7 @@
 
 #include "src/objects/prototype.h"
 
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects/js-proxy.h"
 #include "src/objects/map-inl.h"
 
diff --git a/src/objects/shared-function-info-inl.h b/src/objects/shared-function-info-inl.h
index 65363cb..e523352 100644
--- a/src/objects/shared-function-info-inl.h
+++ b/src/objects/shared-function-info-inl.h
@@ -8,7 +8,7 @@
 #include "src/objects/shared-function-info.h"
 
 #include "src/feedback-vector-inl.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/heap/heap-write-barrier-inl.h"
 #include "src/objects/debug-objects-inl.h"
 #include "src/objects/scope-info.h"
diff --git a/src/objects/string-inl.h b/src/objects/string-inl.h
index 004f6de..5e50ab9 100644
--- a/src/objects/string-inl.h
+++ b/src/objects/string-inl.h
@@ -7,7 +7,7 @@
 
 #include "src/objects/string.h"
 
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/hash-seed-inl.h"
 #include "src/heap/factory.h"
 #include "src/numbers/conversions-inl.h"
diff --git a/src/objects/string.cc b/src/objects/string.cc
index c5ae73b..673d20e 100644
--- a/src/objects/string.cc
+++ b/src/objects/string.cc
@@ -4,7 +4,7 @@
 
 #include "src/objects/string.h"
 
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/heap/heap-inl.h"  // For LooksValid implementation.
 #include "src/heap/read-only-heap.h"
 #include "src/numbers/conversions.h"
diff --git a/src/parsing/parse-info.h b/src/parsing/parse-info.h
index 9b73760..697d5d3 100644
--- a/src/parsing/parse-info.h
+++ b/src/parsing/parse-info.h
@@ -12,7 +12,7 @@
 #include "include/v8.h"
 #include "src/function-kind.h"
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects/script.h"
 #include "src/parsing/preparse-data.h"
 #include "src/pending-compilation-error-handler.h"
diff --git a/src/parsing/preparse-data.cc b/src/parsing/preparse-data.cc
index 10e5ab4..48a9bb0 100644
--- a/src/parsing/preparse-data.cc
+++ b/src/parsing/preparse-data.cc
@@ -8,7 +8,7 @@
 
 #include "src/ast/scopes.h"
 #include "src/ast/variables.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects-inl.h"
 #include "src/objects/shared-function-info.h"
 #include "src/parsing/parser.h"
diff --git a/src/parsing/preparse-data.h b/src/parsing/preparse-data.h
index fcdc693..a586669 100644
--- a/src/parsing/preparse-data.h
+++ b/src/parsing/preparse-data.h
@@ -6,8 +6,8 @@
 #define V8_PARSING_PREPARSE_DATA_H_
 
 #include "src/globals.h"
-#include "src/handles.h"
-#include "src/maybe-handles.h"
+#include "src/handles/handles.h"
+#include "src/handles/maybe-handles.h"
 #include "src/vector.h"
 #include "src/zone/zone-chunk-list.h"
 #include "src/zone/zone-containers.h"
diff --git a/src/parsing/scanner-character-streams.cc b/src/parsing/scanner-character-streams.cc
index 57b03f1..bb4c307 100644
--- a/src/parsing/scanner-character-streams.cc
+++ b/src/parsing/scanner-character-streams.cc
@@ -9,7 +9,7 @@
 
 #include "include/v8.h"
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/logging/counters.h"
 #include "src/objects-inl.h"
 #include "src/parsing/scanner.h"
diff --git a/src/pending-compilation-error-handler.cc b/src/pending-compilation-error-handler.cc
index e16ab8c..3a1331a 100644
--- a/src/pending-compilation-error-handler.cc
+++ b/src/pending-compilation-error-handler.cc
@@ -8,7 +8,7 @@
 #include "src/debug/debug.h"
 #include "src/execution/isolate.h"
 #include "src/execution/messages.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects-inl.h"
 
 namespace v8 {
diff --git a/src/pending-compilation-error-handler.h b/src/pending-compilation-error-handler.h
index f936fe3..bae332f 100644
--- a/src/pending-compilation-error-handler.h
+++ b/src/pending-compilation-error-handler.h
@@ -10,7 +10,7 @@
 #include "src/base/macros.h"
 #include "src/execution/message-template.h"
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 
 namespace v8 {
 namespace internal {
diff --git a/src/profiler/allocation-tracker.cc b/src/profiler/allocation-tracker.cc
index 74b78e1..20d45c0 100644
--- a/src/profiler/allocation-tracker.cc
+++ b/src/profiler/allocation-tracker.cc
@@ -5,7 +5,7 @@
 #include "src/profiler/allocation-tracker.h"
 
 #include "src/execution/frames-inl.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/objects-inl.h"
 #include "src/profiler/heap-snapshot-generator-inl.h"
 
diff --git a/src/profiler/allocation-tracker.h b/src/profiler/allocation-tracker.h
index 8e2c1e5..946ff1f 100644
--- a/src/profiler/allocation-tracker.h
+++ b/src/profiler/allocation-tracker.h
@@ -10,7 +10,7 @@
 
 #include "include/v8-profiler.h"
 #include "src/base/hashmap.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/vector.h"
 
 namespace v8 {
diff --git a/src/profiler/heap-snapshot-generator.cc b/src/profiler/heap-snapshot-generator.cc
index 3fd7d8c..b308824 100644
--- a/src/profiler/heap-snapshot-generator.cc
+++ b/src/profiler/heap-snapshot-generator.cc
@@ -9,7 +9,7 @@
 #include "src/api/api-inl.h"
 #include "src/codegen/assembler-inl.h"
 #include "src/debug/debug.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/combined-heap.h"
 #include "src/numbers/conversions.h"
 #include "src/objects-body-descriptors.h"
diff --git a/src/profiler/profiler-listener.cc b/src/profiler/profiler-listener.cc
index 51b286d..9cfee6a 100644
--- a/src/profiler/profiler-listener.cc
+++ b/src/profiler/profiler-listener.cc
@@ -7,7 +7,7 @@
 #include "src/codegen/reloc-info.h"
 #include "src/codegen/source-position-table.h"
 #include "src/deoptimizer/deoptimizer.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 #include "src/objects/code-inl.h"
 #include "src/objects/script-inl.h"
diff --git a/src/roots-inl.h b/src/roots-inl.h
index bf51f86..1dbe835 100644
--- a/src/roots-inl.h
+++ b/src/roots-inl.h
@@ -9,7 +9,7 @@
 
 #include "src/execution/isolate.h"
 #include "src/feedback-vector.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/heap/read-only-heap.h"
 #include "src/objects/api-callbacks.h"
 #include "src/objects/descriptor-array.h"
diff --git a/src/runtime/runtime-intl.cc b/src/runtime/runtime-intl.cc
index d887c50..075d714 100644
--- a/src/runtime/runtime-intl.cc
+++ b/src/runtime/runtime-intl.cc
@@ -14,7 +14,7 @@
 #include "src/date/date.h"
 #include "src/execution/arguments-inl.h"
 #include "src/execution/isolate-inl.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/factory.h"
 #include "src/logging/counters.h"
 #include "src/objects/intl-objects.h"
diff --git a/src/runtime/runtime-weak-refs.cc b/src/runtime/runtime-weak-refs.cc
index 3c323f4..85b443e 100644
--- a/src/runtime/runtime-weak-refs.cc
+++ b/src/runtime/runtime-weak-refs.cc
@@ -6,7 +6,7 @@
 #include "src/api/api.h"
 #include "src/execution/arguments-inl.h"
 #include "src/execution/execution.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/logging/counters.h"
 #include "src/objects-inl.h"
 #include "src/objects/js-weak-refs-inl.h"
diff --git a/src/runtime/runtime.cc b/src/runtime/runtime.cc
index bf389f1..1f5fadf 100644
--- a/src/runtime/runtime.cc
+++ b/src/runtime/runtime.cc
@@ -8,7 +8,7 @@
 #include "src/codegen/reloc-info.h"
 #include "src/contexts.h"
 #include "src/execution/isolate.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/heap/heap.h"
 #include "src/objects-inl.h"
 #include "src/runtime/runtime-utils.h"
diff --git a/src/snapshot/read-only-serializer.cc b/src/snapshot/read-only-serializer.cc
index bcedd9b..489b4a2 100644
--- a/src/snapshot/read-only-serializer.cc
+++ b/src/snapshot/read-only-serializer.cc
@@ -6,7 +6,7 @@
 
 #include "src/api/api.h"
 #include "src/diagnostics/code-tracer.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/read-only-heap.h"
 #include "src/objects-inl.h"
 #include "src/objects/slots.h"
diff --git a/src/snapshot/snapshot-source-sink.cc b/src/snapshot/snapshot-source-sink.cc
index ffc6ad0..d8fc20b9 100644
--- a/src/snapshot/snapshot-source-sink.cc
+++ b/src/snapshot/snapshot-source-sink.cc
@@ -6,7 +6,7 @@
 #include "src/snapshot/snapshot-source-sink.h"
 
 #include "src/base/logging.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 
 namespace v8 {
diff --git a/src/snapshot/startup-serializer.cc b/src/snapshot/startup-serializer.cc
index 247cb51..2d3a4eb 100644
--- a/src/snapshot/startup-serializer.cc
+++ b/src/snapshot/startup-serializer.cc
@@ -7,7 +7,7 @@
 #include "src/api/api.h"
 #include "src/contexts.h"
 #include "src/deoptimizer/deoptimizer.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/heap-inl.h"
 #include "src/heap/read-only-heap.h"
 #include "src/objects-inl.h"
diff --git a/src/strings/string-builder-inl.h b/src/strings/string-builder-inl.h
index 82092e8..6752f34 100644
--- a/src/strings/string-builder-inl.h
+++ b/src/strings/string-builder-inl.h
@@ -7,7 +7,7 @@
 
 #include "src/assert-scope.h"
 #include "src/execution/isolate.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/heap/factory.h"
 #include "src/objects.h"
 #include "src/objects/fixed-array.h"
diff --git a/src/strings/string-stream.cc b/src/strings/string-stream.cc
index 93c4d74..362351c 100644
--- a/src/strings/string-stream.cc
+++ b/src/strings/string-stream.cc
@@ -6,7 +6,7 @@
 
 #include <memory>
 
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/logging/log.h"
 #include "src/objects-inl.h"
 #include "src/objects/js-array-inl.h"
diff --git a/src/strings/string-stream.h b/src/strings/string-stream.h
index 5410f9c..3177df9 100644
--- a/src/strings/string-stream.h
+++ b/src/strings/string-stream.h
@@ -7,7 +7,7 @@
 
 #include "src/allocation.h"
 #include "src/base/small-vector.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects/heap-object.h"
 #include "src/vector.h"
 
diff --git a/src/strings/uri.h b/src/strings/uri.h
index 70ba2d8..be84ca2 100644
--- a/src/strings/uri.h
+++ b/src/strings/uri.h
@@ -6,7 +6,7 @@
 #define V8_STRINGS_URI_H_
 
 #include "src/allocation.h"
-#include "src/maybe-handles.h"
+#include "src/handles/maybe-handles.h"
 #include "src/objects.h"
 
 namespace v8 {
diff --git a/src/value-serializer.cc b/src/value-serializer.cc
index 35cd525..f81c051 100644
--- a/src/value-serializer.cc
+++ b/src/value-serializer.cc
@@ -11,9 +11,9 @@
 #include "src/base/logging.h"
 #include "src/execution/isolate.h"
 #include "src/flags.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
+#include "src/handles/maybe-handles-inl.h"
 #include "src/heap/factory.h"
-#include "src/maybe-handles-inl.h"
 #include "src/numbers/conversions.h"
 #include "src/objects-inl.h"
 #include "src/objects/heap-number-inl.h"
diff --git a/src/value-serializer.h b/src/value-serializer.h
index 9b6128d..f3e22dc 100644
--- a/src/value-serializer.h
+++ b/src/value-serializer.h
@@ -12,8 +12,8 @@
 #include "src/base/compiler-specific.h"
 #include "src/base/macros.h"
 #include "src/execution/message-template.h"
+#include "src/handles/maybe-handles.h"
 #include "src/identity-map.h"
-#include "src/maybe-handles.h"
 #include "src/vector.h"
 #include "src/zone/zone.h"
 
diff --git a/src/vector-slot-pair.h b/src/vector-slot-pair.h
index cb99d06..a04c197 100644
--- a/src/vector-slot-pair.h
+++ b/src/vector-slot-pair.h
@@ -6,7 +6,7 @@
 #define V8_VECTOR_SLOT_PAIR_H_
 
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/utils.h"
 
 namespace v8 {
diff --git a/src/wasm/function-body-decoder.cc b/src/wasm/function-body-decoder.cc
index 1e5cb86..5d9a78a 100644
--- a/src/wasm/function-body-decoder.cc
+++ b/src/wasm/function-body-decoder.cc
@@ -5,7 +5,7 @@
 #include "src/wasm/function-body-decoder.h"
 
 #include "src/flags.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects-inl.h"
 #include "src/ostreams.h"
 #include "src/wasm/decoder.h"
diff --git a/src/wasm/graph-builder-interface.cc b/src/wasm/graph-builder-interface.cc
index 81dc1d9..9fe9050 100644
--- a/src/wasm/graph-builder-interface.cc
+++ b/src/wasm/graph-builder-interface.cc
@@ -6,7 +6,7 @@
 
 #include "src/compiler/wasm-compiler.h"
 #include "src/flags.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects-inl.h"
 #include "src/ostreams.h"
 #include "src/wasm/decoder.h"
diff --git a/src/wasm/streaming-decoder.cc b/src/wasm/streaming-decoder.cc
index 28c2520..4ab32a8 100644
--- a/src/wasm/streaming-decoder.cc
+++ b/src/wasm/streaming-decoder.cc
@@ -5,7 +5,7 @@
 #include "src/wasm/streaming-decoder.h"
 
 #include "src/base/template-utils.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects-inl.h"
 #include "src/objects/descriptor-array.h"
 #include "src/objects/dictionary.h"
diff --git a/src/wasm/wasm-code-manager.h b/src/wasm/wasm-code-manager.h
index b0f447a..dbe0a4b 100644
--- a/src/wasm/wasm-code-manager.h
+++ b/src/wasm/wasm-code-manager.h
@@ -17,7 +17,7 @@
 #include "src/base/macros.h"
 #include "src/base/optional.h"
 #include "src/builtins/builtins-definitions.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/trap-handler/trap-handler.h"
 #include "src/vector.h"
 #include "src/wasm/compilation-environment.h"
diff --git a/src/wasm/wasm-features.cc b/src/wasm/wasm-features.cc
index a565f6e..93e7f09 100644
--- a/src/wasm/wasm-features.cc
+++ b/src/wasm/wasm-features.cc
@@ -5,7 +5,7 @@
 #include "src/wasm/wasm-features.h"
 #include "src/execution/isolate.h"
 #include "src/flags.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 
 namespace v8 {
 namespace internal {
diff --git a/src/wasm/wasm-js.cc b/src/wasm/wasm-js.cc
index 8a009d7..7a1f040 100644
--- a/src/wasm/wasm-js.cc
+++ b/src/wasm/wasm-js.cc
@@ -14,7 +14,7 @@
 #include "src/base/overflowing-math.h"
 #include "src/execution/execution.h"
 #include "src/execution/isolate.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/heap/factory.h"
 #include "src/objects-inl.h"
 #include "src/objects/js-promise-inl.h"
diff --git a/src/wasm/wasm-memory.h b/src/wasm/wasm-memory.h
index 244f49d..ede3884 100644
--- a/src/wasm/wasm-memory.h
+++ b/src/wasm/wasm-memory.h
@@ -11,7 +11,7 @@
 
 #include "src/base/platform/mutex.h"
 #include "src/flags.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects/js-array-buffer.h"
 
 namespace v8 {
diff --git a/src/wasm/wasm-module-builder.cc b/src/wasm/wasm-module-builder.cc
index 62cf391..d9cbb2d 100644
--- a/src/wasm/wasm-module-builder.cc
+++ b/src/wasm/wasm-module-builder.cc
@@ -4,7 +4,7 @@
 
 #include "src/codegen/signature.h"
 
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects-inl.h"
 #include "src/v8.h"
 #include "src/zone/zone-containers.h"
diff --git a/src/wasm/wasm-module.h b/src/wasm/wasm-module.h
index 520bc29..e1184c4 100644
--- a/src/wasm/wasm-module.h
+++ b/src/wasm/wasm-module.h
@@ -8,7 +8,7 @@
 #include <memory>
 
 #include "src/globals.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/vector.h"
 #include "src/wasm/signature-map.h"
 #include "src/wasm/wasm-constants.h"
diff --git a/src/wasm/wasm-value.h b/src/wasm/wasm-value.h
index 4201c14..1ae9917 100644
--- a/src/wasm/wasm-value.h
+++ b/src/wasm/wasm-value.h
@@ -6,7 +6,7 @@
 #define V8_WASM_WASM_VALUE_H_
 
 #include "src/boxed-float.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/v8memory.h"
 #include "src/wasm/wasm-opcodes.h"
 #include "src/zone/zone-containers.h"
diff --git a/src/zone/zone-handle-set.h b/src/zone/zone-handle-set.h
index ccf7411..459db50 100644
--- a/src/zone/zone-handle-set.h
+++ b/src/zone/zone-handle-set.h
@@ -5,7 +5,7 @@
 #ifndef V8_ZONE_ZONE_HANDLE_SET_H_
 #define V8_ZONE_ZONE_HANDLE_SET_H_
 
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/zone/zone-containers.h"
 #include "src/zone/zone.h"
 
diff --git a/test/cctest/assembler-helper-arm.h b/test/cctest/assembler-helper-arm.h
index f13ec2e..0585d36 100644
--- a/test/cctest/assembler-helper-arm.h
+++ b/test/cctest/assembler-helper-arm.h
@@ -8,7 +8,7 @@
 #include <functional>
 
 #include "src/execution/simulator.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 
 namespace v8 {
 namespace internal {
diff --git a/test/cctest/compiler/call-tester.h b/test/cctest/compiler/call-tester.h
index 831b4f4..0b7174b 100644
--- a/test/cctest/compiler/call-tester.h
+++ b/test/cctest/compiler/call-tester.h
@@ -6,7 +6,7 @@
 #define V8_CCTEST_COMPILER_CALL_TESTER_H_
 
 #include "src/execution/simulator.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects/code.h"
 #include "test/cctest/compiler/c-signature.h"
 
diff --git a/test/cctest/compiler/code-assembler-tester.h b/test/cctest/compiler/code-assembler-tester.h
index 07cf12a..6814498 100644
--- a/test/cctest/compiler/code-assembler-tester.h
+++ b/test/cctest/compiler/code-assembler-tester.h
@@ -9,7 +9,7 @@
 #include "src/compiler/code-assembler.h"
 #include "src/compiler/raw-machine-assembler.h"
 #include "src/execution/isolate.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "test/cctest/compiler/function-tester.h"
 
 namespace v8 {
diff --git a/test/cctest/compiler/function-tester.cc b/test/cctest/compiler/function-tester.cc
index 6ee890f..3aebed0 100644
--- a/test/cctest/compiler/function-tester.cc
+++ b/test/cctest/compiler/function-tester.cc
@@ -10,7 +10,7 @@
 #include "src/compiler/linkage.h"
 #include "src/compiler/pipeline.h"
 #include "src/execution/execution.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects-inl.h"
 #include "src/parsing/parse-info.h"
 #include "test/cctest/cctest.h"
diff --git a/test/cctest/compiler/function-tester.h b/test/cctest/compiler/function-tester.h
index 557806a..09249f4 100644
--- a/test/cctest/compiler/function-tester.h
+++ b/test/cctest/compiler/function-tester.h
@@ -6,7 +6,7 @@
 #define V8_CCTEST_COMPILER_FUNCTION_TESTER_H_
 
 #include "src/execution/execution.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "test/cctest/cctest.h"
 
 namespace v8 {
diff --git a/test/cctest/compiler/test-run-bytecode-graph-builder.cc b/test/cctest/compiler/test-run-bytecode-graph-builder.cc
index 57645b7..bc1f6c1 100644
--- a/test/cctest/compiler/test-run-bytecode-graph-builder.cc
+++ b/test/cctest/compiler/test-run-bytecode-graph-builder.cc
@@ -9,7 +9,7 @@
 #include "src/compiler/pipeline.h"
 #include "src/debug/debug-interface.h"
 #include "src/execution/execution.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/interpreter/bytecode-array-builder.h"
 #include "src/interpreter/interpreter.h"
 #include "src/objects-inl.h"
diff --git a/test/cctest/heap/test-heap.cc b/test/cctest/heap/test-heap.cc
index 951c249..96f4e79 100644
--- a/test/cctest/heap/test-heap.cc
+++ b/test/cctest/heap/test-heap.cc
@@ -35,7 +35,7 @@
 #include "src/debug/debug.h"
 #include "src/deoptimizer/deoptimizer.h"
 #include "src/execution/execution.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/hash-seed-inl.h"
 #include "src/heap/combined-heap.h"
 #include "src/heap/factory.h"
diff --git a/test/cctest/heap/test-incremental-marking.cc b/test/cctest/heap/test-incremental-marking.cc
index d90c2c2..ee83a31 100644
--- a/test/cctest/heap/test-incremental-marking.cc
+++ b/test/cctest/heap/test-incremental-marking.cc
@@ -16,7 +16,7 @@
 
 #include "src/v8.h"
 
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/incremental-marking.h"
 #include "src/heap/spaces.h"
 #include "src/objects-inl.h"
diff --git a/test/cctest/heap/test-mark-compact.cc b/test/cctest/heap/test-mark-compact.cc
index 9f2f5f9..698dd93 100644
--- a/test/cctest/heap/test-mark-compact.cc
+++ b/test/cctest/heap/test-mark-compact.cc
@@ -39,7 +39,7 @@
 
 #include "src/v8.h"
 
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/mark-compact-inl.h"
 #include "src/heap/mark-compact.h"
 #include "src/objects-inl.h"
diff --git a/test/cctest/interpreter/interpreter-tester.h b/test/cctest/interpreter/interpreter-tester.h
index 72e2d50..e67025a 100644
--- a/test/cctest/interpreter/interpreter-tester.h
+++ b/test/cctest/interpreter/interpreter-tester.h
@@ -9,7 +9,7 @@
 
 #include "src/api/api.h"
 #include "src/execution/execution.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/interpreter/bytecode-array-builder.h"
 #include "src/interpreter/interpreter.h"
 #include "src/objects/feedback-cell.h"
diff --git a/test/cctest/interpreter/test-interpreter.cc b/test/cctest/interpreter/test-interpreter.cc
index 3f701ef..32fcfa5 100644
--- a/test/cctest/interpreter/test-interpreter.cc
+++ b/test/cctest/interpreter/test-interpreter.cc
@@ -10,7 +10,7 @@
 #include "src/base/overflowing-math.h"
 #include "src/codegen/compiler.h"
 #include "src/execution/execution.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/hash-seed-inl.h"
 #include "src/heap/heap-inl.h"
 #include "src/interpreter/bytecode-array-builder.h"
diff --git a/test/cctest/interpreter/test-source-positions.cc b/test/cctest/interpreter/test-source-positions.cc
index 8724072..04a25c9 100644
--- a/test/cctest/interpreter/test-source-positions.cc
+++ b/test/cctest/interpreter/test-source-positions.cc
@@ -7,7 +7,7 @@
 #include "src/api/api-inl.h"
 #include "src/compiler/pipeline.h"
 #include "src/execution/isolate.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/interpreter/bytecode-generator.h"
 #include "src/interpreter/interpreter.h"
 #include "src/objects-inl.h"
diff --git a/test/cctest/parsing/test-parse-decision.cc b/test/cctest/parsing/test-parse-decision.cc
index c5426e4..72a6cf6 100644
--- a/test/cctest/parsing/test-parse-decision.cc
+++ b/test/cctest/parsing/test-parse-decision.cc
@@ -12,7 +12,7 @@
 #include "include/v8.h"
 #include "src/api/api-inl.h"
 #include "src/execution/isolate.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 #include "src/objects/shared-function-info-inl.h"
 #include "src/utils.h"
diff --git a/test/cctest/parsing/test-scanner.cc b/test/cctest/parsing/test-scanner.cc
index df11537..b8cc55a 100644
--- a/test/cctest/parsing/test-scanner.cc
+++ b/test/cctest/parsing/test-scanner.cc
@@ -5,7 +5,7 @@
 // Tests v8::internal::Scanner. Note that presently most unit tests for the
 // Scanner are in cctest/test-parsing.cc, rather than here.
 
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 #include "src/parsing/scanner-character-streams.h"
 #include "src/parsing/scanner.h"
diff --git a/test/cctest/test-api.cc b/test/cctest/test-api.cc
index 2118f34..42b8d6f 100644
--- a/test/cctest/test-api.cc
+++ b/test/cctest/test-api.cc
@@ -49,7 +49,7 @@
 #include "src/execution/vm-state.h"
 #include "src/feedback-vector-inl.h"
 #include "src/feedback-vector.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/heap-inl.h"
 #include "src/heap/incremental-marking.h"
 #include "src/heap/local-allocator.h"
diff --git a/test/cctest/test-date.cc b/test/cctest/test-date.cc
index 58f8d10..77fb345 100644
--- a/test/cctest/test-date.cc
+++ b/test/cctest/test-date.cc
@@ -27,7 +27,7 @@
 
 #include "src/date/date.h"
 #include "src/execution/isolate.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/v8.h"
 #include "test/cctest/cctest.h"
 
diff --git a/test/cctest/test-dictionary.cc b/test/cctest/test-dictionary.cc
index 9fbb1f5..3351d93 100644
--- a/test/cctest/test-dictionary.cc
+++ b/test/cctest/test-dictionary.cc
@@ -31,7 +31,7 @@
 #include "src/builtins/builtins-constructor.h"
 #include "src/debug/debug.h"
 #include "src/execution/execution.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/factory.h"
 #include "src/heap/spaces.h"
 #include "src/objects-inl.h"
diff --git a/test/cctest/test-elements-kind.cc b/test/cctest/test-elements-kind.cc
index 4df466f..c75832e 100644
--- a/test/cctest/test-elements-kind.cc
+++ b/test/cctest/test-elements-kind.cc
@@ -11,7 +11,7 @@
 
 #include "src/codegen/compilation-cache.h"
 #include "src/execution/execution.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/factory.h"
 #include "src/ic/stub-cache.h"
 #include "src/objects-inl.h"
diff --git a/test/cctest/test-factory.cc b/test/cctest/test-factory.cc
index 8407a41..4ed7cb7 100644
--- a/test/cctest/test-factory.cc
+++ b/test/cctest/test-factory.cc
@@ -8,7 +8,7 @@
 
 #include "src/codegen/code-desc.h"
 #include "src/execution/isolate.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "test/cctest/cctest.h"
 
 namespace v8 {
diff --git a/test/cctest/test-feedback-vector.cc b/test/cctest/test-feedback-vector.cc
index 03957d9..a9d78f8 100644
--- a/test/cctest/test-feedback-vector.cc
+++ b/test/cctest/test-feedback-vector.cc
@@ -9,7 +9,7 @@
 #include "src/codegen/macro-assembler.h"
 #include "src/debug/debug.h"
 #include "src/execution/execution.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/factory.h"
 #include "src/objects-inl.h"
 #include "src/objects/feedback-cell-inl.h"
diff --git a/test/cctest/test-field-type-tracking.cc b/test/cctest/test-field-type-tracking.cc
index 72efd48..69dac81 100644
--- a/test/cctest/test-field-type-tracking.cc
+++ b/test/cctest/test-field-type-tracking.cc
@@ -10,7 +10,7 @@
 #include "src/v8.h"
 
 #include "src/execution/execution.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/factory.h"
 #include "src/ic/stub-cache.h"
 #include "src/objects-inl.h"
diff --git a/test/cctest/test-global-handles.cc b/test/cctest/test-global-handles.cc
index 3cf57b0..d76c5ad 100644
--- a/test/cctest/test-global-handles.cc
+++ b/test/cctest/test-global-handles.cc
@@ -27,7 +27,7 @@
 
 #include "src/api/api-inl.h"
 #include "src/execution/isolate.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/factory.h"
 #include "src/heap/heap-inl.h"
 #include "src/objects-inl.h"
diff --git a/test/cctest/test-icache.cc b/test/cctest/test-icache.cc
index 31e40e0..95cc3c7 100644
--- a/test/cctest/test-icache.cc
+++ b/test/cctest/test-icache.cc
@@ -5,7 +5,7 @@
 #include "src/codegen/assembler-inl.h"
 #include "src/codegen/macro-assembler-inl.h"
 #include "src/execution/simulator.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "test/cctest/cctest.h"
 #include "test/common/assembler-tester.h"
 
diff --git a/test/cctest/test-js-weak-refs.cc b/test/cctest/test-js-weak-refs.cc
index d8523c7..393d8fa 100644
--- a/test/cctest/test-js-weak-refs.cc
+++ b/test/cctest/test-js-weak-refs.cc
@@ -4,7 +4,7 @@
 
 #include "src/execution/isolate.h"
 #include "src/execution/microtask-queue.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/heap/factory-inl.h"
 #include "src/objects/js-objects.h"
 #include "src/objects/js-weak-refs-inl.h"
diff --git a/test/cctest/test-object.cc b/test/cctest/test-object.cc
index 552c51e..52af8cd 100644
--- a/test/cctest/test-object.cc
+++ b/test/cctest/test-object.cc
@@ -6,7 +6,7 @@
 #include "src/execution/isolate.h"
 #include "src/function-kind.h"
 #include "src/globals.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/heap/factory.h"
 #include "src/objects-inl.h"
 #include "src/v8.h"
diff --git a/test/cctest/test-transitions.cc b/test/cctest/test-transitions.cc
index 08e6e0a..af868ba 100644
--- a/test/cctest/test-transitions.cc
+++ b/test/cctest/test-transitions.cc
@@ -9,7 +9,7 @@
 
 #include "src/codegen/compilation-cache.h"
 #include "src/execution/execution.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/factory.h"
 #include "src/objects-inl.h"
 #include "src/objects/field-type.h"
diff --git a/test/cctest/test-unboxed-doubles.cc b/test/cctest/test-unboxed-doubles.cc
index 0ab833c..2406007 100644
--- a/test/cctest/test-unboxed-doubles.cc
+++ b/test/cctest/test-unboxed-doubles.cc
@@ -12,7 +12,7 @@
 #include "src/builtins/accessors.h"
 #include "src/codegen/compilation-cache.h"
 #include "src/execution/execution.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/factory.h"
 #include "src/heap/heap-inl.h"
 #include "src/heap/incremental-marking.h"
diff --git a/test/cctest/test-weakmaps.cc b/test/cctest/test-weakmaps.cc
index 75f095e..0419044 100644
--- a/test/cctest/test-weakmaps.cc
+++ b/test/cctest/test-weakmaps.cc
@@ -28,7 +28,7 @@
 #include <utility>
 
 #include "src/execution/isolate.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/factory.h"
 #include "src/heap/heap-inl.h"
 #include "src/objects-inl.h"
diff --git a/test/cctest/test-weaksets.cc b/test/cctest/test-weaksets.cc
index 899375c5..b76519d 100644
--- a/test/cctest/test-weaksets.cc
+++ b/test/cctest/test-weaksets.cc
@@ -28,7 +28,7 @@
 #include <utility>
 
 #include "src/execution/isolate.h"
-#include "src/global-handles.h"
+#include "src/handles/global-handles.h"
 #include "src/heap/factory.h"
 #include "src/heap/heap-inl.h"
 #include "src/objects-inl.h"
diff --git a/test/common/wasm/wasm-module-runner.cc b/test/common/wasm/wasm-module-runner.cc
index f6dae23..f2fb53e 100644
--- a/test/common/wasm/wasm-module-runner.cc
+++ b/test/common/wasm/wasm-module-runner.cc
@@ -5,7 +5,7 @@
 #include "test/common/wasm/wasm-module-runner.h"
 
 #include "src/execution/isolate.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects-inl.h"
 #include "src/objects/heap-number-inl.h"
 #include "src/objects/property-descriptor.h"
diff --git a/test/unittests/api/remote-object-unittest.cc b/test/unittests/api/remote-object-unittest.cc
index 8a75308..b3cef4f 100644
--- a/test/unittests/api/remote-object-unittest.cc
+++ b/test/unittests/api/remote-object-unittest.cc
@@ -6,7 +6,7 @@
 
 #include "include/v8.h"
 #include "src/api/api-inl.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects-inl.h"
 #include "test/unittests/test-utils.h"
 
diff --git a/test/unittests/compiler-dispatcher/compiler-dispatcher-unittest.cc b/test/unittests/compiler-dispatcher/compiler-dispatcher-unittest.cc
index 2aeb8d4..bf79d7f 100644
--- a/test/unittests/compiler-dispatcher/compiler-dispatcher-unittest.cc
+++ b/test/unittests/compiler-dispatcher/compiler-dispatcher-unittest.cc
@@ -15,7 +15,7 @@
 #include "src/base/template-utils.h"
 #include "src/codegen/compiler.h"
 #include "src/flags.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects-inl.h"
 #include "src/parsing/parse-info.h"
 #include "src/parsing/parsing.h"
diff --git a/test/unittests/compiler-dispatcher/optimizing-compile-dispatcher-unittest.cc b/test/unittests/compiler-dispatcher/optimizing-compile-dispatcher-unittest.cc
index f8dd00c..885dd96 100644
--- a/test/unittests/compiler-dispatcher/optimizing-compile-dispatcher-unittest.cc
+++ b/test/unittests/compiler-dispatcher/optimizing-compile-dispatcher-unittest.cc
@@ -10,7 +10,7 @@
 #include "src/codegen/compiler.h"
 #include "src/codegen/optimized-compilation-info.h"
 #include "src/execution/isolate.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects-inl.h"
 #include "src/parsing/parse-info.h"
 #include "test/unittests/test-helpers.h"
diff --git a/test/unittests/compiler/graph-unittest.h b/test/unittests/compiler/graph-unittest.h
index a4b719f..fa42294 100644
--- a/test/unittests/compiler/graph-unittest.h
+++ b/test/unittests/compiler/graph-unittest.h
@@ -10,7 +10,7 @@
 #include "src/compiler/graph.h"
 #include "src/compiler/node-origin-table.h"
 #include "src/compiler/typer.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "test/unittests/test-utils.h"
 #include "testing/gmock/include/gmock/gmock.h"
 
diff --git a/test/unittests/compiler/node-test-utils.cc b/test/unittests/compiler/node-test-utils.cc
index ac93f46..23bcf44 100644
--- a/test/unittests/compiler/node-test-utils.cc
+++ b/test/unittests/compiler/node-test-utils.cc
@@ -10,7 +10,7 @@
 #include "src/compiler/js-operator.h"
 #include "src/compiler/node-properties.h"
 #include "src/compiler/simplified-operator.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/objects-inl.h"
 #include "src/objects.h"
 
diff --git a/test/unittests/counters-unittest.cc b/test/unittests/counters-unittest.cc
index 8f33990..4bee9d8 100644
--- a/test/unittests/counters-unittest.cc
+++ b/test/unittests/counters-unittest.cc
@@ -7,7 +7,7 @@
 #include "src/api/api-inl.h"
 #include "src/base/atomic-utils.h"
 #include "src/base/platform/time.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/logging/counters-inl.h"
 #include "src/logging/counters.h"
 #include "src/objects-inl.h"
diff --git a/test/unittests/heap/heap-controller-unittest.cc b/test/unittests/heap/heap-controller-unittest.cc
index 3cfa760..8e9dc4d 100644
--- a/test/unittests/heap/heap-controller-unittest.cc
+++ b/test/unittests/heap/heap-controller-unittest.cc
@@ -9,8 +9,8 @@
 #include "src/objects-inl.h"
 #include "src/objects.h"
 
-#include "src/handles-inl.h"
-#include "src/handles.h"
+#include "src/handles/handles-inl.h"
+#include "src/handles/handles.h"
 
 #include "src/heap/heap-controller.h"
 #include "test/unittests/test-utils.h"
diff --git a/test/unittests/heap/heap-unittest.cc b/test/unittests/heap/heap-unittest.cc
index 81b8857..e4f0556 100644
--- a/test/unittests/heap/heap-unittest.cc
+++ b/test/unittests/heap/heap-unittest.cc
@@ -6,7 +6,7 @@
 #include <iostream>
 #include <limits>
 
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/heap/heap.h"
 #include "src/heap/spaces-inl.h"
 #include "src/objects-inl.h"
diff --git a/test/unittests/interpreter/constant-array-builder-unittest.cc b/test/unittests/interpreter/constant-array-builder-unittest.cc
index eaa6ce5..1993d6f 100644
--- a/test/unittests/interpreter/constant-array-builder-unittest.cc
+++ b/test/unittests/interpreter/constant-array-builder-unittest.cc
@@ -6,7 +6,7 @@
 
 #include "src/ast/ast-value-factory.h"
 #include "src/execution/isolate.h"
-#include "src/handles-inl.h"
+#include "src/handles/handles-inl.h"
 #include "src/hash-seed-inl.h"
 #include "src/heap/factory.h"
 #include "src/interpreter/constant-array-builder.h"
diff --git a/test/unittests/test-helpers.cc b/test/unittests/test-helpers.cc
index 6341ba8..4d8af92 100644
--- a/test/unittests/test-helpers.cc
+++ b/test/unittests/test-helpers.cc
@@ -8,7 +8,7 @@
 #include "src/api/api.h"
 #include "src/base/template-utils.h"
 #include "src/execution/isolate.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects-inl.h"
 #include "src/objects.h"
 #include "src/parsing/scanner-character-streams.h"
diff --git a/test/unittests/test-utils.h b/test/unittests/test-utils.h
index c51335b..3db7f09 100644
--- a/test/unittests/test-utils.h
+++ b/test/unittests/test-utils.h
@@ -11,7 +11,7 @@
 #include "src/api/api-inl.h"
 #include "src/base/macros.h"
 #include "src/base/utils/random-number-generator.h"
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects-inl.h"
 #include "src/objects.h"
 #include "src/zone/accounting-allocator.h"
diff --git a/test/unittests/wasm/module-decoder-unittest.cc b/test/unittests/wasm/module-decoder-unittest.cc
index 741701e..a067186 100644
--- a/test/unittests/wasm/module-decoder-unittest.cc
+++ b/test/unittests/wasm/module-decoder-unittest.cc
@@ -4,7 +4,7 @@
 
 #include "test/unittests/test-utils.h"
 
-#include "src/handles.h"
+#include "src/handles/handles.h"
 #include "src/objects-inl.h"
 #include "src/wasm/module-decoder.h"
 #include "src/wasm/wasm-features.h"
diff --git a/tools/gcmole/gcmole-test.cc b/tools/gcmole/gcmole-test.cc
index 6661062..c00c6e5 100644
--- a/tools/gcmole/gcmole-test.cc
+++ b/tools/gcmole/gcmole-test.cc
@@ -3,8 +3,8 @@
 // found in the LICENSE file.
 
 #include "src/execution/isolate.h"
-#include "src/handles-inl.h"
-#include "src/handles.h"
+#include "src/handles/handles-inl.h"
+#include "src/handles/handles.h"
 #include "src/objects/maybe-object.h"
 #include "src/objects/object-macros.h"