Merge "Create dex subdirectory"
diff --git a/compiler/compiler.cc b/compiler/compiler.cc
index 47f44ff..60977b6 100644
--- a/compiler/compiler.cc
+++ b/compiler/compiler.cc
@@ -19,7 +19,7 @@
 #include <android-base/logging.h>
 
 #include "base/macros.h"
-#include "code_item_accessors-inl.h"
+#include "dex/code_item_accessors-inl.h"
 #include "driver/compiler_driver.h"
 #include "optimizing/optimizing_compiler.h"
 #include "utils.h"
diff --git a/compiler/compiler.h b/compiler/compiler.h
index 85abd66..b92bff6 100644
--- a/compiler/compiler.h
+++ b/compiler/compiler.h
@@ -18,7 +18,7 @@
 #define ART_COMPILER_COMPILER_H_
 
 #include "base/mutex.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "os.h"
 
 namespace art {
diff --git a/compiler/debug/elf_debug_info_writer.h b/compiler/debug/elf_debug_info_writer.h
index 0e11e32..e2bea8e 100644
--- a/compiler/debug/elf_debug_info_writer.h
+++ b/compiler/debug/elf_debug_info_writer.h
@@ -22,14 +22,14 @@
 #include <vector>
 
 #include "art_field-inl.h"
-#include "code_item_accessors-inl.h"
 #include "debug/dwarf/debug_abbrev_writer.h"
 #include "debug/dwarf/debug_info_entry_writer.h"
 #include "debug/elf_compilation_unit.h"
 #include "debug/elf_debug_loc_writer.h"
 #include "debug/method_debug_info.h"
-#include "dex_file-inl.h"
-#include "dex_file.h"
+#include "dex/code_item_accessors-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file.h"
 #include "heap_poisoning.h"
 #include "linear_alloc.h"
 #include "linker/elf_builder.h"
diff --git a/compiler/debug/elf_debug_line_writer.h b/compiler/debug/elf_debug_line_writer.h
index d7fd524..9910e7a 100644
--- a/compiler/debug/elf_debug_line_writer.h
+++ b/compiler/debug/elf_debug_line_writer.h
@@ -24,7 +24,7 @@
 #include "debug/dwarf/headers.h"
 #include "debug/elf_compilation_unit.h"
 #include "debug/src_map_elem.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "linker/elf_builder.h"
 #include "oat_file.h"
 #include "stack_map.h"
diff --git a/compiler/debug/method_debug_info.h b/compiler/debug/method_debug_info.h
index a8225fa..43c8de2 100644
--- a/compiler/debug/method_debug_info.h
+++ b/compiler/debug/method_debug_info.h
@@ -21,7 +21,7 @@
 
 #include "arch/instruction_set.h"
 #include "base/array_ref.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 
 namespace art {
 namespace debug {
diff --git a/compiler/dex/dex_to_dex_compiler.cc b/compiler/dex/dex_to_dex_compiler.cc
index 7e41c53..52cb217 100644
--- a/compiler/dex/dex_to_dex_compiler.cc
+++ b/compiler/dex/dex_to_dex_compiler.cc
@@ -26,8 +26,8 @@
 #include "base/mutex.h"
 #include "bytecode_utils.h"
 #include "compiled_method.h"
-#include "dex_file-inl.h"
-#include "dex_instruction-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_instruction-inl.h"
 #include "driver/compiler_driver.h"
 #include "driver/dex_compilation_unit.h"
 #include "mirror/dex_cache.h"
diff --git a/compiler/dex/dex_to_dex_compiler.h b/compiler/dex/dex_to_dex_compiler.h
index 87ddb39..80b94d2 100644
--- a/compiler/dex/dex_to_dex_compiler.h
+++ b/compiler/dex/dex_to_dex_compiler.h
@@ -17,7 +17,7 @@
 #ifndef ART_COMPILER_DEX_DEX_TO_DEX_COMPILER_H_
 #define ART_COMPILER_DEX_DEX_TO_DEX_COMPILER_H_
 
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "handle.h"
 #include "invoke_type.h"
 
diff --git a/compiler/dex/dex_to_dex_decompiler_test.cc b/compiler/dex/dex_to_dex_decompiler_test.cc
index 8bccd3b..19b1900 100644
--- a/compiler/dex/dex_to_dex_decompiler_test.cc
+++ b/compiler/dex/dex_to_dex_decompiler_test.cc
@@ -20,7 +20,7 @@
 #include "common_compiler_test.h"
 #include "compiled_method-inl.h"
 #include "compiler_callbacks.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "driver/compiler_driver.h"
 #include "driver/compiler_options.h"
 #include "handle_scope-inl.h"
diff --git a/compiler/dex/inline_method_analyser.cc b/compiler/dex/inline_method_analyser.cc
index 80677b9..ce67b85 100644
--- a/compiler/dex/inline_method_analyser.cc
+++ b/compiler/dex/inline_method_analyser.cc
@@ -20,11 +20,11 @@
 #include "art_method-inl.h"
 #include "base/enums.h"
 #include "class_linker-inl.h"
-#include "code_item_accessors-inl.h"
-#include "dex_file-inl.h"
-#include "dex_instruction-inl.h"
-#include "dex_instruction.h"
-#include "dex_instruction_utils.h"
+#include "dex/code_item_accessors-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_instruction-inl.h"
+#include "dex/dex_instruction.h"
+#include "dex/dex_instruction_utils.h"
 #include "mirror/class-inl.h"
 #include "mirror/dex_cache-inl.h"
 
diff --git a/compiler/dex/inline_method_analyser.h b/compiler/dex/inline_method_analyser.h
index cde2147..837cc85 100644
--- a/compiler/dex/inline_method_analyser.h
+++ b/compiler/dex/inline_method_analyser.h
@@ -19,8 +19,8 @@
 
 #include "base/macros.h"
 #include "base/mutex.h"
-#include "dex_file.h"
-#include "dex_instruction.h"
+#include "dex/dex_file.h"
+#include "dex/dex_instruction.h"
 #include "method_reference.h"
 
 /*
diff --git a/compiler/dex/verified_method.cc b/compiler/dex/verified_method.cc
index 8934201..f2da3ff 100644
--- a/compiler/dex/verified_method.cc
+++ b/compiler/dex/verified_method.cc
@@ -21,9 +21,9 @@
 
 #include <android-base/logging.h>
 
-#include "code_item_accessors-inl.h"
-#include "dex_file.h"
-#include "dex_instruction-inl.h"
+#include "dex/code_item_accessors-inl.h"
+#include "dex/dex_file.h"
+#include "dex/dex_instruction-inl.h"
 #include "runtime.h"
 #include "verifier/method_verifier-inl.h"
 #include "verifier/reg_type-inl.h"
diff --git a/compiler/dex/verified_method.h b/compiler/dex/verified_method.h
index 64b3f44..2ed17f1 100644
--- a/compiler/dex/verified_method.h
+++ b/compiler/dex/verified_method.h
@@ -20,7 +20,7 @@
 #include <vector>
 
 #include "base/mutex.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "method_reference.h"
 #include "safe_map.h"
 
diff --git a/compiler/driver/compiler_driver.cc b/compiler/driver/compiler_driver.cc
index 9e69e5e..fe83a66 100644
--- a/compiler/driver/compiler_driver.cc
+++ b/compiler/driver/compiler_driver.cc
@@ -42,13 +42,13 @@
 #include "compiler.h"
 #include "compiler_callbacks.h"
 #include "compiler_driver-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_annotations.h"
+#include "dex/dex_instruction-inl.h"
 #include "dex/dex_to_dex_compiler.h"
 #include "dex/verification_results.h"
 #include "dex/verified_method.h"
 #include "dex_compilation_unit.h"
-#include "dex_file-inl.h"
-#include "dex_file_annotations.h"
-#include "dex_instruction-inl.h"
 #include "driver/compiler_options.h"
 #include "gc/accounting/card_table-inl.h"
 #include "gc/accounting/heap_bitmap.h"
diff --git a/compiler/driver/compiler_driver.h b/compiler/driver/compiler_driver.h
index bcea853..ef16212 100644
--- a/compiler/driver/compiler_driver.h
+++ b/compiler/driver/compiler_driver.h
@@ -33,8 +33,8 @@
 #include "class_reference.h"
 #include "class_status.h"
 #include "compiler.h"
-#include "dex_file.h"
-#include "dex_file_types.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_types.h"
 #include "driver/compiled_method_storage.h"
 #include "jit/profile_compilation_info.h"
 #include "method_reference.h"
diff --git a/compiler/driver/compiler_driver_test.cc b/compiler/driver/compiler_driver_test.cc
index 2698574..162904c 100644
--- a/compiler/driver/compiler_driver_test.cc
+++ b/compiler/driver/compiler_driver_test.cc
@@ -26,8 +26,8 @@
 #include "class_linker-inl.h"
 #include "common_compiler_test.h"
 #include "compiler_callbacks.h"
-#include "dex_file.h"
-#include "dex_file_types.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_types.h"
 #include "gc/heap.h"
 #include "handle_scope-inl.h"
 #include "jit/profile_compilation_info.h"
diff --git a/compiler/driver/dex_compilation_unit.cc b/compiler/driver/dex_compilation_unit.cc
index 76e1299..1fe30de 100644
--- a/compiler/driver/dex_compilation_unit.cc
+++ b/compiler/driver/dex_compilation_unit.cc
@@ -16,7 +16,7 @@
 
 #include "dex_compilation_unit.h"
 
-#include "code_item_accessors-inl.h"
+#include "dex/code_item_accessors-inl.h"
 #include "mirror/dex_cache.h"
 #include "utils.h"
 
diff --git a/compiler/driver/dex_compilation_unit.h b/compiler/driver/dex_compilation_unit.h
index cdc505f..c1ae3c9 100644
--- a/compiler/driver/dex_compilation_unit.h
+++ b/compiler/driver/dex_compilation_unit.h
@@ -20,8 +20,8 @@
 #include <stdint.h>
 
 #include "base/arena_object.h"
-#include "code_item_accessors.h"
-#include "dex_file.h"
+#include "dex/code_item_accessors.h"
+#include "dex/dex_file.h"
 #include "handle.h"
 #include "jni.h"
 
diff --git a/compiler/exception_test.cc b/compiler/exception_test.cc
index 59d20f8..8f7ab05 100644
--- a/compiler/exception_test.cc
+++ b/compiler/exception_test.cc
@@ -20,11 +20,11 @@
 #include "base/callee_save_type.h"
 #include "base/enums.h"
 #include "class_linker.h"
-#include "code_item_accessors-inl.h"
 #include "common_runtime_test.h"
-#include "dex_file-inl.h"
-#include "dex_file.h"
-#include "dex_file_exception_helpers.h"
+#include "dex/code_item_accessors-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_exception_helpers.h"
 #include "gtest/gtest.h"
 #include "handle_scope-inl.h"
 #include "leb128.h"
diff --git a/compiler/jni/jni_compiler_test.cc b/compiler/jni/jni_compiler_test.cc
index d1a42aa..f34e9b8 100644
--- a/compiler/jni/jni_compiler_test.cc
+++ b/compiler/jni/jni_compiler_test.cc
@@ -24,7 +24,7 @@
 #include "class_linker.h"
 #include "common_compiler_test.h"
 #include "compiler.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "gtest/gtest.h"
 #include "indirect_reference_table.h"
 #include "java_vm_ext.h"
diff --git a/compiler/jni/quick/jni_compiler.cc b/compiler/jni/quick/jni_compiler.cc
index 136e3db..fc44927 100644
--- a/compiler/jni/quick/jni_compiler.cc
+++ b/compiler/jni/quick/jni_compiler.cc
@@ -30,7 +30,7 @@
 #include "calling_convention.h"
 #include "class_linker.h"
 #include "debug/dwarf/debug_frame_opcode_writer.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "driver/compiler_driver.h"
 #include "driver/compiler_options.h"
 #include "entrypoints/quick/quick_entrypoints.h"
diff --git a/compiler/linker/arm/relative_patcher_arm_base.cc b/compiler/linker/arm/relative_patcher_arm_base.cc
index 2cb23d1..cedbe5d 100644
--- a/compiler/linker/arm/relative_patcher_arm_base.cc
+++ b/compiler/linker/arm/relative_patcher_arm_base.cc
@@ -19,7 +19,7 @@
 #include "base/stl_util.h"
 #include "compiled_method-inl.h"
 #include "debug/method_debug_info.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "linker/linker_patch.h"
 #include "linker/output_stream.h"
 #include "oat.h"
diff --git a/compiler/optimizing/block_builder.cc b/compiler/optimizing/block_builder.cc
index 0c92600..2b568bc 100644
--- a/compiler/optimizing/block_builder.cc
+++ b/compiler/optimizing/block_builder.cc
@@ -18,8 +18,8 @@
 
 #include "base/logging.h"  // FOR VLOG.
 #include "bytecode_utils.h"
-#include "code_item_accessors-inl.h"
-#include "dex_file_exception_helpers.h"
+#include "dex/code_item_accessors-inl.h"
+#include "dex/dex_file_exception_helpers.h"
 #include "quicken_info.h"
 
 namespace art {
diff --git a/compiler/optimizing/block_builder.h b/compiler/optimizing/block_builder.h
index e68b95c..2c1f034 100644
--- a/compiler/optimizing/block_builder.h
+++ b/compiler/optimizing/block_builder.h
@@ -19,8 +19,8 @@
 
 #include "base/scoped_arena_allocator.h"
 #include "base/scoped_arena_containers.h"
-#include "code_item_accessors.h"
-#include "dex_file.h"
+#include "dex/code_item_accessors.h"
+#include "dex/dex_file.h"
 #include "nodes.h"
 
 namespace art {
diff --git a/compiler/optimizing/builder.h b/compiler/optimizing/builder.h
index c40e0b4..c16a3a9 100644
--- a/compiler/optimizing/builder.h
+++ b/compiler/optimizing/builder.h
@@ -18,9 +18,9 @@
 #define ART_COMPILER_OPTIMIZING_BUILDER_H_
 
 #include "base/arena_object.h"
-#include "code_item_accessors.h"
-#include "dex_file-inl.h"
-#include "dex_file.h"
+#include "dex/code_item_accessors.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file.h"
 #include "driver/compiler_driver.h"
 #include "nodes.h"
 
diff --git a/compiler/optimizing/code_generator.cc b/compiler/optimizing/code_generator.cc
index 729b08e..07894fd 100644
--- a/compiler/optimizing/code_generator.cc
+++ b/compiler/optimizing/code_generator.cc
@@ -45,8 +45,8 @@
 #include "base/casts.h"
 #include "bytecode_utils.h"
 #include "class_linker.h"
-#include "code_item_accessors-inl.h"
 #include "compiled_method.h"
+#include "dex/code_item_accessors-inl.h"
 #include "dex/verified_method.h"
 #include "driver/compiler_driver.h"
 #include "graph_visualizer.h"
diff --git a/compiler/optimizing/code_generator_arm64.h b/compiler/optimizing/code_generator_arm64.h
index e53773c..f92c94f 100644
--- a/compiler/optimizing/code_generator_arm64.h
+++ b/compiler/optimizing/code_generator_arm64.h
@@ -20,7 +20,7 @@
 #include "arch/arm64/quick_method_frame_info_arm64.h"
 #include "code_generator.h"
 #include "common_arm64.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "driver/compiler_options.h"
 #include "nodes.h"
 #include "parallel_move_resolver.h"
diff --git a/compiler/optimizing/code_generator_mips.h b/compiler/optimizing/code_generator_mips.h
index cf8e7a3..32b3e42 100644
--- a/compiler/optimizing/code_generator_mips.h
+++ b/compiler/optimizing/code_generator_mips.h
@@ -18,7 +18,7 @@
 #define ART_COMPILER_OPTIMIZING_CODE_GENERATOR_MIPS_H_
 
 #include "code_generator.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "driver/compiler_options.h"
 #include "nodes.h"
 #include "parallel_move_resolver.h"
diff --git a/compiler/optimizing/code_generator_x86.h b/compiler/optimizing/code_generator_x86.h
index 40b7e3c..0082853 100644
--- a/compiler/optimizing/code_generator_x86.h
+++ b/compiler/optimizing/code_generator_x86.h
@@ -20,7 +20,7 @@
 #include "arch/x86/instruction_set_features_x86.h"
 #include "base/enums.h"
 #include "code_generator.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "driver/compiler_options.h"
 #include "nodes.h"
 #include "parallel_move_resolver.h"
diff --git a/compiler/optimizing/codegen_test.cc b/compiler/optimizing/codegen_test.cc
index ba431a5..6eda289 100644
--- a/compiler/optimizing/codegen_test.cc
+++ b/compiler/optimizing/codegen_test.cc
@@ -20,8 +20,8 @@
 #include "base/macros.h"
 #include "builder.h"
 #include "codegen_test_utils.h"
-#include "dex_file.h"
-#include "dex_instruction.h"
+#include "dex/dex_file.h"
+#include "dex/dex_instruction.h"
 #include "driver/compiler_options.h"
 #include "nodes.h"
 #include "optimizing_unit_test.h"
diff --git a/compiler/optimizing/dominator_test.cc b/compiler/optimizing/dominator_test.cc
index 6bf3a59..572466e 100644
--- a/compiler/optimizing/dominator_test.cc
+++ b/compiler/optimizing/dominator_test.cc
@@ -16,7 +16,7 @@
 
 #include "base/arena_allocator.h"
 #include "builder.h"
-#include "dex_instruction.h"
+#include "dex/dex_instruction.h"
 #include "nodes.h"
 #include "optimizing_unit_test.h"
 
diff --git a/compiler/optimizing/find_loops_test.cc b/compiler/optimizing/find_loops_test.cc
index c917528..b799fb4 100644
--- a/compiler/optimizing/find_loops_test.cc
+++ b/compiler/optimizing/find_loops_test.cc
@@ -16,8 +16,8 @@
 
 #include "base/arena_allocator.h"
 #include "builder.h"
-#include "dex_file.h"
-#include "dex_instruction.h"
+#include "dex/dex_file.h"
+#include "dex/dex_instruction.h"
 #include "nodes.h"
 #include "optimizing_unit_test.h"
 #include "pretty_printer.h"
diff --git a/compiler/optimizing/inliner.h b/compiler/optimizing/inliner.h
index 042eee3..e81d97b 100644
--- a/compiler/optimizing/inliner.h
+++ b/compiler/optimizing/inliner.h
@@ -17,7 +17,7 @@
 #ifndef ART_COMPILER_OPTIMIZING_INLINER_H_
 #define ART_COMPILER_OPTIMIZING_INLINER_H_
 
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "invoke_type.h"
 #include "jit/profile_compilation_info.h"
 #include "optimization.h"
diff --git a/compiler/optimizing/instruction_builder.cc b/compiler/optimizing/instruction_builder.cc
index 3f5923f..72a93c1 100644
--- a/compiler/optimizing/instruction_builder.cc
+++ b/compiler/optimizing/instruction_builder.cc
@@ -23,7 +23,7 @@
 #include "bytecode_utils.h"
 #include "class_linker.h"
 #include "data_type-inl.h"
-#include "dex_instruction-inl.h"
+#include "dex/dex_instruction-inl.h"
 #include "driver/compiler_driver-inl.h"
 #include "driver/dex_compilation_unit.h"
 #include "driver/compiler_options.h"
diff --git a/compiler/optimizing/instruction_builder.h b/compiler/optimizing/instruction_builder.h
index b4e3051..708a097 100644
--- a/compiler/optimizing/instruction_builder.h
+++ b/compiler/optimizing/instruction_builder.h
@@ -19,10 +19,10 @@
 
 #include "base/scoped_arena_allocator.h"
 #include "base/scoped_arena_containers.h"
-#include "code_item_accessors.h"
 #include "data_type.h"
-#include "dex_file.h"
-#include "dex_file_types.h"
+#include "dex/code_item_accessors.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_types.h"
 #include "handle.h"
 #include "nodes.h"
 #include "quicken_info.h"
diff --git a/compiler/optimizing/linearize_test.cc b/compiler/optimizing/linearize_test.cc
index b2a9c0a..43b63a7 100644
--- a/compiler/optimizing/linearize_test.cc
+++ b/compiler/optimizing/linearize_test.cc
@@ -21,8 +21,8 @@
 #include "builder.h"
 #include "code_generator.h"
 #include "code_generator_x86.h"
-#include "dex_file.h"
-#include "dex_instruction.h"
+#include "dex/dex_file.h"
+#include "dex/dex_instruction.h"
 #include "driver/compiler_options.h"
 #include "graph_visualizer.h"
 #include "nodes.h"
diff --git a/compiler/optimizing/live_ranges_test.cc b/compiler/optimizing/live_ranges_test.cc
index ddcad5a..e45d7c8 100644
--- a/compiler/optimizing/live_ranges_test.cc
+++ b/compiler/optimizing/live_ranges_test.cc
@@ -19,8 +19,8 @@
 #include "builder.h"
 #include "code_generator.h"
 #include "code_generator_x86.h"
-#include "dex_file.h"
-#include "dex_instruction.h"
+#include "dex/dex_file.h"
+#include "dex/dex_instruction.h"
 #include "driver/compiler_options.h"
 #include "nodes.h"
 #include "optimizing_unit_test.h"
diff --git a/compiler/optimizing/liveness_test.cc b/compiler/optimizing/liveness_test.cc
index 3eadc8f..35bc4ff 100644
--- a/compiler/optimizing/liveness_test.cc
+++ b/compiler/optimizing/liveness_test.cc
@@ -19,8 +19,8 @@
 #include "builder.h"
 #include "code_generator.h"
 #include "code_generator_x86.h"
-#include "dex_file.h"
-#include "dex_instruction.h"
+#include "dex/dex_file.h"
+#include "dex/dex_instruction.h"
 #include "driver/compiler_options.h"
 #include "nodes.h"
 #include "optimizing_unit_test.h"
diff --git a/compiler/optimizing/nodes.h b/compiler/optimizing/nodes.h
index d13f5b4..d4382c6 100644
--- a/compiler/optimizing/nodes.h
+++ b/compiler/optimizing/nodes.h
@@ -30,8 +30,8 @@
 #include "base/transform_array_ref.h"
 #include "data_type.h"
 #include "deoptimization_kind.h"
-#include "dex_file.h"
-#include "dex_file_types.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_types.h"
 #include "entrypoints/quick/quick_entrypoints_enum.h"
 #include "handle.h"
 #include "handle_scope.h"
diff --git a/compiler/optimizing/optimization.cc b/compiler/optimizing/optimization.cc
index d8ac696..92b427c 100644
--- a/compiler/optimizing/optimization.cc
+++ b/compiler/optimizing/optimization.cc
@@ -35,11 +35,11 @@
 
 #include "bounds_check_elimination.h"
 #include "cha_guard_optimization.h"
-#include "code_item_accessors-inl.h"
 #include "code_sinking.h"
 #include "constant_folding.h"
 #include "constructor_fence_redundancy_elimination.h"
 #include "dead_code_elimination.h"
+#include "dex/code_item_accessors-inl.h"
 #include "driver/dex_compilation_unit.h"
 #include "gvn.h"
 #include "induction_var_analysis.h"
diff --git a/compiler/optimizing/optimizing_compiler.cc b/compiler/optimizing/optimizing_compiler.cc
index 9d04dd8..b64f82c 100644
--- a/compiler/optimizing/optimizing_compiler.cc
+++ b/compiler/optimizing/optimizing_compiler.cc
@@ -36,9 +36,9 @@
 #include "compiler.h"
 #include "debug/elf_debug_writer.h"
 #include "debug/method_debug_info.h"
+#include "dex/dex_file_types.h"
 #include "dex/verification_results.h"
 #include "dex/verified_method.h"
-#include "dex_file_types.h"
 #include "driver/compiler_driver-inl.h"
 #include "driver/compiler_options.h"
 #include "driver/dex_compilation_unit.h"
diff --git a/compiler/optimizing/optimizing_unit_test.h b/compiler/optimizing/optimizing_unit_test.h
index 7d05262..661abb1 100644
--- a/compiler/optimizing/optimizing_unit_test.h
+++ b/compiler/optimizing/optimizing_unit_test.h
@@ -19,10 +19,10 @@
 
 #include "base/scoped_arena_allocator.h"
 #include "builder.h"
-#include "code_item_accessors-inl.h"
 #include "common_compiler_test.h"
-#include "dex_file.h"
-#include "dex_instruction.h"
+#include "dex/code_item_accessors-inl.h"
+#include "dex/dex_file.h"
+#include "dex/dex_instruction.h"
 #include "driver/dex_compilation_unit.h"
 #include "handle_scope-inl.h"
 #include "mirror/class_loader.h"
diff --git a/compiler/optimizing/prepare_for_register_allocation.cc b/compiler/optimizing/prepare_for_register_allocation.cc
index 1ed190d..f843c00 100644
--- a/compiler/optimizing/prepare_for_register_allocation.cc
+++ b/compiler/optimizing/prepare_for_register_allocation.cc
@@ -16,7 +16,7 @@
 
 #include "prepare_for_register_allocation.h"
 
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "jni_internal.h"
 #include "optimizing_compiler_stats.h"
 #include "well_known_classes.h"
diff --git a/compiler/optimizing/pretty_printer_test.cc b/compiler/optimizing/pretty_printer_test.cc
index 4aec6d3..4fc7fe9 100644
--- a/compiler/optimizing/pretty_printer_test.cc
+++ b/compiler/optimizing/pretty_printer_test.cc
@@ -18,8 +18,8 @@
 
 #include "base/arena_allocator.h"
 #include "builder.h"
-#include "dex_file.h"
-#include "dex_instruction.h"
+#include "dex/dex_file.h"
+#include "dex/dex_instruction.h"
 #include "nodes.h"
 #include "optimizing_unit_test.h"
 
diff --git a/compiler/optimizing/register_allocator_test.cc b/compiler/optimizing/register_allocator_test.cc
index 69ed8c7..3748d59 100644
--- a/compiler/optimizing/register_allocator_test.cc
+++ b/compiler/optimizing/register_allocator_test.cc
@@ -21,9 +21,9 @@
 #include "builder.h"
 #include "code_generator.h"
 #include "code_generator_x86.h"
-#include "dex_file.h"
-#include "dex_file_types.h"
-#include "dex_instruction.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_types.h"
+#include "dex/dex_instruction.h"
 #include "driver/compiler_options.h"
 #include "nodes.h"
 #include "optimizing_unit_test.h"
diff --git a/compiler/optimizing/ssa_test.cc b/compiler/optimizing/ssa_test.cc
index e08904e..77e70d7 100644
--- a/compiler/optimizing/ssa_test.cc
+++ b/compiler/optimizing/ssa_test.cc
@@ -18,8 +18,8 @@
 
 #include "base/arena_allocator.h"
 #include "builder.h"
-#include "dex_file.h"
-#include "dex_instruction.h"
+#include "dex/dex_file.h"
+#include "dex/dex_instruction.h"
 #include "nodes.h"
 #include "optimizing_unit_test.h"
 #include "pretty_printer.h"
diff --git a/compiler/optimizing/stack_map_stream.cc b/compiler/optimizing/stack_map_stream.cc
index 4f43eb3..7010e3f 100644
--- a/compiler/optimizing/stack_map_stream.cc
+++ b/compiler/optimizing/stack_map_stream.cc
@@ -18,7 +18,7 @@
 
 #include "art_method-inl.h"
 #include "base/stl_util.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "optimizing/optimizing_compiler.h"
 #include "runtime.h"
 #include "scoped_thread_state_change-inl.h"
diff --git a/compiler/optimizing/suspend_check_test.cc b/compiler/optimizing/suspend_check_test.cc
index 88336b0..7e83f8c 100644
--- a/compiler/optimizing/suspend_check_test.cc
+++ b/compiler/optimizing/suspend_check_test.cc
@@ -15,7 +15,7 @@
  */
 
 #include "builder.h"
-#include "dex_instruction.h"
+#include "dex/dex_instruction.h"
 #include "nodes.h"
 #include "optimizing_unit_test.h"
 #include "pretty_printer.h"
diff --git a/compiler/utils/atomic_dex_ref_map-inl.h b/compiler/utils/atomic_dex_ref_map-inl.h
index 00db09a..203e484 100644
--- a/compiler/utils/atomic_dex_ref_map-inl.h
+++ b/compiler/utils/atomic_dex_ref_map-inl.h
@@ -21,8 +21,8 @@
 
 #include <type_traits>
 
-#include "dex_file-inl.h"
 #include "class_reference.h"
+#include "dex/dex_file-inl.h"
 #include "method_reference.h"
 #include "type_reference.h"
 
diff --git a/compiler/utils/atomic_dex_ref_map.h b/compiler/utils/atomic_dex_ref_map.h
index 205543f..9ff506d 100644
--- a/compiler/utils/atomic_dex_ref_map.h
+++ b/compiler/utils/atomic_dex_ref_map.h
@@ -18,7 +18,7 @@
 #define ART_COMPILER_UTILS_ATOMIC_DEX_REF_MAP_H_
 
 #include "base/dchecked_vector.h"
-#include "dex_file_reference.h"
+#include "dex/dex_file_reference.h"
 #include "safe_map.h"
 
 namespace art {
diff --git a/compiler/utils/atomic_dex_ref_map_test.cc b/compiler/utils/atomic_dex_ref_map_test.cc
index 8fce36f..d58d60b 100644
--- a/compiler/utils/atomic_dex_ref_map_test.cc
+++ b/compiler/utils/atomic_dex_ref_map_test.cc
@@ -19,7 +19,7 @@
 #include <memory>
 
 #include "common_runtime_test.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "method_reference.h"
 #include "scoped_thread_state_change-inl.h"
 
diff --git a/compiler/utils/string_reference_test.cc b/compiler/utils/string_reference_test.cc
index 90335eb..4b07e65 100644
--- a/compiler/utils/string_reference_test.cc
+++ b/compiler/utils/string_reference_test.cc
@@ -18,7 +18,7 @@
 
 #include <memory>
 
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "gtest/gtest.h"
 #include "utils/test_dex_file_builder.h"
 
diff --git a/compiler/utils/test_dex_file_builder.h b/compiler/utils/test_dex_file_builder.h
index 441ef8e..04fba51 100644
--- a/compiler/utils/test_dex_file_builder.h
+++ b/compiler/utils/test_dex_file_builder.h
@@ -27,8 +27,8 @@
 #include <android-base/logging.h>
 
 #include "base/bit_utils.h"
-#include "dex_file_loader.h"
-#include "standard_dex_file.h"
+#include "dex/dex_file_loader.h"
+#include "dex/standard_dex_file.h"
 
 namespace art {
 
diff --git a/compiler/utils/test_dex_file_builder_test.cc b/compiler/utils/test_dex_file_builder_test.cc
index c76739b..736a17e 100644
--- a/compiler/utils/test_dex_file_builder_test.cc
+++ b/compiler/utils/test_dex_file_builder_test.cc
@@ -16,7 +16,7 @@
 
 #include "test_dex_file_builder.h"
 
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "gtest/gtest.h"
 #include "utils.h"
 
diff --git a/compiler/verifier_deps_test.cc b/compiler/verifier_deps_test.cc
index d77842a..76448d8 100644
--- a/compiler/verifier_deps_test.cc
+++ b/compiler/verifier_deps_test.cc
@@ -21,10 +21,10 @@
 #include "class_linker.h"
 #include "common_compiler_test.h"
 #include "compiler_callbacks.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_types.h"
 #include "dex/verification_results.h"
 #include "dex/verified_method.h"
-#include "dex_file-inl.h"
-#include "dex_file_types.h"
 #include "driver/compiler_driver-inl.h"
 #include "driver/compiler_options.h"
 #include "handle_scope-inl.h"
diff --git a/dex2oat/dex2oat.cc b/dex2oat/dex2oat.cc
index 11c9031..dabe07f 100644
--- a/dex2oat/dex2oat.cc
+++ b/dex2oat/dex2oat.cc
@@ -59,11 +59,11 @@
 #include "debug/elf_debug_writer.h"
 #include "debug/method_debug_info.h"
 #include "dexlayout.h"
+#include "dex/dex_file-inl.h"
 #include "dex/quick_compiler_callbacks.h"
 #include "dex/verification_results.h"
 #include "dex2oat_options.h"
 #include "dex2oat_return_codes.h"
-#include "dex_file-inl.h"
 #include "driver/compiler_driver.h"
 #include "driver/compiler_options.h"
 #include "driver/compiler_options_map-inl.h"
diff --git a/dex2oat/dex2oat_image_test.cc b/dex2oat/dex2oat_image_test.cc
index 035b395..980363b 100644
--- a/dex2oat/dex2oat_image_test.cc
+++ b/dex2oat/dex2oat_image_test.cc
@@ -29,8 +29,8 @@
 #include "base/file_utils.h"
 #include "base/macros.h"
 #include "base/unix_file/fd_file.h"
-#include "dex_file-inl.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_loader.h"
 #include "jit/profile_compilation_info.h"
 #include "method_reference.h"
 #include "runtime.h"
diff --git a/dex2oat/dex2oat_options.h b/dex2oat/dex2oat_options.h
index f8198ee..ccc85c8 100644
--- a/dex2oat/dex2oat_options.h
+++ b/dex2oat/dex2oat_options.h
@@ -22,9 +22,9 @@
 #include <vector>
 
 #include "base/variant_map.h"
-#include "cdex/compact_dex_level.h"
 #include "cmdline_types.h"  // TODO: don't need to include this file here
 #include "compiler.h"
+#include "dex/compact_dex_level.h"
 #include "driver/compiler_options_map.h"
 #include "image.h"
 
diff --git a/dex2oat/dex2oat_test.cc b/dex2oat/dex2oat_test.cc
index b338d08..c91240e 100644
--- a/dex2oat/dex2oat_test.cc
+++ b/dex2oat/dex2oat_test.cc
@@ -30,11 +30,11 @@
 #include "base/macros.h"
 #include "base/mutex-inl.h"
 #include "bytecode_utils.h"
-#include "code_item_accessors-inl.h"
+#include "dex/code_item_accessors-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_loader.h"
 #include "dex2oat_environment_test.h"
 #include "dex2oat_return_codes.h"
-#include "dex_file-inl.h"
-#include "dex_file_loader.h"
 #include "jit/profile_compilation_info.h"
 #include "oat.h"
 #include "oat_file.h"
diff --git a/dex2oat/linker/image_writer.cc b/dex2oat/linker/image_writer.cc
index 363cb8b..73eaad4 100644
--- a/dex2oat/linker/image_writer.cc
+++ b/dex2oat/linker/image_writer.cc
@@ -33,8 +33,8 @@
 #include "base/unix_file/fd_file.h"
 #include "class_linker-inl.h"
 #include "compiled_method.h"
-#include "dex_file-inl.h"
-#include "dex_file_types.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_types.h"
 #include "driver/compiler_driver.h"
 #include "elf_file.h"
 #include "elf_utils.h"
diff --git a/dex2oat/linker/oat_writer.cc b/dex2oat/linker/oat_writer.cc
index 016a114..cb1b80d 100644
--- a/dex2oat/linker/oat_writer.cc
+++ b/dex2oat/linker/oat_writer.cc
@@ -33,10 +33,11 @@
 #include "class_table-inl.h"
 #include "compiled_method-inl.h"
 #include "debug/method_debug_info.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_loader.h"
+#include "dex/dex_file_types.h"
+#include "dex/standard_dex_file.h"
 #include "dex/verification_results.h"
-#include "dex_file-inl.h"
-#include "dex_file_loader.h"
-#include "dex_file_types.h"
 #include "dexlayout.h"
 #include "driver/compiler_driver-inl.h"
 #include "driver/compiler_options.h"
@@ -54,7 +55,6 @@
 #include "mirror/class_loader.h"
 #include "mirror/dex_cache-inl.h"
 #include "mirror/object-inl.h"
-#include "standard_dex_file.h"
 #include "oat_quick_method_header.h"
 #include "os.h"
 #include "safe_map.h"
diff --git a/dex2oat/linker/oat_writer.h b/dex2oat/linker/oat_writer.h
index 4055878..ba29e3b 100644
--- a/dex2oat/linker/oat_writer.h
+++ b/dex2oat/linker/oat_writer.h
@@ -24,7 +24,7 @@
 
 #include "base/array_ref.h"
 #include "base/dchecked_vector.h"
-#include "cdex/compact_dex_level.h"
+#include "dex/compact_dex_level.h"
 #include "linker/relative_patcher.h"  // For RelativePatcherTargetProvider.
 #include "mem_map.h"
 #include "method_reference.h"
diff --git a/dex2oat/linker/oat_writer_test.cc b/dex2oat/linker/oat_writer_test.cc
index 44c2f89..4888060 100644
--- a/dex2oat/linker/oat_writer_test.cc
+++ b/dex2oat/linker/oat_writer_test.cc
@@ -26,7 +26,7 @@
 #include "compiled_method-inl.h"
 #include "compiler.h"
 #include "debug/method_debug_info.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file_loader.h"
 #include "dex/quick_compiler_callbacks.h"
 #include "dex/verification_results.h"
 #include "driver/compiler_driver.h"
diff --git a/dexdump/dexdump.cc b/dexdump/dexdump.cc
index ba2a922..8a06f44 100644
--- a/dexdump/dexdump.cc
+++ b/dexdump/dexdump.cc
@@ -44,12 +44,12 @@
 
 #include "android-base/stringprintf.h"
 
-#include "code_item_accessors-no_art-inl.h"
-#include "dex_file-inl.h"
-#include "dex_file_loader.h"
-#include "dex_file_types.h"
-#include "dex_file_exception_helpers.h"
-#include "dex_instruction-inl.h"
+#include "dex/code_item_accessors-no_art-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_exception_helpers.h"
+#include "dex/dex_file_loader.h"
+#include "dex/dex_file_types.h"
+#include "dex/dex_instruction-inl.h"
 #include "dexdump_cfg.h"
 
 namespace art {
diff --git a/dexdump/dexdump_cfg.cc b/dexdump/dexdump_cfg.cc
index 7e9f113..f08ea74 100644
--- a/dexdump/dexdump_cfg.cc
+++ b/dexdump/dexdump_cfg.cc
@@ -25,10 +25,10 @@
 #include <set>
 #include <sstream>
 
-#include "code_item_accessors-no_art-inl.h"
-#include "dex_file-inl.h"
-#include "dex_file_exception_helpers.h"
-#include "dex_instruction-inl.h"
+#include "dex/code_item_accessors-no_art-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_exception_helpers.h"
+#include "dex/dex_instruction-inl.h"
 
 namespace art {
 
diff --git a/dexlayout/compact_dex_writer.cc b/dexlayout/compact_dex_writer.cc
index f44eaef..1c5b16d 100644
--- a/dexlayout/compact_dex_writer.cc
+++ b/dexlayout/compact_dex_writer.cc
@@ -16,7 +16,7 @@
 
 #include "compact_dex_writer.h"
 
-#include "cdex/compact_dex_file.h"
+#include "dex/compact_dex_file.h"
 
 namespace art {
 
diff --git a/dexlayout/dex_ir.cc b/dexlayout/dex_ir.cc
index d4a7395..8ed3a79 100644
--- a/dexlayout/dex_ir.cc
+++ b/dexlayout/dex_ir.cc
@@ -22,9 +22,9 @@
 
 #include "dex_ir.h"
 
-#include "code_item_accessors-inl.h"
-#include "dex_file_exception_helpers.h"
-#include "dex_instruction-inl.h"
+#include "dex/code_item_accessors-inl.h"
+#include "dex/dex_file_exception_helpers.h"
+#include "dex/dex_instruction-inl.h"
 #include "dex_ir_builder.h"
 
 namespace art {
diff --git a/dexlayout/dex_ir.h b/dexlayout/dex_ir.h
index a54c46f..6797fa5 100644
--- a/dexlayout/dex_ir.h
+++ b/dexlayout/dex_ir.h
@@ -25,8 +25,8 @@
 #include <vector>
 
 #include "base/stl_util.h"
-#include "dex_file-inl.h"
-#include "dex_file_types.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_types.h"
 #include "leb128.h"
 #include "utf.h"
 
diff --git a/dexlayout/dex_writer.cc b/dexlayout/dex_writer.cc
index 41fdcbd..a18a2cf 100644
--- a/dexlayout/dex_writer.cc
+++ b/dexlayout/dex_writer.cc
@@ -20,12 +20,12 @@
 
 #include <vector>
 
-#include "cdex/compact_dex_file.h"
 #include "compact_dex_writer.h"
-#include "dex_file_layout.h"
-#include "dex_file_types.h"
+#include "dex/compact_dex_file.h"
+#include "dex/dex_file_layout.h"
+#include "dex/dex_file_types.h"
+#include "dex/standard_dex_file.h"
 #include "dexlayout.h"
-#include "standard_dex_file.h"
 #include "utf.h"
 
 namespace art {
diff --git a/dexlayout/dex_writer.h b/dexlayout/dex_writer.h
index 3929526..92a002e 100644
--- a/dexlayout/dex_writer.h
+++ b/dexlayout/dex_writer.h
@@ -22,7 +22,7 @@
 #include <functional>
 
 #include "base/unix_file/fd_file.h"
-#include "cdex/compact_dex_level.h"
+#include "dex/compact_dex_level.h"
 #include "dex_ir.h"
 #include "mem_map.h"
 #include "os.h"
diff --git a/dexlayout/dexdiag.cc b/dexlayout/dexdiag.cc
index b250701..99b1f38 100644
--- a/dexlayout/dexdiag.cc
+++ b/dexlayout/dexdiag.cc
@@ -29,7 +29,7 @@
 #include "base/logging.h"  // For InitLogging.
 #include "base/stringpiece.h"
 
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "dex_ir.h"
 #include "dex_ir_builder.h"
 #ifdef ART_TARGET_ANDROID
diff --git a/dexlayout/dexlayout.cc b/dexlayout/dexlayout.cc
index f87778a..47a3e94 100644
--- a/dexlayout/dexlayout.cc
+++ b/dexlayout/dexlayout.cc
@@ -34,12 +34,12 @@
 #include "android-base/stringprintf.h"
 
 #include "base/logging.h"  // For VLOG_IS_ON.
-#include "dex_file-inl.h"
-#include "dex_file_layout.h"
-#include "dex_file_loader.h"
-#include "dex_file_types.h"
-#include "dex_file_verifier.h"
-#include "dex_instruction-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_layout.h"
+#include "dex/dex_file_loader.h"
+#include "dex/dex_file_types.h"
+#include "dex/dex_file_verifier.h"
+#include "dex/dex_instruction-inl.h"
 #include "dex_ir_builder.h"
 #include "dex_verify.h"
 #include "dex_visualize.h"
diff --git a/dexlayout/dexlayout.h b/dexlayout/dexlayout.h
index 958251e..25afb77 100644
--- a/dexlayout/dexlayout.h
+++ b/dexlayout/dexlayout.h
@@ -27,8 +27,8 @@
 #include <stdio.h>
 #include <unordered_map>
 
-#include "cdex/compact_dex_level.h"
-#include "dex_file_layout.h"
+#include "dex/compact_dex_level.h"
+#include "dex/dex_file_layout.h"
 #include "dex_ir.h"
 #include "mem_map.h"
 
diff --git a/dexlayout/dexlayout_test.cc b/dexlayout/dexlayout_test.cc
index 360f234..b8cff6d 100644
--- a/dexlayout/dexlayout_test.cc
+++ b/dexlayout/dexlayout_test.cc
@@ -22,10 +22,10 @@
 #include <unistd.h>
 
 #include "base/unix_file/fd_file.h"
-#include "code_item_accessors-inl.h"
 #include "common_runtime_test.h"
-#include "dex_file-inl.h"
-#include "dex_file_loader.h"
+#include "dex/code_item_accessors-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_loader.h"
 #include "exec_utils.h"
 #include "jit/profile_compilation_info.h"
 #include "utils.h"
diff --git a/dexlist/dexlist.cc b/dexlist/dexlist.cc
index 2c910d4..348f501 100644
--- a/dexlist/dexlist.cc
+++ b/dexlist/dexlist.cc
@@ -27,9 +27,9 @@
 #include <stdlib.h>
 
 #include "base/logging.h"  // For InitLogging.
-#include "code_item_accessors-no_art-inl.h"
-#include "dex_file-inl.h"
-#include "dex_file_loader.h"
+#include "dex/code_item_accessors-no_art-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_loader.h"
 #include "mem_map.h"
 #include "runtime.h"
 
diff --git a/dexoptanalyzer/dexoptanalyzer.cc b/dexoptanalyzer/dexoptanalyzer.cc
index eead2dc..bedc457 100644
--- a/dexoptanalyzer/dexoptanalyzer.cc
+++ b/dexoptanalyzer/dexoptanalyzer.cc
@@ -23,7 +23,7 @@
 #include "base/logging.h"  // For InitLogging.
 #include "compiler_filter.h"
 #include "class_loader_context.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "noop_compiler_callbacks.h"
 #include "oat_file_assistant.h"
 #include "os.h"
diff --git a/oatdump/oatdump.cc b/oatdump/oatdump.cc
index a97dd2a..6a99c5a 100644
--- a/oatdump/oatdump.cc
+++ b/oatdump/oatdump.cc
@@ -37,12 +37,12 @@
 #include "base/unix_file/fd_file.h"
 #include "class_linker-inl.h"
 #include "class_linker.h"
-#include "code_item_accessors-inl.h"
 #include "compiled_method.h"
 #include "debug/elf_debug_writer.h"
 #include "debug/method_debug_info.h"
-#include "dex_file-inl.h"
-#include "dex_instruction-inl.h"
+#include "dex/code_item_accessors-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_instruction-inl.h"
 #include "disassembler.h"
 #include "gc/accounting/space_bitmap-inl.h"
 #include "gc/space/image_space.h"
diff --git a/openjdkjvmti/deopt_manager.cc b/openjdkjvmti/deopt_manager.cc
index f843054..aced769 100644
--- a/openjdkjvmti/deopt_manager.cc
+++ b/openjdkjvmti/deopt_manager.cc
@@ -37,7 +37,7 @@
 #include "art_method-inl.h"
 #include "base/enums.h"
 #include "base/mutex-inl.h"
-#include "dex_file_annotations.h"
+#include "dex/dex_file_annotations.h"
 #include "events-inl.h"
 #include "jni_internal.h"
 #include "mirror/class-inl.h"
diff --git a/openjdkjvmti/events.cc b/openjdkjvmti/events.cc
index 330a3de..d98fda5 100644
--- a/openjdkjvmti/events.cc
+++ b/openjdkjvmti/events.cc
@@ -37,7 +37,7 @@
 #include "art_jvmti.h"
 #include "art_method-inl.h"
 #include "deopt_manager.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "gc/allocation_listener.h"
 #include "gc/gc_pause_listener.h"
 #include "gc/heap.h"
diff --git a/openjdkjvmti/fixed_up_dex_file.cc b/openjdkjvmti/fixed_up_dex_file.cc
index 64dc3a5..ad928d9 100644
--- a/openjdkjvmti/fixed_up_dex_file.cc
+++ b/openjdkjvmti/fixed_up_dex_file.cc
@@ -30,8 +30,8 @@
  */
 
 #include "fixed_up_dex_file.h"
-#include "dex_file_loader.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_loader.h"
 
 // Runtime includes.
 #include "dex_to_dex_decompiler.h"
diff --git a/openjdkjvmti/fixed_up_dex_file.h b/openjdkjvmti/fixed_up_dex_file.h
index 4cb39cf..b8f349c 100644
--- a/openjdkjvmti/fixed_up_dex_file.h
+++ b/openjdkjvmti/fixed_up_dex_file.h
@@ -39,7 +39,7 @@
 #include "jvmti.h"
 
 #include "base/mutex.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 
 namespace openjdkjvmti {
 
diff --git a/openjdkjvmti/ti_breakpoint.cc b/openjdkjvmti/ti_breakpoint.cc
index 7634fa3..fa7a344 100644
--- a/openjdkjvmti/ti_breakpoint.cc
+++ b/openjdkjvmti/ti_breakpoint.cc
@@ -38,7 +38,7 @@
 #include "base/enums.h"
 #include "base/mutex-inl.h"
 #include "deopt_manager.h"
-#include "dex_file_annotations.h"
+#include "dex/dex_file_annotations.h"
 #include "events-inl.h"
 #include "jni_internal.h"
 #include "mirror/class-inl.h"
diff --git a/openjdkjvmti/ti_class.cc b/openjdkjvmti/ti_class.cc
index 60ab0a5..f9eb008 100644
--- a/openjdkjvmti/ti_class.cc
+++ b/openjdkjvmti/ti_class.cc
@@ -42,8 +42,8 @@
 #include "class_linker.h"
 #include "class_table-inl.h"
 #include "common_throws.h"
-#include "dex_file_annotations.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file_annotations.h"
+#include "dex/dex_file_loader.h"
 #include "events-inl.h"
 #include "fixed_up_dex_file.h"
 #include "gc/heap-visit-objects-inl.h"
diff --git a/openjdkjvmti/ti_class_definition.cc b/openjdkjvmti/ti_class_definition.cc
index c73ef0d..6560570 100644
--- a/openjdkjvmti/ti_class_definition.cc
+++ b/openjdkjvmti/ti_class_definition.cc
@@ -33,7 +33,7 @@
 
 #include "base/array_slice.h"
 #include "class_linker-inl.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "fixed_up_dex_file.h"
 #include "handle.h"
 #include "handle_scope-inl.h"
diff --git a/openjdkjvmti/ti_class_loader.cc b/openjdkjvmti/ti_class_loader.cc
index 701ba80..d594d6e 100644
--- a/openjdkjvmti/ti_class_loader.cc
+++ b/openjdkjvmti/ti_class_loader.cc
@@ -38,8 +38,8 @@
 
 #include "art_field-inl.h"
 #include "art_jvmti.h"
-#include "dex_file.h"
-#include "dex_file_types.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_types.h"
 #include "events-inl.h"
 #include "gc/allocation_listener.h"
 #include "gc/heap.h"
diff --git a/openjdkjvmti/ti_class_loader.h b/openjdkjvmti/ti_class_loader.h
index 767e258..27ea3f5 100644
--- a/openjdkjvmti/ti_class_loader.h
+++ b/openjdkjvmti/ti_class_loader.h
@@ -40,7 +40,7 @@
 #include "art_method.h"
 #include "base/array_slice.h"
 #include "class_linker.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "gc_root-inl.h"
 #include "globals.h"
 #include "jni_env_ext-inl.h"
diff --git a/openjdkjvmti/ti_field.cc b/openjdkjvmti/ti_field.cc
index b869183..db5c31c 100644
--- a/openjdkjvmti/ti_field.cc
+++ b/openjdkjvmti/ti_field.cc
@@ -34,7 +34,7 @@
 #include "art_field-inl.h"
 #include "art_jvmti.h"
 #include "base/enums.h"
-#include "dex_file_annotations.h"
+#include "dex/dex_file_annotations.h"
 #include "jni_internal.h"
 #include "mirror/object_array-inl.h"
 #include "modifiers.h"
diff --git a/openjdkjvmti/ti_method.cc b/openjdkjvmti/ti_method.cc
index 947ba79..57fb699 100644
--- a/openjdkjvmti/ti_method.cc
+++ b/openjdkjvmti/ti_method.cc
@@ -37,9 +37,9 @@
 #include "art_method-inl.h"
 #include "base/enums.h"
 #include "base/mutex-inl.h"
-#include "code_item_accessors-inl.h"
-#include "dex_file_annotations.h"
-#include "dex_file_types.h"
+#include "dex/code_item_accessors-inl.h"
+#include "dex/dex_file_annotations.h"
+#include "dex/dex_file_types.h"
 #include "events-inl.h"
 #include "jit/jit.h"
 #include "jni_internal.h"
diff --git a/openjdkjvmti/ti_redefine.cc b/openjdkjvmti/ti_redefine.cc
index c18b354..6194d1e 100644
--- a/openjdkjvmti/ti_redefine.cc
+++ b/openjdkjvmti/ti_redefine.cc
@@ -43,9 +43,9 @@
 #include "base/stringpiece.h"
 #include "class_linker-inl.h"
 #include "debugger.h"
-#include "dex_file.h"
-#include "dex_file_loader.h"
-#include "dex_file_types.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_loader.h"
+#include "dex/dex_file_types.h"
 #include "events-inl.h"
 #include "gc/allocation_listener.h"
 #include "gc/heap.h"
diff --git a/openjdkjvmti/ti_redefine.h b/openjdkjvmti/ti_redefine.h
index 528563b..b537e1b 100644
--- a/openjdkjvmti/ti_redefine.h
+++ b/openjdkjvmti/ti_redefine.h
@@ -40,7 +40,7 @@
 #include "art_method.h"
 #include "base/array_ref.h"
 #include "class_linker.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "gc_root-inl.h"
 #include "globals.h"
 #include "jni_env_ext-inl.h"
diff --git a/openjdkjvmti/ti_search.cc b/openjdkjvmti/ti_search.cc
index fe12a25..9d5f4ea 100644
--- a/openjdkjvmti/ti_search.cc
+++ b/openjdkjvmti/ti_search.cc
@@ -38,8 +38,8 @@
 #include "base/enums.h"
 #include "base/macros.h"
 #include "class_linker.h"
-#include "dex_file.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_loader.h"
 #include "jni_internal.h"
 #include "mirror/class-inl.h"
 #include "mirror/object.h"
diff --git a/openjdkjvmti/ti_stack.cc b/openjdkjvmti/ti_stack.cc
index f7e3b51..bc77753 100644
--- a/openjdkjvmti/ti_stack.cc
+++ b/openjdkjvmti/ti_stack.cc
@@ -44,10 +44,10 @@
 #include "base/bit_utils.h"
 #include "base/enums.h"
 #include "base/mutex.h"
-#include "code_item_accessors-inl.h"
-#include "dex_file.h"
-#include "dex_file_annotations.h"
-#include "dex_file_types.h"
+#include "dex/code_item_accessors-inl.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_annotations.h"
+#include "dex/dex_file_types.h"
 #include "gc_root.h"
 #include "handle_scope-inl.h"
 #include "jni_env_ext.h"
diff --git a/openjdkjvmti/transform.cc b/openjdkjvmti/transform.cc
index 1d7f137..3a5fccc 100644
--- a/openjdkjvmti/transform.cc
+++ b/openjdkjvmti/transform.cc
@@ -37,8 +37,8 @@
 #include "art_method.h"
 #include "base/array_ref.h"
 #include "class_linker.h"
-#include "dex_file.h"
-#include "dex_file_types.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_types.h"
 #include "events-inl.h"
 #include "gc_root-inl.h"
 #include "globals.h"
diff --git a/profman/boot_image_profile.cc b/profman/boot_image_profile.cc
index 48b87c9..a750105 100644
--- a/profman/boot_image_profile.cc
+++ b/profman/boot_image_profile.cc
@@ -18,7 +18,7 @@
 #include <set>
 
 #include "boot_image_profile.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "method_reference.h"
 #include "type_reference.h"
 
diff --git a/profman/boot_image_profile.h b/profman/boot_image_profile.h
index d02e408..eb43b7c 100644
--- a/profman/boot_image_profile.h
+++ b/profman/boot_image_profile.h
@@ -21,7 +21,7 @@
 #include <memory>
 #include <vector>
 
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "jit/profile_compilation_info.h"
 
 namespace art {
diff --git a/profman/profman.cc b/profman/profman.cc
index 10b9f64..71f7f9d 100644
--- a/profman/profman.cc
+++ b/profman/profman.cc
@@ -39,10 +39,10 @@
 #include "base/unix_file/fd_file.h"
 #include "boot_image_profile.h"
 #include "bytecode_utils.h"
-#include "code_item_accessors-inl.h"
-#include "dex_file.h"
-#include "dex_file_loader.h"
-#include "dex_file_types.h"
+#include "dex/code_item_accessors-inl.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_loader.h"
+#include "dex/dex_file_types.h"
 #include "jit/profile_compilation_info.h"
 #include "profile_assistant.h"
 #include "runtime.h"
diff --git a/runtime/Android.bp b/runtime/Android.bp
index 8fe901d..2657f4f 100644
--- a/runtime/Android.bp
+++ b/runtime/Android.bp
@@ -48,7 +48,6 @@
         "base/timing_logger.cc",
         "base/unix_file/fd_file.cc",
         "base/unix_file/random_access_file_utils.cc",
-        "cdex/compact_dex_file.cc",
         "cha.cc",
         "check_jni.cc",
         "class_linker.cc",
@@ -57,14 +56,16 @@
         "common_throws.cc",
         "compiler_filter.cc",
         "debugger.cc",
-        "dex_file.cc",
-        "dex_file_annotations.cc",
-        "dex_file_exception_helpers.cc",
-        "dex_file_loader.cc",
-        "dex_file_layout.cc",
-        "dex_file_tracking_registrar.cc",
-        "dex_file_verifier.cc",
-        "dex_instruction.cc",
+        "dex/compact_dex_file.cc",
+        "dex/dex_file.cc",
+        "dex/dex_file_annotations.cc",
+        "dex/dex_file_exception_helpers.cc",
+        "dex/dex_file_layout.cc",
+        "dex/dex_file_loader.cc",
+        "dex/dex_file_tracking_registrar.cc",
+        "dex/dex_file_verifier.cc",
+        "dex/dex_instruction.cc",
+        "dex/standard_dex_file.cc",
         "dex_to_dex_decompiler.cc",
         "elf_file.cc",
         "exec_utils.cc",
@@ -214,7 +215,6 @@
         "signal_catcher.cc",
         "stack.cc",
         "stack_map.cc",
-        "standard_dex_file.cc",
         "thread.cc",
         "thread_list.cc",
         "thread_pool.cc",
@@ -454,10 +454,10 @@
         "debugger.h",
         "base/unix_file/fd_file.h",
         "class_status.h",
-        "dex_file.h",
-        "dex_file_layout.h",
-        "dex_instruction.h",
-        "dex_instruction_utils.h",
+        "dex/dex_file.h",
+        "dex/dex_file_layout.h",
+        "dex/dex_instruction.h",
+        "dex/dex_instruction_utils.h",
         "gc_root.h",
         "gc/allocator_type.h",
         "gc/allocator/rosalloc.h",
@@ -566,16 +566,16 @@
         "base/transform_iterator_test.cc",
         "base/variant_map_test.cc",
         "base/unix_file/fd_file_test.cc",
-        "cdex/compact_dex_file_test.cc",
         "cha_test.cc",
         "class_linker_test.cc",
         "class_loader_context_test.cc",
         "class_table_test.cc",
-        "code_item_accessors_test.cc",
         "compiler_filter_test.cc",
-        "dex_file_test.cc",
-        "dex_file_verifier_test.cc",
-        "dex_instruction_test.cc",
+        "dex/code_item_accessors_test.cc",
+        "dex/compact_dex_file_test.cc",
+        "dex/dex_file_test.cc",
+        "dex/dex_file_verifier_test.cc",
+        "dex/dex_instruction_test.cc",
         "entrypoints/math_entrypoints_test.cc",
         "entrypoints/quick/quick_trampoline_entrypoints_test.cc",
         "entrypoints_order_test.cc",
diff --git a/runtime/art_field-inl.h b/runtime/art_field-inl.h
index 2b18577..99634a0 100644
--- a/runtime/art_field-inl.h
+++ b/runtime/art_field-inl.h
@@ -22,7 +22,7 @@
 #include <android-base/logging.h>
 
 #include "class_linker.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "gc/accounting/card_table-inl.h"
 #include "gc_root-inl.h"
 #include "jvalue.h"
diff --git a/runtime/art_field.h b/runtime/art_field.h
index 8d2f9ff..46b013d 100644
--- a/runtime/art_field.h
+++ b/runtime/art_field.h
@@ -19,7 +19,7 @@
 
 #include <jni.h>
 
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "gc_root.h"
 #include "modifiers.h"
 #include "obj_ptr.h"
diff --git a/runtime/art_method-inl.h b/runtime/art_method-inl.h
index fc7920f..bdebe2d 100644
--- a/runtime/art_method-inl.h
+++ b/runtime/art_method-inl.h
@@ -22,11 +22,11 @@
 #include "art_field.h"
 #include "base/callee_save_type.h"
 #include "class_linker-inl.h"
-#include "code_item_accessors-inl.h"
 #include "common_throws.h"
-#include "dex_file-inl.h"
-#include "dex_file_annotations.h"
-#include "dex_file_types.h"
+#include "dex/code_item_accessors-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_annotations.h"
+#include "dex/dex_file_types.h"
 #include "gc_root-inl.h"
 #include "invoke_type.h"
 #include "jit/profiling_info.h"
diff --git a/runtime/art_method.cc b/runtime/art_method.cc
index d6e4ce5..44a5dde 100644
--- a/runtime/art_method.cc
+++ b/runtime/art_method.cc
@@ -25,9 +25,9 @@
 #include "base/stringpiece.h"
 #include "class_linker-inl.h"
 #include "debugger.h"
-#include "dex_file-inl.h"
-#include "dex_file_exception_helpers.h"
-#include "dex_instruction.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_exception_helpers.h"
+#include "dex/dex_instruction.h"
 #include "entrypoints/runtime_asm_entrypoints.h"
 #include "gc/accounting/card_table-inl.h"
 #include "interpreter/interpreter.h"
diff --git a/runtime/art_method.h b/runtime/art_method.h
index ab90a10..c4a586e 100644
--- a/runtime/art_method.h
+++ b/runtime/art_method.h
@@ -27,9 +27,9 @@
 #include "base/iteration_range.h"
 #include "base/macros.h"
 #include "base/runtime_debug.h"
-#include "code_item_accessors.h"
-#include "dex_file.h"
-#include "dex_instruction_iterator.h"
+#include "dex/code_item_accessors.h"
+#include "dex/dex_file.h"
+#include "dex/dex_instruction_iterator.h"
 #include "gc_root.h"
 #include "modifiers.h"
 #include "obj_ptr.h"
diff --git a/runtime/base/file_magic.cc b/runtime/base/file_magic.cc
index ac2e184..e668699 100644
--- a/runtime/base/file_magic.cc
+++ b/runtime/base/file_magic.cc
@@ -24,7 +24,7 @@
 #include <android-base/stringprintf.h>
 
 #include "base/unix_file/fd_file.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 
 namespace art {
 
diff --git a/runtime/base/file_utils.cc b/runtime/base/file_utils.cc
index db49860..63b4ac5 100644
--- a/runtime/base/file_utils.cc
+++ b/runtime/base/file_utils.cc
@@ -47,9 +47,9 @@
 
 #include "base/stl_util.h"
 #include "base/unix_file/fd_file.h"
-#include "dex_file-inl.h"
-#include "dex_file_loader.h"
-#include "dex_instruction.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_loader.h"
+#include "dex/dex_instruction.h"
 #include "oat_quick_method_header.h"
 #include "os.h"
 #include "scoped_thread_state_change-inl.h"
diff --git a/runtime/bytecode_utils.h b/runtime/bytecode_utils.h
index 815e0ba..a7e0abf 100644
--- a/runtime/bytecode_utils.h
+++ b/runtime/bytecode_utils.h
@@ -18,9 +18,9 @@
 #define ART_RUNTIME_BYTECODE_UTILS_H_
 
 #include "base/arena_object.h"
-#include "dex_file-inl.h"
-#include "dex_file.h"
-#include "dex_instruction-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file.h"
+#include "dex/dex_instruction-inl.h"
 
 namespace art {
 
diff --git a/runtime/check_jni.cc b/runtime/check_jni.cc
index ce4cee8..5549122 100644
--- a/runtime/check_jni.cc
+++ b/runtime/check_jni.cc
@@ -31,7 +31,7 @@
 #include "base/time_utils.h"
 #include "class_linker-inl.h"
 #include "class_linker.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "gc/space/space.h"
 #include "java_vm_ext.h"
 #include "jni_internal.h"
diff --git a/runtime/check_reference_map_visitor.h b/runtime/check_reference_map_visitor.h
index c4a613a..0c29e25 100644
--- a/runtime/check_reference_map_visitor.h
+++ b/runtime/check_reference_map_visitor.h
@@ -18,8 +18,8 @@
 #define ART_RUNTIME_CHECK_REFERENCE_MAP_VISITOR_H_
 
 #include "art_method-inl.h"
-#include "code_item_accessors-inl.h"
-#include "dex_file_types.h"
+#include "dex/code_item_accessors-inl.h"
+#include "dex/dex_file_types.h"
 #include "oat_quick_method_header.h"
 #include "scoped_thread_state_change-inl.h"
 #include "stack.h"
diff --git a/runtime/class_linker.cc b/runtime/class_linker.cc
index d18feae..8776542 100644
--- a/runtime/class_linker.cc
+++ b/runtime/class_linker.cc
@@ -50,9 +50,9 @@
 #include "class_table-inl.h"
 #include "compiler_callbacks.h"
 #include "debugger.h"
-#include "dex_file-inl.h"
-#include "dex_file_exception_helpers.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_exception_helpers.h"
+#include "dex/dex_file_loader.h"
 #include "entrypoints/entrypoint_utils.h"
 #include "entrypoints/runtime_asm_entrypoints.h"
 #include "experimental_flags.h"
diff --git a/runtime/class_linker.h b/runtime/class_linker.h
index b4e2937..3e3425f 100644
--- a/runtime/class_linker.h
+++ b/runtime/class_linker.h
@@ -27,9 +27,9 @@
 #include "base/enums.h"
 #include "base/macros.h"
 #include "base/mutex.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_types.h"
 #include "dex_cache_resolved_classes.h"
-#include "dex_file.h"
-#include "dex_file_types.h"
 #include "gc_root.h"
 #include "handle.h"
 #include "jni.h"
diff --git a/runtime/class_linker_test.cc b/runtime/class_linker_test.cc
index c386883..80ef654 100644
--- a/runtime/class_linker_test.cc
+++ b/runtime/class_linker_test.cc
@@ -26,7 +26,8 @@
 #include "base/enums.h"
 #include "class_linker-inl.h"
 #include "common_runtime_test.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
+#include "dex/standard_dex_file.h"
 #include "entrypoints/entrypoint_utils-inl.h"
 #include "experimental_flags.h"
 #include "gc/heap.h"
@@ -50,7 +51,6 @@
 #include "mirror/string-inl.h"
 #include "mirror/var_handle.h"
 #include "scoped_thread_state_change-inl.h"
-#include "standard_dex_file.h"
 #include "thread-current-inl.h"
 
 namespace art {
diff --git a/runtime/class_loader_context.cc b/runtime/class_loader_context.cc
index 54e7558..3ec5335 100644
--- a/runtime/class_loader_context.cc
+++ b/runtime/class_loader_context.cc
@@ -21,8 +21,8 @@
 #include "base/stl_util.h"
 #include "class_linker.h"
 #include "class_loader_utils.h"
-#include "dex_file.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_loader.h"
 #include "handle_scope-inl.h"
 #include "jni_internal.h"
 #include "oat_file_assistant.h"
diff --git a/runtime/class_loader_context_test.cc b/runtime/class_loader_context_test.cc
index fc3446c..bc72635 100644
--- a/runtime/class_loader_context_test.cc
+++ b/runtime/class_loader_context_test.cc
@@ -23,7 +23,7 @@
 #include "base/stl_util.h"
 #include "class_linker.h"
 #include "common_runtime_test.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "handle_scope-inl.h"
 #include "mirror/class.h"
 #include "mirror/class_loader.h"
diff --git a/runtime/class_reference.h b/runtime/class_reference.h
index 2ef9ab8..e8e668e 100644
--- a/runtime/class_reference.h
+++ b/runtime/class_reference.h
@@ -20,7 +20,7 @@
 #include <stdint.h>
 #include <utility>
 
-#include "dex_file_reference.h"
+#include "dex/dex_file_reference.h"
 
 namespace art {
 
diff --git a/runtime/class_table_test.cc b/runtime/class_table_test.cc
index 18c2b82..fdf6ad1 100644
--- a/runtime/class_table_test.cc
+++ b/runtime/class_table_test.cc
@@ -20,7 +20,7 @@
 #include "art_method-inl.h"
 #include "class_linker-inl.h"
 #include "common_runtime_test.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "gc/accounting/card_table-inl.h"
 #include "gc/heap.h"
 #include "handle_scope-inl.h"
diff --git a/runtime/common_dex_operations.h b/runtime/common_dex_operations.h
index 8988702..1db25c4 100644
--- a/runtime/common_dex_operations.h
+++ b/runtime/common_dex_operations.h
@@ -23,7 +23,7 @@
 #include "base/macros.h"
 #include "base/mutex.h"
 #include "class_linker.h"
-#include "code_item_accessors.h"
+#include "dex/code_item_accessors.h"
 #include "handle_scope-inl.h"
 #include "instrumentation.h"
 #include "interpreter/shadow_frame.h"
diff --git a/runtime/common_runtime_test.cc b/runtime/common_runtime_test.cc
index 6db4d92..96d660f 100644
--- a/runtime/common_runtime_test.cc
+++ b/runtime/common_runtime_test.cc
@@ -35,8 +35,8 @@
 #include "base/unix_file/fd_file.h"
 #include "class_linker.h"
 #include "compiler_callbacks.h"
-#include "dex_file-inl.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_loader.h"
 #include "gc/heap.h"
 #include "gc_root-inl.h"
 #include "gtest/gtest.h"
diff --git a/runtime/common_runtime_test.h b/runtime/common_runtime_test.h
index 625884d..1c73240 100644
--- a/runtime/common_runtime_test.h
+++ b/runtime/common_runtime_test.h
@@ -26,7 +26,7 @@
 
 #include "arch/instruction_set.h"
 #include "base/mutex.h"
-#include "cdex/compact_dex_level.h"
+#include "dex/compact_dex_level.h"
 #include "globals.h"
 // TODO: Add inl file and avoid including inl.
 #include "obj_ptr-inl.h"
diff --git a/runtime/common_throws.cc b/runtime/common_throws.cc
index 707885c..92d8651 100644
--- a/runtime/common_throws.cc
+++ b/runtime/common_throws.cc
@@ -24,8 +24,8 @@
 #include "art_field-inl.h"
 #include "art_method-inl.h"
 #include "class_linker-inl.h"
-#include "dex_file-inl.h"
-#include "dex_instruction-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_instruction-inl.h"
 #include "invoke_type.h"
 #include "mirror/class-inl.h"
 #include "mirror/method_type.h"
diff --git a/runtime/debugger.cc b/runtime/debugger.cc
index f504d86..842cd73 100644
--- a/runtime/debugger.cc
+++ b/runtime/debugger.cc
@@ -33,10 +33,10 @@
 #include "base/time_utils.h"
 #include "class_linker-inl.h"
 #include "class_linker.h"
-#include "dex_file-inl.h"
-#include "dex_file_annotations.h"
-#include "dex_file_types.h"
-#include "dex_instruction.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_annotations.h"
+#include "dex/dex_file_types.h"
+#include "dex/dex_instruction.h"
 #include "entrypoints/runtime_asm_entrypoints.h"
 #include "gc/accounting/card_table-inl.h"
 #include "gc/allocation_record.h"
diff --git a/runtime/code_item_accessors-inl.h b/runtime/dex/code_item_accessors-inl.h
similarity index 89%
rename from runtime/code_item_accessors-inl.h
rename to runtime/dex/code_item_accessors-inl.h
index f63ea69..2fdf262 100644
--- a/runtime/code_item_accessors-inl.h
+++ b/runtime/dex/code_item_accessors-inl.h
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_CODE_ITEM_ACCESSORS_INL_H_
-#define ART_RUNTIME_CODE_ITEM_ACCESSORS_INL_H_
+#ifndef ART_RUNTIME_DEX_CODE_ITEM_ACCESSORS_INL_H_
+#define ART_RUNTIME_DEX_CODE_ITEM_ACCESSORS_INL_H_
 
 #include "code_item_accessors-no_art-inl.h"
 
 #include "art_method-inl.h"
-#include "cdex/compact_dex_file.h"
+#include "compact_dex_file.h"
 #include "dex_file-inl.h"
 #include "oat_file.h"
 #include "standard_dex_file.h"
@@ -46,4 +46,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_CODE_ITEM_ACCESSORS_INL_H_
+#endif  // ART_RUNTIME_DEX_CODE_ITEM_ACCESSORS_INL_H_
diff --git a/runtime/code_item_accessors-no_art-inl.h b/runtime/dex/code_item_accessors-no_art-inl.h
similarity index 96%
rename from runtime/code_item_accessors-no_art-inl.h
rename to runtime/dex/code_item_accessors-no_art-inl.h
index 38ce8fb..016923d 100644
--- a/runtime/code_item_accessors-no_art-inl.h
+++ b/runtime/dex/code_item_accessors-no_art-inl.h
@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_CODE_ITEM_ACCESSORS_NO_ART_INL_H_
-#define ART_RUNTIME_CODE_ITEM_ACCESSORS_NO_ART_INL_H_
+#ifndef ART_RUNTIME_DEX_CODE_ITEM_ACCESSORS_NO_ART_INL_H_
+#define ART_RUNTIME_DEX_CODE_ITEM_ACCESSORS_NO_ART_INL_H_
 
 #include "code_item_accessors.h"
 
-#include "cdex/compact_dex_file.h"
+#include "compact_dex_file.h"
 #include "dex_file-inl.h"
 #include "standard_dex_file.h"
 
@@ -163,4 +163,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_CODE_ITEM_ACCESSORS_NO_ART_INL_H_
+#endif  // ART_RUNTIME_DEX_CODE_ITEM_ACCESSORS_NO_ART_INL_H_
diff --git a/runtime/code_item_accessors.h b/runtime/dex/code_item_accessors.h
similarity index 96%
rename from runtime/code_item_accessors.h
rename to runtime/dex/code_item_accessors.h
index 4cbe7a1..65cc0bf 100644
--- a/runtime/code_item_accessors.h
+++ b/runtime/dex/code_item_accessors.h
@@ -16,11 +16,11 @@
 
 // TODO: Dex helpers have ART specific APIs, we may want to refactor these for use in dexdump.
 
-#ifndef ART_RUNTIME_CODE_ITEM_ACCESSORS_H_
-#define ART_RUNTIME_CODE_ITEM_ACCESSORS_H_
+#ifndef ART_RUNTIME_DEX_CODE_ITEM_ACCESSORS_H_
+#define ART_RUNTIME_DEX_CODE_ITEM_ACCESSORS_H_
 
 #include "base/mutex.h"
-#include "cdex/compact_dex_file.h"
+#include "compact_dex_file.h"
 #include "dex_file.h"
 #include "dex_instruction_iterator.h"
 #include "standard_dex_file.h"
@@ -167,4 +167,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_CODE_ITEM_ACCESSORS_H_
+#endif  // ART_RUNTIME_DEX_CODE_ITEM_ACCESSORS_H_
diff --git a/runtime/code_item_accessors_test.cc b/runtime/dex/code_item_accessors_test.cc
similarity index 100%
rename from runtime/code_item_accessors_test.cc
rename to runtime/dex/code_item_accessors_test.cc
diff --git a/runtime/cdex/compact_dex_file.cc b/runtime/dex/compact_dex_file.cc
similarity index 100%
rename from runtime/cdex/compact_dex_file.cc
rename to runtime/dex/compact_dex_file.cc
diff --git a/runtime/cdex/compact_dex_file.h b/runtime/dex/compact_dex_file.h
similarity index 95%
rename from runtime/cdex/compact_dex_file.h
rename to runtime/dex/compact_dex_file.h
index 4343229..280c6f7 100644
--- a/runtime/cdex/compact_dex_file.h
+++ b/runtime/dex/compact_dex_file.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_CDEX_COMPACT_DEX_FILE_H_
-#define ART_RUNTIME_CDEX_COMPACT_DEX_FILE_H_
+#ifndef ART_RUNTIME_DEX_COMPACT_DEX_FILE_H_
+#define ART_RUNTIME_DEX_COMPACT_DEX_FILE_H_
 
 #include "base/casts.h"
 #include "dex_file.h"
@@ -97,4 +97,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_CDEX_COMPACT_DEX_FILE_H_
+#endif  // ART_RUNTIME_DEX_COMPACT_DEX_FILE_H_
diff --git a/runtime/cdex/compact_dex_file_test.cc b/runtime/dex/compact_dex_file_test.cc
similarity index 97%
rename from runtime/cdex/compact_dex_file_test.cc
rename to runtime/dex/compact_dex_file_test.cc
index b43b35d..d665dc9 100644
--- a/runtime/cdex/compact_dex_file_test.cc
+++ b/runtime/dex/compact_dex_file_test.cc
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-#include "cdex/compact_dex_file.h"
-#include "dex_file_loader.h"
 #include "common_runtime_test.h"
+#include "compact_dex_file.h"
+#include "dex_file_loader.h"
 
 namespace art {
 
diff --git a/runtime/cdex/compact_dex_level.h b/runtime/dex/compact_dex_level.h
similarity index 91%
rename from runtime/cdex/compact_dex_level.h
rename to runtime/dex/compact_dex_level.h
index 5aec001..de9ca3c 100644
--- a/runtime/cdex/compact_dex_level.h
+++ b/runtime/dex/compact_dex_level.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_CDEX_COMPACT_DEX_LEVEL_H_
-#define ART_RUNTIME_CDEX_COMPACT_DEX_LEVEL_H_
+#ifndef ART_RUNTIME_DEX_COMPACT_DEX_LEVEL_H_
+#define ART_RUNTIME_DEX_COMPACT_DEX_LEVEL_H_
 
 #include <string>
 
@@ -47,4 +47,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_CDEX_COMPACT_DEX_LEVEL_H_
+#endif  // ART_RUNTIME_DEX_COMPACT_DEX_LEVEL_H_
diff --git a/runtime/dex_file-inl.h b/runtime/dex/dex_file-inl.h
similarity index 98%
rename from runtime/dex_file-inl.h
rename to runtime/dex/dex_file-inl.h
index 90b3c8d..9b56328 100644
--- a/runtime/dex_file-inl.h
+++ b/runtime/dex/dex_file-inl.h
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_DEX_FILE_INL_H_
-#define ART_RUNTIME_DEX_FILE_INL_H_
+#ifndef ART_RUNTIME_DEX_DEX_FILE_INL_H_
+#define ART_RUNTIME_DEX_DEX_FILE_INL_H_
 
 #include "base/bit_utils.h"
 #include "base/casts.h"
 #include "base/stringpiece.h"
-#include "cdex/compact_dex_file.h"
+#include "compact_dex_file.h"
 #include "dex_file.h"
 #include "invoke_type.h"
 #include "leb128.h"
@@ -518,4 +518,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_DEX_FILE_INL_H_
+#endif  // ART_RUNTIME_DEX_DEX_FILE_INL_H_
diff --git a/runtime/dex_file.cc b/runtime/dex/dex_file.cc
similarity index 100%
rename from runtime/dex_file.cc
rename to runtime/dex/dex_file.cc
diff --git a/runtime/dex_file.h b/runtime/dex/dex_file.h
similarity index 99%
rename from runtime/dex_file.h
rename to runtime/dex/dex_file.h
index 6e11f09..c2a36ce 100644
--- a/runtime/dex_file.h
+++ b/runtime/dex/dex_file.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_DEX_FILE_H_
-#define ART_RUNTIME_DEX_FILE_H_
+#ifndef ART_RUNTIME_DEX_DEX_FILE_H_
+#define ART_RUNTIME_DEX_DEX_FILE_H_
 
 #include <memory>
 #include <string>
@@ -1456,4 +1456,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_DEX_FILE_H_
+#endif  // ART_RUNTIME_DEX_DEX_FILE_H_
diff --git a/runtime/dex_file_annotations.cc b/runtime/dex/dex_file_annotations.cc
similarity index 100%
rename from runtime/dex_file_annotations.cc
rename to runtime/dex/dex_file_annotations.cc
diff --git a/runtime/dex_file_annotations.h b/runtime/dex/dex_file_annotations.h
similarity index 97%
rename from runtime/dex_file_annotations.h
rename to runtime/dex/dex_file_annotations.h
index 9ff0929..2677372 100644
--- a/runtime/dex_file_annotations.h
+++ b/runtime/dex/dex_file_annotations.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_DEX_FILE_ANNOTATIONS_H_
-#define ART_RUNTIME_DEX_FILE_ANNOTATIONS_H_
+#ifndef ART_RUNTIME_DEX_DEX_FILE_ANNOTATIONS_H_
+#define ART_RUNTIME_DEX_DEX_FILE_ANNOTATIONS_H_
 
 #include "dex_file.h"
 
@@ -141,4 +141,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_DEX_FILE_ANNOTATIONS_H_
+#endif  // ART_RUNTIME_DEX_DEX_FILE_ANNOTATIONS_H_
diff --git a/runtime/dex_file_exception_helpers.cc b/runtime/dex/dex_file_exception_helpers.cc
similarity index 100%
rename from runtime/dex_file_exception_helpers.cc
rename to runtime/dex/dex_file_exception_helpers.cc
diff --git a/runtime/dex_file_exception_helpers.h b/runtime/dex/dex_file_exception_helpers.h
similarity index 92%
rename from runtime/dex_file_exception_helpers.h
rename to runtime/dex/dex_file_exception_helpers.h
index 739ed1f..bd6cb7e 100644
--- a/runtime/dex_file_exception_helpers.h
+++ b/runtime/dex/dex_file_exception_helpers.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_DEX_FILE_EXCEPTION_HELPERS_H_
-#define ART_RUNTIME_DEX_FILE_EXCEPTION_HELPERS_H_
+#ifndef ART_RUNTIME_DEX_DEX_FILE_EXCEPTION_HELPERS_H_
+#define ART_RUNTIME_DEX_DEX_FILE_EXCEPTION_HELPERS_H_
 
 #include "dex_file.h"
 
@@ -65,4 +65,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_DEX_FILE_EXCEPTION_HELPERS_H_
+#endif  // ART_RUNTIME_DEX_DEX_FILE_EXCEPTION_HELPERS_H_
diff --git a/runtime/dex_file_layout.cc b/runtime/dex/dex_file_layout.cc
similarity index 100%
rename from runtime/dex_file_layout.cc
rename to runtime/dex/dex_file_layout.cc
diff --git a/runtime/dex_file_layout.h b/runtime/dex/dex_file_layout.h
similarity index 96%
rename from runtime/dex_file_layout.h
rename to runtime/dex/dex_file_layout.h
index 9fac5f8..a7b9051 100644
--- a/runtime/dex_file_layout.h
+++ b/runtime/dex/dex_file_layout.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_DEX_FILE_LAYOUT_H_
-#define ART_RUNTIME_DEX_FILE_LAYOUT_H_
+#ifndef ART_RUNTIME_DEX_DEX_FILE_LAYOUT_H_
+#define ART_RUNTIME_DEX_DEX_FILE_LAYOUT_H_
 
 #include <algorithm>
 #include <cstdint>
@@ -121,4 +121,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_DEX_FILE_LAYOUT_H_
+#endif  // ART_RUNTIME_DEX_DEX_FILE_LAYOUT_H_
diff --git a/runtime/dex_file_loader.cc b/runtime/dex/dex_file_loader.cc
similarity index 99%
rename from runtime/dex_file_loader.cc
rename to runtime/dex/dex_file_loader.cc
index bc92769..fafd698 100644
--- a/runtime/dex_file_loader.cc
+++ b/runtime/dex/dex_file_loader.cc
@@ -25,7 +25,7 @@
 #include "base/stl_util.h"
 #include "base/systrace.h"
 #include "base/unix_file/fd_file.h"
-#include "cdex/compact_dex_file.h"
+#include "compact_dex_file.h"
 #include "dex_file.h"
 #include "dex_file_verifier.h"
 #include "standard_dex_file.h"
diff --git a/runtime/dex_file_loader.h b/runtime/dex/dex_file_loader.h
similarity index 98%
rename from runtime/dex_file_loader.h
rename to runtime/dex/dex_file_loader.h
index 1763123..7db8d8e 100644
--- a/runtime/dex_file_loader.h
+++ b/runtime/dex/dex_file_loader.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_DEX_FILE_LOADER_H_
-#define ART_RUNTIME_DEX_FILE_LOADER_H_
+#ifndef ART_RUNTIME_DEX_DEX_FILE_LOADER_H_
+#define ART_RUNTIME_DEX_DEX_FILE_LOADER_H_
 
 #include <cstdint>
 #include <memory>
@@ -202,4 +202,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_DEX_FILE_LOADER_H_
+#endif  // ART_RUNTIME_DEX_DEX_FILE_LOADER_H_
diff --git a/runtime/dex_file_reference.h b/runtime/dex/dex_file_reference.h
similarity index 90%
rename from runtime/dex_file_reference.h
rename to runtime/dex/dex_file_reference.h
index 01a6425..6f88290 100644
--- a/runtime/dex_file_reference.h
+++ b/runtime/dex/dex_file_reference.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_DEX_FILE_REFERENCE_H_
-#define ART_RUNTIME_DEX_FILE_REFERENCE_H_
+#ifndef ART_RUNTIME_DEX_DEX_FILE_REFERENCE_H_
+#define ART_RUNTIME_DEX_DEX_FILE_REFERENCE_H_
 
 #include <cstdint>
 
@@ -49,4 +49,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_DEX_FILE_REFERENCE_H_
+#endif  // ART_RUNTIME_DEX_DEX_FILE_REFERENCE_H_
diff --git a/runtime/dex_file_test.cc b/runtime/dex/dex_file_test.cc
similarity index 100%
rename from runtime/dex_file_test.cc
rename to runtime/dex/dex_file_test.cc
diff --git a/runtime/dex_file_tracking_registrar.cc b/runtime/dex/dex_file_tracking_registrar.cc
similarity index 100%
rename from runtime/dex_file_tracking_registrar.cc
rename to runtime/dex/dex_file_tracking_registrar.cc
diff --git a/runtime/dex_file_tracking_registrar.h b/runtime/dex/dex_file_tracking_registrar.h
similarity index 93%
rename from runtime/dex_file_tracking_registrar.h
rename to runtime/dex/dex_file_tracking_registrar.h
index 5c0e0f5..71b8ed7 100644
--- a/runtime/dex_file_tracking_registrar.h
+++ b/runtime/dex/dex_file_tracking_registrar.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_DEX_FILE_TRACKING_REGISTRAR_H_
-#define ART_RUNTIME_DEX_FILE_TRACKING_REGISTRAR_H_
+#ifndef ART_RUNTIME_DEX_DEX_FILE_TRACKING_REGISTRAR_H_
+#define ART_RUNTIME_DEX_DEX_FILE_TRACKING_REGISTRAR_H_
 
 #include <deque>
 #include <tuple>
@@ -78,4 +78,4 @@
 }  // namespace dex
 }  // namespace art
 
-#endif  // ART_RUNTIME_DEX_FILE_TRACKING_REGISTRAR_H_
+#endif  // ART_RUNTIME_DEX_DEX_FILE_TRACKING_REGISTRAR_H_
diff --git a/runtime/dex_file_types.h b/runtime/dex/dex_file_types.h
similarity index 95%
rename from runtime/dex_file_types.h
rename to runtime/dex/dex_file_types.h
index acca7c0..2c508f9 100644
--- a/runtime/dex_file_types.h
+++ b/runtime/dex/dex_file_types.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_DEX_FILE_TYPES_H_
-#define ART_RUNTIME_DEX_FILE_TYPES_H_
+#ifndef ART_RUNTIME_DEX_DEX_FILE_TYPES_H_
+#define ART_RUNTIME_DEX_DEX_FILE_TYPES_H_
 
 #include <limits>
 #include <ostream>
@@ -114,4 +114,4 @@
 
 }  // namespace std
 
-#endif  // ART_RUNTIME_DEX_FILE_TYPES_H_
+#endif  // ART_RUNTIME_DEX_DEX_FILE_TYPES_H_
diff --git a/runtime/dex_file_verifier.cc b/runtime/dex/dex_file_verifier.cc
similarity index 100%
rename from runtime/dex_file_verifier.cc
rename to runtime/dex/dex_file_verifier.cc
diff --git a/runtime/dex_file_verifier.h b/runtime/dex/dex_file_verifier.h
similarity index 98%
rename from runtime/dex_file_verifier.h
rename to runtime/dex/dex_file_verifier.h
index 23089fa..6cb5d4c 100644
--- a/runtime/dex_file_verifier.h
+++ b/runtime/dex/dex_file_verifier.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_DEX_FILE_VERIFIER_H_
-#define ART_RUNTIME_DEX_FILE_VERIFIER_H_
+#ifndef ART_RUNTIME_DEX_DEX_FILE_VERIFIER_H_
+#define ART_RUNTIME_DEX_DEX_FILE_VERIFIER_H_
 
 #include <unordered_set>
 
@@ -254,4 +254,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_DEX_FILE_VERIFIER_H_
+#endif  // ART_RUNTIME_DEX_DEX_FILE_VERIFIER_H_
diff --git a/runtime/dex_file_verifier_test.cc b/runtime/dex/dex_file_verifier_test.cc
similarity index 100%
rename from runtime/dex_file_verifier_test.cc
rename to runtime/dex/dex_file_verifier_test.cc
diff --git a/runtime/dex_instruction-inl.h b/runtime/dex/dex_instruction-inl.h
similarity index 98%
rename from runtime/dex_instruction-inl.h
rename to runtime/dex/dex_instruction-inl.h
index f6ed1f0..a6b8414 100644
--- a/runtime/dex_instruction-inl.h
+++ b/runtime/dex/dex_instruction-inl.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_DEX_INSTRUCTION_INL_H_
-#define ART_RUNTIME_DEX_INSTRUCTION_INL_H_
+#ifndef ART_RUNTIME_DEX_DEX_INSTRUCTION_INL_H_
+#define ART_RUNTIME_DEX_DEX_INSTRUCTION_INL_H_
 
 #include "dex_instruction.h"
 
@@ -555,4 +555,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_DEX_INSTRUCTION_INL_H_
+#endif  // ART_RUNTIME_DEX_DEX_INSTRUCTION_INL_H_
diff --git a/runtime/dex_instruction.cc b/runtime/dex/dex_instruction.cc
similarity index 100%
rename from runtime/dex_instruction.cc
rename to runtime/dex/dex_instruction.cc
diff --git a/runtime/dex_instruction.h b/runtime/dex/dex_instruction.h
similarity index 99%
rename from runtime/dex_instruction.h
rename to runtime/dex/dex_instruction.h
index 3ced692..8b1a5ce 100644
--- a/runtime/dex_instruction.h
+++ b/runtime/dex/dex_instruction.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_DEX_INSTRUCTION_H_
-#define ART_RUNTIME_DEX_INSTRUCTION_H_
+#ifndef ART_RUNTIME_DEX_DEX_INSTRUCTION_H_
+#define ART_RUNTIME_DEX_DEX_INSTRUCTION_H_
 
 #include <android-base/logging.h>
 
@@ -739,4 +739,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_DEX_INSTRUCTION_H_
+#endif  // ART_RUNTIME_DEX_DEX_INSTRUCTION_H_
diff --git a/runtime/dex_instruction_iterator.h b/runtime/dex/dex_instruction_iterator.h
similarity index 97%
rename from runtime/dex_instruction_iterator.h
rename to runtime/dex/dex_instruction_iterator.h
index eabe009..c1b3118 100644
--- a/runtime/dex_instruction_iterator.h
+++ b/runtime/dex/dex_instruction_iterator.h
@@ -14,15 +14,15 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_DEX_INSTRUCTION_ITERATOR_H_
-#define ART_RUNTIME_DEX_INSTRUCTION_ITERATOR_H_
+#ifndef ART_RUNTIME_DEX_DEX_INSTRUCTION_ITERATOR_H_
+#define ART_RUNTIME_DEX_DEX_INSTRUCTION_ITERATOR_H_
 
 #include <iterator>
 
 #include <android-base/logging.h>
 
-#include "dex_instruction.h"
 #include "base/macros.h"
+#include "dex_instruction.h"
 
 namespace art {
 
@@ -234,4 +234,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_DEX_INSTRUCTION_ITERATOR_H_
+#endif  // ART_RUNTIME_DEX_DEX_INSTRUCTION_ITERATOR_H_
diff --git a/runtime/dex_instruction_list.h b/runtime/dex/dex_instruction_list.h
similarity index 98%
rename from runtime/dex_instruction_list.h
rename to runtime/dex/dex_instruction_list.h
index ef83bdc..aa63fad 100644
--- a/runtime/dex_instruction_list.h
+++ b/runtime/dex/dex_instruction_list.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_DEX_INSTRUCTION_LIST_H_
-#define ART_RUNTIME_DEX_INSTRUCTION_LIST_H_
+#ifndef ART_RUNTIME_DEX_DEX_INSTRUCTION_LIST_H_
+#define ART_RUNTIME_DEX_DEX_INSTRUCTION_LIST_H_
 
 // V(opcode, instruction_code, name, format, index, flags, extended_flags, verifier_flags);
 #define DEX_INSTRUCTION_LIST(V) \
@@ -304,5 +304,5 @@
   V(k4rcc) \
   V(k51l)
 
-#endif  // ART_RUNTIME_DEX_INSTRUCTION_LIST_H_
-#undef ART_RUNTIME_DEX_INSTRUCTION_LIST_H_  // the guard in this file is just for cpplint
+#endif  // ART_RUNTIME_DEX_DEX_INSTRUCTION_LIST_H_
+#undef ART_RUNTIME_DEX_DEX_INSTRUCTION_LIST_H_  // the guard in this file is just for cpplint
diff --git a/runtime/dex_instruction_test.cc b/runtime/dex/dex_instruction_test.cc
similarity index 100%
rename from runtime/dex_instruction_test.cc
rename to runtime/dex/dex_instruction_test.cc
diff --git a/runtime/dex_instruction_utils.h b/runtime/dex/dex_instruction_utils.h
similarity index 97%
rename from runtime/dex_instruction_utils.h
rename to runtime/dex/dex_instruction_utils.h
index 72d8244..2750192 100644
--- a/runtime/dex_instruction_utils.h
+++ b/runtime/dex/dex_instruction_utils.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_DEX_INSTRUCTION_UTILS_H_
-#define ART_RUNTIME_DEX_INSTRUCTION_UTILS_H_
+#ifndef ART_RUNTIME_DEX_DEX_INSTRUCTION_UTILS_H_
+#define ART_RUNTIME_DEX_DEX_INSTRUCTION_UTILS_H_
 
 #include "dex_instruction.h"
 
@@ -216,4 +216,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_DEX_INSTRUCTION_UTILS_H_
+#endif  // ART_RUNTIME_DEX_DEX_INSTRUCTION_UTILS_H_
diff --git a/runtime/standard_dex_file.cc b/runtime/dex/standard_dex_file.cc
similarity index 100%
rename from runtime/standard_dex_file.cc
rename to runtime/dex/standard_dex_file.cc
diff --git a/runtime/standard_dex_file.h b/runtime/dex/standard_dex_file.h
similarity index 94%
rename from runtime/standard_dex_file.h
rename to runtime/dex/standard_dex_file.h
index 74749d2..fb2f720 100644
--- a/runtime/standard_dex_file.h
+++ b/runtime/dex/standard_dex_file.h
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ART_RUNTIME_STANDARD_DEX_FILE_H_
-#define ART_RUNTIME_STANDARD_DEX_FILE_H_
+#ifndef ART_RUNTIME_DEX_STANDARD_DEX_FILE_H_
+#define ART_RUNTIME_DEX_STANDARD_DEX_FILE_H_
 
 #include <iosfwd>
 
@@ -86,4 +86,4 @@
 
 }  // namespace art
 
-#endif  // ART_RUNTIME_STANDARD_DEX_FILE_H_
+#endif  // ART_RUNTIME_DEX_STANDARD_DEX_FILE_H_
diff --git a/runtime/dex2oat_environment_test.h b/runtime/dex2oat_environment_test.h
index 5f9b3cf..e459f09 100644
--- a/runtime/dex2oat_environment_test.h
+++ b/runtime/dex2oat_environment_test.h
@@ -27,7 +27,7 @@
 #include "base/stl_util.h"
 #include "common_runtime_test.h"
 #include "compiler_callbacks.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file_loader.h"
 #include "exec_utils.h"
 #include "gc/heap.h"
 #include "gc/space/image_space.h"
diff --git a/runtime/dex_cache_resolved_classes.h b/runtime/dex_cache_resolved_classes.h
index 2278b05..ca6afc5 100644
--- a/runtime/dex_cache_resolved_classes.h
+++ b/runtime/dex_cache_resolved_classes.h
@@ -21,7 +21,7 @@
 #include <unordered_set>
 #include <vector>
 
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 
 namespace art {
 
diff --git a/runtime/dex_to_dex_decompiler.cc b/runtime/dex_to_dex_decompiler.cc
index 7f36c4e..f3f2d52 100644
--- a/runtime/dex_to_dex_decompiler.cc
+++ b/runtime/dex_to_dex_decompiler.cc
@@ -21,9 +21,9 @@
 #include "base/macros.h"
 #include "base/mutex.h"
 #include "bytecode_utils.h"
-#include "code_item_accessors-inl.h"
-#include "dex_file-inl.h"
-#include "dex_instruction-inl.h"
+#include "dex/code_item_accessors-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_instruction-inl.h"
 #include "quicken_info.h"
 
 namespace art {
diff --git a/runtime/dex_to_dex_decompiler.h b/runtime/dex_to_dex_decompiler.h
index a2e3f28..93711d1 100644
--- a/runtime/dex_to_dex_decompiler.h
+++ b/runtime/dex_to_dex_decompiler.h
@@ -18,7 +18,7 @@
 #define ART_RUNTIME_DEX_TO_DEX_DECOMPILER_H_
 
 #include "base/array_ref.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 
 namespace art {
 namespace optimizer {
diff --git a/runtime/entrypoints/entrypoint_utils-inl.h b/runtime/entrypoints/entrypoint_utils-inl.h
index 9e50850..3048f45 100644
--- a/runtime/entrypoints/entrypoint_utils-inl.h
+++ b/runtime/entrypoints/entrypoint_utils-inl.h
@@ -24,7 +24,7 @@
 #include "base/enums.h"
 #include "class_linker-inl.h"
 #include "common_throws.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "entrypoints/quick/callee_save_frame.h"
 #include "handle_scope-inl.h"
 #include "imt_conflict_table.h"
diff --git a/runtime/entrypoints/entrypoint_utils.cc b/runtime/entrypoints/entrypoint_utils.cc
index f3450da..ffa138d 100644
--- a/runtime/entrypoints/entrypoint_utils.cc
+++ b/runtime/entrypoints/entrypoint_utils.cc
@@ -21,7 +21,7 @@
 #include "base/enums.h"
 #include "base/mutex.h"
 #include "class_linker-inl.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "entrypoints/entrypoint_utils-inl.h"
 #include "entrypoints/quick/callee_save_frame.h"
 #include "entrypoints/runtime_asm_entrypoints.h"
diff --git a/runtime/entrypoints/entrypoint_utils.h b/runtime/entrypoints/entrypoint_utils.h
index 830ef84..eb32153 100644
--- a/runtime/entrypoints/entrypoint_utils.h
+++ b/runtime/entrypoints/entrypoint_utils.h
@@ -23,8 +23,8 @@
 #include "base/callee_save_type.h"
 #include "base/macros.h"
 #include "base/mutex.h"
-#include "dex_file_types.h"
-#include "dex_instruction.h"
+#include "dex/dex_file_types.h"
+#include "dex/dex_instruction.h"
 #include "gc/allocator_type.h"
 #include "handle.h"
 #include "jvalue.h"
diff --git a/runtime/entrypoints/quick/quick_alloc_entrypoints.cc b/runtime/entrypoints/quick/quick_alloc_entrypoints.cc
index b8d96af..1ab67ec 100644
--- a/runtime/entrypoints/quick/quick_alloc_entrypoints.cc
+++ b/runtime/entrypoints/quick/quick_alloc_entrypoints.cc
@@ -19,7 +19,7 @@
 #include "art_method-inl.h"
 #include "base/enums.h"
 #include "callee_save_frame.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "entrypoints/entrypoint_utils-inl.h"
 #include "mirror/class-inl.h"
 #include "mirror/object-inl.h"
diff --git a/runtime/entrypoints/quick/quick_dexcache_entrypoints.cc b/runtime/entrypoints/quick/quick_dexcache_entrypoints.cc
index 9837838..cfb427f 100644
--- a/runtime/entrypoints/quick/quick_dexcache_entrypoints.cc
+++ b/runtime/entrypoints/quick/quick_dexcache_entrypoints.cc
@@ -19,8 +19,8 @@
 #include "callee_save_frame.h"
 #include "class_linker-inl.h"
 #include "class_table-inl.h"
-#include "dex_file-inl.h"
-#include "dex_file_types.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_types.h"
 #include "entrypoints/entrypoint_utils-inl.h"
 #include "gc/heap.h"
 #include "mirror/class-inl.h"
diff --git a/runtime/entrypoints/quick/quick_field_entrypoints.cc b/runtime/entrypoints/quick/quick_field_entrypoints.cc
index 7d34d24..62cc9de 100644
--- a/runtime/entrypoints/quick/quick_field_entrypoints.cc
+++ b/runtime/entrypoints/quick/quick_field_entrypoints.cc
@@ -20,7 +20,7 @@
 #include "art_method-inl.h"
 #include "base/callee_save_type.h"
 #include "callee_save_frame.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "entrypoints/entrypoint_utils-inl.h"
 #include "gc_root-inl.h"
 #include "mirror/class-inl.h"
diff --git a/runtime/entrypoints/quick/quick_trampoline_entrypoints.cc b/runtime/entrypoints/quick/quick_trampoline_entrypoints.cc
index 7192058..f727690 100644
--- a/runtime/entrypoints/quick/quick_trampoline_entrypoints.cc
+++ b/runtime/entrypoints/quick/quick_trampoline_entrypoints.cc
@@ -20,9 +20,9 @@
 #include "callee_save_frame.h"
 #include "common_throws.h"
 #include "debugger.h"
-#include "dex_file-inl.h"
-#include "dex_file_types.h"
-#include "dex_instruction-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_types.h"
+#include "dex/dex_instruction-inl.h"
 #include "entrypoints/entrypoint_utils-inl.h"
 #include "entrypoints/runtime_asm_entrypoints.h"
 #include "gc/accounting/card_table-inl.h"
diff --git a/runtime/fault_handler.cc b/runtime/fault_handler.cc
index f66836f..49c2a15 100644
--- a/runtime/fault_handler.cc
+++ b/runtime/fault_handler.cc
@@ -24,7 +24,7 @@
 #include "base/logging.h"  // For VLOG
 #include "base/safe_copy.h"
 #include "base/stl_util.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "mirror/class.h"
 #include "mirror/object_reference.h"
 #include "oat_quick_method_header.h"
diff --git a/runtime/gc/accounting/space_bitmap.cc b/runtime/gc/accounting/space_bitmap.cc
index 280c0b1..237ee80 100644
--- a/runtime/gc/accounting/space_bitmap.cc
+++ b/runtime/gc/accounting/space_bitmap.cc
@@ -19,7 +19,7 @@
 #include "android-base/stringprintf.h"
 
 #include "art_field-inl.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "mem_map.h"
 #include "mirror/class-inl.h"
 #include "mirror/object-inl.h"
diff --git a/runtime/gc/heap.cc b/runtime/gc/heap.cc
index d2df833..9edba96 100644
--- a/runtime/gc/heap.cc
+++ b/runtime/gc/heap.cc
@@ -38,7 +38,7 @@
 #include "common_throws.h"
 #include "cutils/sched_policy.h"
 #include "debugger.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "entrypoints/quick/quick_alloc_entrypoints.h"
 #include "gc/accounting/card_table-inl.h"
 #include "gc/accounting/heap_bitmap-inl.h"
diff --git a/runtime/gc/space/image_space.cc b/runtime/gc/space/image_space.cc
index bcfc68c..251d94c 100644
--- a/runtime/gc/space/image_space.cc
+++ b/runtime/gc/space/image_space.cc
@@ -36,7 +36,7 @@
 #include "base/stl_util.h"
 #include "base/systrace.h"
 #include "base/time_utils.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file_loader.h"
 #include "exec_utils.h"
 #include "gc/accounting/space_bitmap-inl.h"
 #include "image-inl.h"
diff --git a/runtime/hprof/hprof.cc b/runtime/hprof/hprof.cc
index f4fc85b..ea8a684 100644
--- a/runtime/hprof/hprof.cc
+++ b/runtime/hprof/hprof.cc
@@ -48,7 +48,7 @@
 #include "class_linker.h"
 #include "common_throws.h"
 #include "debugger.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "gc/accounting/heap_bitmap.h"
 #include "gc/allocation_record.h"
 #include "gc/heap-visit-objects-inl.h"
diff --git a/runtime/imtable-inl.h b/runtime/imtable-inl.h
index cb85fa6..6237cca 100644
--- a/runtime/imtable-inl.h
+++ b/runtime/imtable-inl.h
@@ -20,7 +20,7 @@
 #include "imtable.h"
 
 #include "art_method-inl.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "utf.h"
 
 namespace art {
diff --git a/runtime/instrumentation.cc b/runtime/instrumentation.cc
index a4ee21d..4524448 100644
--- a/runtime/instrumentation.cc
+++ b/runtime/instrumentation.cc
@@ -25,9 +25,9 @@
 #include "base/callee_save_type.h"
 #include "class_linker.h"
 #include "debugger.h"
-#include "dex_file-inl.h"
-#include "dex_file_types.h"
-#include "dex_instruction-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_types.h"
+#include "dex/dex_instruction-inl.h"
 #include "entrypoints/quick/quick_alloc_entrypoints.h"
 #include "entrypoints/quick/quick_entrypoints.h"
 #include "entrypoints/runtime_asm_entrypoints.h"
diff --git a/runtime/instrumentation_test.cc b/runtime/instrumentation_test.cc
index 89baa35..836bbe7 100644
--- a/runtime/instrumentation_test.cc
+++ b/runtime/instrumentation_test.cc
@@ -21,7 +21,7 @@
 #include "class_linker-inl.h"
 #include "common_runtime_test.h"
 #include "common_throws.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "gc/scoped_gc_critical_section.h"
 #include "handle_scope-inl.h"
 #include "jni_internal.h"
diff --git a/runtime/interpreter/interpreter.cc b/runtime/interpreter/interpreter.cc
index 9b81819..54db872 100644
--- a/runtime/interpreter/interpreter.cc
+++ b/runtime/interpreter/interpreter.cc
@@ -20,7 +20,7 @@
 
 #include "common_dex_operations.h"
 #include "common_throws.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "interpreter_common.h"
 #include "interpreter_mterp_impl.h"
 #include "interpreter_switch_impl.h"
diff --git a/runtime/interpreter/interpreter.h b/runtime/interpreter/interpreter.h
index f9d7774..0d43b90 100644
--- a/runtime/interpreter/interpreter.h
+++ b/runtime/interpreter/interpreter.h
@@ -18,7 +18,7 @@
 #define ART_RUNTIME_INTERPRETER_INTERPRETER_H_
 
 #include "base/mutex.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "obj_ptr.h"
 
 namespace art {
diff --git a/runtime/interpreter/interpreter_common.cc b/runtime/interpreter/interpreter_common.cc
index deed16b..475f938 100644
--- a/runtime/interpreter/interpreter_common.cc
+++ b/runtime/interpreter/interpreter_common.cc
@@ -20,7 +20,7 @@
 
 #include "base/enums.h"
 #include "debugger.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "entrypoints/runtime_asm_entrypoints.h"
 #include "intrinsics_enum.h"
 #include "jit/jit.h"
diff --git a/runtime/interpreter/interpreter_common.h b/runtime/interpreter/interpreter_common.h
index 269b013..8180222 100644
--- a/runtime/interpreter/interpreter_common.h
+++ b/runtime/interpreter/interpreter_common.h
@@ -37,8 +37,8 @@
 #include "class_linker-inl.h"
 #include "common_dex_operations.h"
 #include "common_throws.h"
-#include "dex_file-inl.h"
-#include "dex_instruction-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_instruction-inl.h"
 #include "entrypoints/entrypoint_utils-inl.h"
 #include "handle_scope-inl.h"
 #include "jit/jit.h"
diff --git a/runtime/interpreter/interpreter_intrinsics.cc b/runtime/interpreter/interpreter_intrinsics.cc
index 37593bc..99a4f76 100644
--- a/runtime/interpreter/interpreter_intrinsics.cc
+++ b/runtime/interpreter/interpreter_intrinsics.cc
@@ -16,7 +16,7 @@
 
 #include "interpreter/interpreter_intrinsics.h"
 
-#include "dex_instruction.h"
+#include "dex/dex_instruction.h"
 #include "intrinsics_enum.h"
 #include "interpreter/interpreter_common.h"
 
diff --git a/runtime/interpreter/interpreter_mterp_impl.h b/runtime/interpreter/interpreter_mterp_impl.h
index 7aa5a34..d8a764f 100644
--- a/runtime/interpreter/interpreter_mterp_impl.h
+++ b/runtime/interpreter/interpreter_mterp_impl.h
@@ -19,7 +19,7 @@
 
 #include "base/macros.h"
 #include "base/mutex.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "jvalue.h"
 #include "obj_ptr.h"
 
diff --git a/runtime/interpreter/interpreter_switch_impl.cc b/runtime/interpreter/interpreter_switch_impl.cc
index 81c1e1d..6f9cad8 100644
--- a/runtime/interpreter/interpreter_switch_impl.cc
+++ b/runtime/interpreter/interpreter_switch_impl.cc
@@ -17,7 +17,7 @@
 #include "interpreter_switch_impl.h"
 
 #include "base/enums.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "experimental_flags.h"
 #include "interpreter_common.h"
 #include "jit/jit.h"
diff --git a/runtime/interpreter/interpreter_switch_impl.h b/runtime/interpreter/interpreter_switch_impl.h
index aa0f854..50db337 100644
--- a/runtime/interpreter/interpreter_switch_impl.h
+++ b/runtime/interpreter/interpreter_switch_impl.h
@@ -19,7 +19,7 @@
 
 #include "base/macros.h"
 #include "base/mutex.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "jvalue.h"
 #include "obj_ptr.h"
 
diff --git a/runtime/interpreter/shadow_frame.h b/runtime/interpreter/shadow_frame.h
index be2c943..d5451ff 100644
--- a/runtime/interpreter/shadow_frame.h
+++ b/runtime/interpreter/shadow_frame.h
@@ -23,7 +23,7 @@
 
 #include "base/macros.h"
 #include "base/mutex.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "lock_count_data.h"
 #include "read_barrier.h"
 #include "stack_reference.h"
diff --git a/runtime/interpreter/unstarted_runtime.h b/runtime/interpreter/unstarted_runtime.h
index 2e86dea..b38c685 100644
--- a/runtime/interpreter/unstarted_runtime.h
+++ b/runtime/interpreter/unstarted_runtime.h
@@ -19,7 +19,7 @@
 
 #include "interpreter.h"
 
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "jvalue.h"
 
 namespace art {
diff --git a/runtime/interpreter/unstarted_runtime_test.cc b/runtime/interpreter/unstarted_runtime_test.cc
index 9db5f88..0986005 100644
--- a/runtime/interpreter/unstarted_runtime_test.cc
+++ b/runtime/interpreter/unstarted_runtime_test.cc
@@ -24,7 +24,7 @@
 #include "base/memory_tool.h"
 #include "class_linker.h"
 #include "common_runtime_test.h"
-#include "dex_instruction.h"
+#include "dex/dex_instruction.h"
 #include "handle.h"
 #include "handle_scope-inl.h"
 #include "interpreter/interpreter_common.h"
diff --git a/runtime/java_vm_ext.cc b/runtime/java_vm_ext.cc
index 579552d..da4c4b2 100644
--- a/runtime/java_vm_ext.cc
+++ b/runtime/java_vm_ext.cc
@@ -26,7 +26,7 @@
 #include "base/stl_util.h"
 #include "base/systrace.h"
 #include "check_jni.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "fault_handler.h"
 #include "gc/allocation_record.h"
 #include "gc/heap.h"
diff --git a/runtime/jit/jit_code_cache.cc b/runtime/jit/jit_code_cache.cc
index 6f03a68..659c55a 100644
--- a/runtime/jit/jit_code_cache.cc
+++ b/runtime/jit/jit_code_cache.cc
@@ -27,7 +27,7 @@
 #include "base/time_utils.h"
 #include "cha.h"
 #include "debugger_interface.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file_loader.h"
 #include "entrypoints/runtime_asm_entrypoints.h"
 #include "gc/accounting/bitmap-inl.h"
 #include "gc/scoped_gc_critical_section.h"
diff --git a/runtime/jit/profile_compilation_info.cc b/runtime/jit/profile_compilation_info.cc
index 7754777..74bf237 100644
--- a/runtime/jit/profile_compilation_info.cc
+++ b/runtime/jit/profile_compilation_info.cc
@@ -42,7 +42,7 @@
 #include "base/systrace.h"
 #include "base/time_utils.h"
 #include "base/unix_file/fd_file.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file_loader.h"
 #include "jit/profiling_info.h"
 #include "os.h"
 #include "safe_map.h"
diff --git a/runtime/jit/profile_compilation_info.h b/runtime/jit/profile_compilation_info.h
index 8dbb43f..7c30dee 100644
--- a/runtime/jit/profile_compilation_info.h
+++ b/runtime/jit/profile_compilation_info.h
@@ -25,8 +25,8 @@
 #include "base/arena_object.h"
 #include "bit_memory_region.h"
 #include "dex_cache_resolved_classes.h"
-#include "dex_file.h"
-#include "dex_file_types.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_types.h"
 #include "method_reference.h"
 #include "safe_map.h"
 #include "type_reference.h"
diff --git a/runtime/jit/profile_compilation_info_test.cc b/runtime/jit/profile_compilation_info_test.cc
index f155d7e..08042cc 100644
--- a/runtime/jit/profile_compilation_info_test.cc
+++ b/runtime/jit/profile_compilation_info_test.cc
@@ -20,7 +20,7 @@
 #include "base/unix_file/fd_file.h"
 #include "class_linker-inl.h"
 #include "common_runtime_test.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "handle_scope-inl.h"
 #include "jit/profile_compilation_info.h"
 #include "linear_alloc.h"
diff --git a/runtime/jit/profile_saver.cc b/runtime/jit/profile_saver.cc
index ee11cfd..8f0ac33 100644
--- a/runtime/jit/profile_saver.cc
+++ b/runtime/jit/profile_saver.cc
@@ -32,7 +32,7 @@
 #include "base/time_utils.h"
 #include "class_table-inl.h"
 #include "compiler_filter.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file_loader.h"
 #include "dex_reference_collection.h"
 #include "gc/collector_type.h"
 #include "gc/gc_cause.h"
diff --git a/runtime/jit/profiling_info.cc b/runtime/jit/profiling_info.cc
index 01481d1..9126bea 100644
--- a/runtime/jit/profiling_info.cc
+++ b/runtime/jit/profiling_info.cc
@@ -17,7 +17,7 @@
 #include "profiling_info.h"
 
 #include "art_method-inl.h"
-#include "dex_instruction.h"
+#include "dex/dex_instruction.h"
 #include "jit/jit.h"
 #include "jit/jit_code_cache.h"
 #include "scoped_thread_state_change-inl.h"
diff --git a/runtime/jni_internal.cc b/runtime/jni_internal.cc
index 53ae628..b8e6ebe 100644
--- a/runtime/jni_internal.cc
+++ b/runtime/jni_internal.cc
@@ -32,7 +32,7 @@
 #include "base/mutex.h"
 #include "base/stl_util.h"
 #include "class_linker-inl.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "fault_handler.h"
 #include "gc/accounting/card_table-inl.h"
 #include "gc_root.h"
diff --git a/runtime/method_handles-inl.h b/runtime/method_handles-inl.h
index 08b8ad9..2bc71f4 100644
--- a/runtime/method_handles-inl.h
+++ b/runtime/method_handles-inl.h
@@ -20,7 +20,7 @@
 #include "method_handles.h"
 
 #include "common_throws.h"
-#include "dex_instruction.h"
+#include "dex/dex_instruction.h"
 #include "interpreter/interpreter_common.h"
 #include "jvalue.h"
 #include "mirror/class.h"
diff --git a/runtime/method_handles.h b/runtime/method_handles.h
index bc74bf2..6ffd1a8 100644
--- a/runtime/method_handles.h
+++ b/runtime/method_handles.h
@@ -19,7 +19,7 @@
 
 #include <ostream>
 
-#include "dex_instruction.h"
+#include "dex/dex_instruction.h"
 #include "handle.h"
 #include "interpreter/shadow_frame.h"
 #include "jvalue.h"
diff --git a/runtime/method_reference.h b/runtime/method_reference.h
index 31f3b8e..50b6d6e 100644
--- a/runtime/method_reference.h
+++ b/runtime/method_reference.h
@@ -19,8 +19,8 @@
 
 #include <stdint.h>
 #include <string>
-#include "dex_file.h"
-#include "dex_file_reference.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_reference.h"
 
 namespace art {
 
diff --git a/runtime/mirror/array.cc b/runtime/mirror/array.cc
index 6218dd9..25283bc 100644
--- a/runtime/mirror/array.cc
+++ b/runtime/mirror/array.cc
@@ -20,7 +20,7 @@
 #include "class.h"
 #include "class_linker-inl.h"
 #include "common_throws.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "gc/accounting/card_table-inl.h"
 #include "handle_scope-inl.h"
 #include "object-inl.h"
diff --git a/runtime/mirror/class-inl.h b/runtime/mirror/class-inl.h
index b4f5d81..302a5e6 100644
--- a/runtime/mirror/class-inl.h
+++ b/runtime/mirror/class-inl.h
@@ -27,7 +27,7 @@
 #include "class_loader.h"
 #include "common_throws.h"
 #include "dex_cache.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "gc/heap-inl.h"
 #include "iftable.h"
 #include "invoke_type.h"
diff --git a/runtime/mirror/class.cc b/runtime/mirror/class.cc
index 6bee3cf..8a7defd 100644
--- a/runtime/mirror/class.cc
+++ b/runtime/mirror/class.cc
@@ -25,9 +25,9 @@
 #include "class_ext.h"
 #include "class_linker-inl.h"
 #include "class_loader.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_annotations.h"
 #include "dex_cache.h"
-#include "dex_file-inl.h"
-#include "dex_file_annotations.h"
 #include "gc/accounting/card_table-inl.h"
 #include "handle_scope-inl.h"
 #include "subtype_check.h"
diff --git a/runtime/mirror/class.h b/runtime/mirror/class.h
index 95fc35d..55c5889 100644
--- a/runtime/mirror/class.h
+++ b/runtime/mirror/class.h
@@ -23,8 +23,8 @@
 #include "base/iteration_range.h"
 #include "class_flags.h"
 #include "class_status.h"
-#include "dex_file.h"
-#include "dex_file_types.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_types.h"
 #include "gc/allocator_type.h"
 #include "gc_root.h"
 #include "imtable.h"
diff --git a/runtime/mirror/class_ext.cc b/runtime/mirror/class_ext.cc
index 32d49bb..c18b219 100644
--- a/runtime/mirror/class_ext.cc
+++ b/runtime/mirror/class_ext.cc
@@ -20,7 +20,7 @@
 #include "base/casts.h"
 #include "base/enums.h"
 #include "class-inl.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "gc/accounting/card_table-inl.h"
 #include "object-inl.h"
 #include "object_array.h"
diff --git a/runtime/mirror/dex_cache-inl.h b/runtime/mirror/dex_cache-inl.h
index e1d04e2..573244e 100644
--- a/runtime/mirror/dex_cache-inl.h
+++ b/runtime/mirror/dex_cache-inl.h
@@ -26,7 +26,7 @@
 #include "base/casts.h"
 #include "base/enums.h"
 #include "class_linker.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "gc/heap-inl.h"
 #include "gc_root.h"
 #include "mirror/call_site.h"
diff --git a/runtime/mirror/dex_cache.h b/runtime/mirror/dex_cache.h
index 509db02..b46d80c 100644
--- a/runtime/mirror/dex_cache.h
+++ b/runtime/mirror/dex_cache.h
@@ -20,7 +20,7 @@
 #include "array.h"
 #include "base/bit_utils.h"
 #include "base/mutex.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "object.h"
 #include "object_array.h"
 
diff --git a/runtime/mirror/emulated_stack_frame.h b/runtime/mirror/emulated_stack_frame.h
index b6aa949..9bfa4d6 100644
--- a/runtime/mirror/emulated_stack_frame.h
+++ b/runtime/mirror/emulated_stack_frame.h
@@ -17,7 +17,7 @@
 #ifndef ART_RUNTIME_MIRROR_EMULATED_STACK_FRAME_H_
 #define ART_RUNTIME_MIRROR_EMULATED_STACK_FRAME_H_
 
-#include "dex_instruction.h"
+#include "dex/dex_instruction.h"
 #include "method_type.h"
 #include "object.h"
 #include "stack.h"
diff --git a/runtime/mirror/object.cc b/runtime/mirror/object.cc
index 52e6a7e..3765d0a 100644
--- a/runtime/mirror/object.cc
+++ b/runtime/mirror/object.cc
@@ -24,7 +24,7 @@
 #include "class-inl.h"
 #include "class.h"
 #include "class_linker-inl.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "gc/accounting/card_table-inl.h"
 #include "gc/heap.h"
 #include "handle_scope-inl.h"
diff --git a/runtime/mirror/object_test.cc b/runtime/mirror/object_test.cc
index 1a0fc76..32a99eb 100644
--- a/runtime/mirror/object_test.cc
+++ b/runtime/mirror/object_test.cc
@@ -29,7 +29,7 @@
 #include "class_linker-inl.h"
 #include "class_linker.h"
 #include "common_runtime_test.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "entrypoints/entrypoint_utils-inl.h"
 #include "gc/accounting/card_table-inl.h"
 #include "gc/heap.h"
diff --git a/runtime/mirror/throwable.cc b/runtime/mirror/throwable.cc
index 077ad50..a7a6d08 100644
--- a/runtime/mirror/throwable.cc
+++ b/runtime/mirror/throwable.cc
@@ -21,7 +21,7 @@
 #include "art_method-inl.h"
 #include "base/enums.h"
 #include "class-inl.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "gc/accounting/card_table-inl.h"
 #include "object-inl.h"
 #include "object_array-inl.h"
diff --git a/runtime/monitor.cc b/runtime/monitor.cc
index 475ec21..325591f 100644
--- a/runtime/monitor.cc
+++ b/runtime/monitor.cc
@@ -27,9 +27,9 @@
 #include "base/systrace.h"
 #include "base/time_utils.h"
 #include "class_linker.h"
-#include "dex_file-inl.h"
-#include "dex_file_types.h"
-#include "dex_instruction-inl.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_types.h"
+#include "dex/dex_instruction-inl.h"
 #include "lock_word-inl.h"
 #include "mirror/class-inl.h"
 #include "mirror/object-inl.h"
diff --git a/runtime/native/dalvik_system_DexFile.cc b/runtime/native/dalvik_system_DexFile.cc
index c0de374..a992b5c 100644
--- a/runtime/native/dalvik_system_DexFile.cc
+++ b/runtime/native/dalvik_system_DexFile.cc
@@ -27,8 +27,8 @@
 #include <class_loader_context.h>
 #include "common_throws.h"
 #include "compiler_filter.h"
-#include "dex_file-inl.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_loader.h"
 #include "jni_internal.h"
 #include "mirror/class_loader.h"
 #include "mirror/object-inl.h"
diff --git a/runtime/native/dalvik_system_VMRuntime.cc b/runtime/native/dalvik_system_VMRuntime.cc
index 6446e1b..400518d 100644
--- a/runtime/native/dalvik_system_VMRuntime.cc
+++ b/runtime/native/dalvik_system_VMRuntime.cc
@@ -32,8 +32,8 @@
 #include "class_linker-inl.h"
 #include "common_throws.h"
 #include "debugger.h"
-#include "dex_file-inl.h"
-#include "dex_file_types.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_types.h"
 #include "gc/accounting/card_table-inl.h"
 #include "gc/allocator/dlmalloc.h"
 #include "gc/heap.h"
diff --git a/runtime/native/java_lang_Class.cc b/runtime/native/java_lang_Class.cc
index da5cee1..7b999c0 100644
--- a/runtime/native/java_lang_Class.cc
+++ b/runtime/native/java_lang_Class.cc
@@ -23,8 +23,8 @@
 #include "base/enums.h"
 #include "class_linker-inl.h"
 #include "common_throws.h"
-#include "dex_file-inl.h"
-#include "dex_file_annotations.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_annotations.h"
 #include "jni_internal.h"
 #include "mirror/class-inl.h"
 #include "mirror/class_loader.h"
diff --git a/runtime/native/java_lang_VMClassLoader.cc b/runtime/native/java_lang_VMClassLoader.cc
index 5130ad5..6eebff4 100644
--- a/runtime/native/java_lang_VMClassLoader.cc
+++ b/runtime/native/java_lang_VMClassLoader.cc
@@ -17,7 +17,7 @@
 #include "java_lang_VMClassLoader.h"
 
 #include "class_linker.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file_loader.h"
 #include "jni_internal.h"
 #include "mirror/class_loader.h"
 #include "mirror/object-inl.h"
diff --git a/runtime/native/java_lang_reflect_Array.cc b/runtime/native/java_lang_reflect_Array.cc
index 5be3171..12d4008 100644
--- a/runtime/native/java_lang_reflect_Array.cc
+++ b/runtime/native/java_lang_reflect_Array.cc
@@ -20,7 +20,7 @@
 
 #include "class_linker-inl.h"
 #include "common_throws.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "handle_scope-inl.h"
 #include "jni_internal.h"
 #include "mirror/class-inl.h"
diff --git a/runtime/native/java_lang_reflect_Constructor.cc b/runtime/native/java_lang_reflect_Constructor.cc
index abbb347..8612438 100644
--- a/runtime/native/java_lang_reflect_Constructor.cc
+++ b/runtime/native/java_lang_reflect_Constructor.cc
@@ -22,7 +22,7 @@
 #include "base/enums.h"
 #include "class_linker-inl.h"
 #include "class_linker.h"
-#include "dex_file_annotations.h"
+#include "dex/dex_file_annotations.h"
 #include "jni_internal.h"
 #include "mirror/class-inl.h"
 #include "mirror/method.h"
diff --git a/runtime/native/java_lang_reflect_Executable.cc b/runtime/native/java_lang_reflect_Executable.cc
index f209f1d..e37c14b 100644
--- a/runtime/native/java_lang_reflect_Executable.cc
+++ b/runtime/native/java_lang_reflect_Executable.cc
@@ -20,7 +20,7 @@
 #include "nativehelper/jni_macros.h"
 
 #include "art_method-inl.h"
-#include "dex_file_annotations.h"
+#include "dex/dex_file_annotations.h"
 #include "handle.h"
 #include "jni_internal.h"
 #include "mirror/class-inl.h"
diff --git a/runtime/native/java_lang_reflect_Field.cc b/runtime/native/java_lang_reflect_Field.cc
index 2e4dd8a..f990c04 100644
--- a/runtime/native/java_lang_reflect_Field.cc
+++ b/runtime/native/java_lang_reflect_Field.cc
@@ -23,8 +23,8 @@
 #include "class_linker-inl.h"
 #include "class_linker.h"
 #include "common_throws.h"
-#include "dex_file-inl.h"
-#include "dex_file_annotations.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_annotations.h"
 #include "jni_internal.h"
 #include "mirror/class-inl.h"
 #include "mirror/field-inl.h"
diff --git a/runtime/native/java_lang_reflect_Method.cc b/runtime/native/java_lang_reflect_Method.cc
index 18ff9c3..b604dc0 100644
--- a/runtime/native/java_lang_reflect_Method.cc
+++ b/runtime/native/java_lang_reflect_Method.cc
@@ -22,7 +22,7 @@
 #include "base/enums.h"
 #include "class_linker-inl.h"
 #include "class_linker.h"
-#include "dex_file_annotations.h"
+#include "dex/dex_file_annotations.h"
 #include "jni_internal.h"
 #include "mirror/class-inl.h"
 #include "mirror/object-inl.h"
diff --git a/runtime/native/java_lang_reflect_Parameter.cc b/runtime/native/java_lang_reflect_Parameter.cc
index c4ab5d6..0b3015b 100644
--- a/runtime/native/java_lang_reflect_Parameter.cc
+++ b/runtime/native/java_lang_reflect_Parameter.cc
@@ -21,8 +21,8 @@
 
 #include "art_method-inl.h"
 #include "common_throws.h"
-#include "dex_file-inl.h"
-#include "dex_file_annotations.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_annotations.h"
 #include "jni_internal.h"
 #include "native_util.h"
 #include "scoped_fast_native_object_access-inl.h"
diff --git a/runtime/native_bridge_art_interface.cc b/runtime/native_bridge_art_interface.cc
index 10d1091..7d72805 100644
--- a/runtime/native_bridge_art_interface.cc
+++ b/runtime/native_bridge_art_interface.cc
@@ -24,7 +24,7 @@
 #include "base/enums.h"
 #include "base/logging.h"  // For VLOG.
 #include "base/macros.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "jni_internal.h"
 #include "mirror/class-inl.h"
 #include "scoped_thread_state_change-inl.h"
diff --git a/runtime/oat.h b/runtime/oat.h
index 7d1bf85..6d4f18b 100644
--- a/runtime/oat.h
+++ b/runtime/oat.h
@@ -22,7 +22,7 @@
 #include "arch/instruction_set.h"
 #include "base/macros.h"
 #include "compiler_filter.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "safe_map.h"
 
 namespace art {
diff --git a/runtime/oat_file.cc b/runtime/oat_file.cc
index 7a3014e..df07a19 100644
--- a/runtime/oat_file.cc
+++ b/runtime/oat_file.cc
@@ -43,8 +43,9 @@
 #include "base/stl_util.h"
 #include "base/systrace.h"
 #include "base/unix_file/fd_file.h"
-#include "dex_file_types.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file_loader.h"
+#include "dex/dex_file_types.h"
+#include "dex/standard_dex_file.h"
 #include "elf_file.h"
 #include "elf_utils.h"
 #include "gc_root.h"
@@ -57,7 +58,6 @@
 #include "oat_file_manager.h"
 #include "os.h"
 #include "runtime.h"
-#include "standard_dex_file.h"
 #include "type_lookup_table.h"
 #include "utf-inl.h"
 #include "utils.h"
diff --git a/runtime/oat_file.h b/runtime/oat_file.h
index 2ed1c82..02318b6 100644
--- a/runtime/oat_file.h
+++ b/runtime/oat_file.h
@@ -26,8 +26,8 @@
 #include "base/stringpiece.h"
 #include "class_status.h"
 #include "compiler_filter.h"
-#include "dex_file.h"
-#include "dex_file_layout.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_layout.h"
 #include "index_bss_mapping.h"
 #include "mirror/object.h"
 #include "oat.h"
diff --git a/runtime/oat_file_assistant.cc b/runtime/oat_file_assistant.cc
index 8707e73..240030c 100644
--- a/runtime/oat_file_assistant.cc
+++ b/runtime/oat_file_assistant.cc
@@ -28,7 +28,7 @@
 #include "base/stl_util.h"
 #include "class_linker.h"
 #include "compiler_filter.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file_loader.h"
 #include "exec_utils.h"
 #include "gc/heap.h"
 #include "gc/space/image_space.h"
diff --git a/runtime/oat_file_manager.cc b/runtime/oat_file_manager.cc
index 91a138a..29b9bfc 100644
--- a/runtime/oat_file_manager.cc
+++ b/runtime/oat_file_manager.cc
@@ -31,9 +31,9 @@
 #include "base/systrace.h"
 #include "class_linker.h"
 #include "class_loader_context.h"
-#include "dex_file-inl.h"
-#include "dex_file_loader.h"
-#include "dex_file_tracking_registrar.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_loader.h"
+#include "dex/dex_file_tracking_registrar.h"
 #include "gc/scoped_gc_critical_section.h"
 #include "gc/space/image_space.h"
 #include "handle_scope-inl.h"
diff --git a/runtime/oat_quick_method_header.cc b/runtime/oat_quick_method_header.cc
index aa28fd8..98238e5 100644
--- a/runtime/oat_quick_method_header.cc
+++ b/runtime/oat_quick_method_header.cc
@@ -17,7 +17,7 @@
 #include "oat_quick_method_header.h"
 
 #include "art_method.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "scoped_thread_state_change-inl.h"
 #include "thread.h"
 
diff --git a/runtime/quick_exception_handler.cc b/runtime/quick_exception_handler.cc
index 06b94c3..3a7640f 100644
--- a/runtime/quick_exception_handler.cc
+++ b/runtime/quick_exception_handler.cc
@@ -20,8 +20,8 @@
 #include "art_method-inl.h"
 #include "base/enums.h"
 #include "base/logging.h"  // For VLOG_IS_ON.
-#include "dex_file_types.h"
-#include "dex_instruction.h"
+#include "dex/dex_file_types.h"
+#include "dex/dex_instruction.h"
 #include "entrypoints/entrypoint_utils.h"
 #include "entrypoints/quick/quick_entrypoints_enum.h"
 #include "entrypoints/runtime_asm_entrypoints.h"
diff --git a/runtime/quicken_info.h b/runtime/quicken_info.h
index 5b72468..ce11f3c 100644
--- a/runtime/quicken_info.h
+++ b/runtime/quicken_info.h
@@ -17,7 +17,7 @@
 #ifndef ART_RUNTIME_QUICKEN_INFO_H_
 #define ART_RUNTIME_QUICKEN_INFO_H_
 
-#include "dex_instruction.h"
+#include "dex/dex_instruction.h"
 
 namespace art {
 
diff --git a/runtime/reflection.cc b/runtime/reflection.cc
index cacbe87..635a03a 100644
--- a/runtime/reflection.cc
+++ b/runtime/reflection.cc
@@ -21,7 +21,7 @@
 #include "base/enums.h"
 #include "class_linker.h"
 #include "common_throws.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "indirect_reference_table-inl.h"
 #include "java_vm_ext.h"
 #include "jni_internal.h"
diff --git a/runtime/runtime.cc b/runtime/runtime.cc
index e1610ab..e8fa572 100644
--- a/runtime/runtime.cc
+++ b/runtime/runtime.cc
@@ -69,7 +69,7 @@
 #include "class_linker-inl.h"
 #include "compiler_callbacks.h"
 #include "debugger.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file_loader.h"
 #include "elf_file.h"
 #include "entrypoints/runtime_asm_entrypoints.h"
 #include "experimental_flags.h"
diff --git a/runtime/runtime.h b/runtime/runtime.h
index ac29ed4..c3abfe0 100644
--- a/runtime/runtime.h
+++ b/runtime/runtime.h
@@ -31,7 +31,7 @@
 #include "base/macros.h"
 #include "base/mutex.h"
 #include "deoptimization_kind.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "experimental_flags.h"
 #include "gc_root.h"
 #include "instrumentation.h"
diff --git a/runtime/runtime_callbacks.h b/runtime/runtime_callbacks.h
index f405c9f..24386ba 100644
--- a/runtime/runtime_callbacks.h
+++ b/runtime/runtime_callbacks.h
@@ -22,7 +22,7 @@
 #include "base/array_ref.h"
 #include "base/macros.h"
 #include "base/mutex.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "handle.h"
 
 namespace art {
diff --git a/runtime/stack.cc b/runtime/stack.cc
index bbea48b..dfdea28 100644
--- a/runtime/stack.cc
+++ b/runtime/stack.cc
@@ -23,7 +23,7 @@
 #include "base/callee_save_type.h"
 #include "base/enums.h"
 #include "base/hex_dump.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "entrypoints/entrypoint_utils-inl.h"
 #include "entrypoints/runtime_asm_entrypoints.h"
 #include "gc/space/image_space.h"
diff --git a/runtime/stack_map.h b/runtime/stack_map.h
index 85c734e..62fb54f 100644
--- a/runtime/stack_map.h
+++ b/runtime/stack_map.h
@@ -23,8 +23,8 @@
 #include "base/bit_utils.h"
 #include "base/bit_vector.h"
 #include "bit_memory_region.h"
+#include "dex/dex_file_types.h"
 #include "leb128.h"
-#include "dex_file_types.h"
 #include "memory_region.h"
 #include "method_info.h"
 
diff --git a/runtime/string_reference.h b/runtime/string_reference.h
index 24a4253..97661c6 100644
--- a/runtime/string_reference.h
+++ b/runtime/string_reference.h
@@ -21,9 +21,9 @@
 
 #include <android-base/logging.h>
 
-#include "dex_file-inl.h"
-#include "dex_file_reference.h"
-#include "dex_file_types.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_reference.h"
+#include "dex/dex_file_types.h"
 #include "utf-inl.h"
 
 namespace art {
diff --git a/runtime/thread.cc b/runtime/thread.cc
index b539fb8..5518611 100644
--- a/runtime/thread.cc
+++ b/runtime/thread.cc
@@ -47,9 +47,9 @@
 #include "base/to_str.h"
 #include "class_linker-inl.h"
 #include "debugger.h"
-#include "dex_file-inl.h"
-#include "dex_file_annotations.h"
-#include "dex_file_types.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_annotations.h"
+#include "dex/dex_file_types.h"
 #include "entrypoints/entrypoint_utils.h"
 #include "entrypoints/quick/quick_alloc_entrypoints.h"
 #include "gc/accounting/card_table-inl.h"
diff --git a/runtime/trace.cc b/runtime/trace.cc
index d9038b2..f9d22df 100644
--- a/runtime/trace.cc
+++ b/runtime/trace.cc
@@ -31,7 +31,7 @@
 #include "class_linker.h"
 #include "common_throws.h"
 #include "debugger.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "entrypoints/quick/quick_entrypoints.h"
 #include "gc/scoped_gc_critical_section.h"
 #include "instrumentation.h"
diff --git a/runtime/transaction.h b/runtime/transaction.h
index 4e9cde5..8539ebc 100644
--- a/runtime/transaction.h
+++ b/runtime/transaction.h
@@ -20,7 +20,7 @@
 #include "base/macros.h"
 #include "base/mutex.h"
 #include "base/value_object.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "gc_root.h"
 #include "offsets.h"
 #include "primitive.h"
diff --git a/runtime/transaction_test.cc b/runtime/transaction_test.cc
index 0bad548..02e61d7 100644
--- a/runtime/transaction_test.cc
+++ b/runtime/transaction_test.cc
@@ -20,7 +20,7 @@
 #include "art_method-inl.h"
 #include "class_linker-inl.h"
 #include "common_runtime_test.h"
-#include "dex_file.h"
+#include "dex/dex_file.h"
 #include "mirror/array-inl.h"
 #include "scoped_thread_state_change-inl.h"
 
diff --git a/runtime/type_lookup_table.cc b/runtime/type_lookup_table.cc
index 4fab39c..6eb3d83 100644
--- a/runtime/type_lookup_table.cc
+++ b/runtime/type_lookup_table.cc
@@ -20,7 +20,7 @@
 #include <memory>
 
 #include "base/bit_utils.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "utf-inl.h"
 #include "utils.h"
 
diff --git a/runtime/type_lookup_table.h b/runtime/type_lookup_table.h
index 780b380..6a6f47f 100644
--- a/runtime/type_lookup_table.h
+++ b/runtime/type_lookup_table.h
@@ -17,7 +17,7 @@
 #ifndef ART_RUNTIME_TYPE_LOOKUP_TABLE_H_
 #define ART_RUNTIME_TYPE_LOOKUP_TABLE_H_
 
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "leb128.h"
 #include "utf.h"
 
diff --git a/runtime/type_lookup_table_test.cc b/runtime/type_lookup_table_test.cc
index 0f8f288..d04652a 100644
--- a/runtime/type_lookup_table_test.cc
+++ b/runtime/type_lookup_table_test.cc
@@ -19,7 +19,7 @@
 #include <memory>
 
 #include "common_runtime_test.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "scoped_thread_state_change-inl.h"
 #include "utf-inl.h"
 
diff --git a/runtime/type_reference.h b/runtime/type_reference.h
index 10a67b1..2b0b99f 100644
--- a/runtime/type_reference.h
+++ b/runtime/type_reference.h
@@ -21,7 +21,7 @@
 
 #include <android-base/logging.h>
 
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "string_reference.h"
 
 namespace art {
diff --git a/runtime/utils.cc b/runtime/utils.cc
index f6533a7..bd4175f 100644
--- a/runtime/utils.cc
+++ b/runtime/utils.cc
@@ -30,7 +30,7 @@
 #include "android-base/strings.h"
 
 #include "base/file_utils.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "os.h"
 #include "utf-inl.h"
 
diff --git a/runtime/utils/dex_cache_arrays_layout.h b/runtime/utils/dex_cache_arrays_layout.h
index fc04159..6f689f3 100644
--- a/runtime/utils/dex_cache_arrays_layout.h
+++ b/runtime/utils/dex_cache_arrays_layout.h
@@ -17,8 +17,8 @@
 #ifndef ART_RUNTIME_UTILS_DEX_CACHE_ARRAYS_LAYOUT_H_
 #define ART_RUNTIME_UTILS_DEX_CACHE_ARRAYS_LAYOUT_H_
 
-#include "dex_file.h"
-#include "dex_file_types.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_types.h"
 
 namespace art {
 
diff --git a/runtime/vdex_file.cc b/runtime/vdex_file.cc
index 6d37d06..a53556f 100644
--- a/runtime/vdex_file.cc
+++ b/runtime/vdex_file.cc
@@ -25,8 +25,8 @@
 #include "base/bit_utils.h"
 #include "base/stl_util.h"
 #include "base/unix_file/fd_file.h"
-#include "dex_file.h"
-#include "dex_file_loader.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_loader.h"
 #include "dex_to_dex_decompiler.h"
 
 namespace art {
diff --git a/runtime/verifier/method_verifier.cc b/runtime/verifier/method_verifier.cc
index 5e5e96b..d977f2e 100644
--- a/runtime/verifier/method_verifier.cc
+++ b/runtime/verifier/method_verifier.cc
@@ -31,10 +31,10 @@
 #include "base/time_utils.h"
 #include "class_linker.h"
 #include "compiler_callbacks.h"
-#include "dex_file-inl.h"
-#include "dex_file_exception_helpers.h"
-#include "dex_instruction-inl.h"
-#include "dex_instruction_utils.h"
+#include "dex/dex_file-inl.h"
+#include "dex/dex_file_exception_helpers.h"
+#include "dex/dex_instruction-inl.h"
+#include "dex/dex_instruction_utils.h"
 #include "experimental_flags.h"
 #include "gc/accounting/card_table-inl.h"
 #include "handle_scope-inl.h"
diff --git a/runtime/verifier/method_verifier.h b/runtime/verifier/method_verifier.h
index b66433c..cadf4eb 100644
--- a/runtime/verifier/method_verifier.h
+++ b/runtime/verifier/method_verifier.h
@@ -25,9 +25,9 @@
 #include "base/macros.h"
 #include "base/scoped_arena_containers.h"
 #include "base/value_object.h"
-#include "code_item_accessors.h"
-#include "dex_file.h"
-#include "dex_file_types.h"
+#include "dex/code_item_accessors.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_types.h"
 #include "handle.h"
 #include "instruction_flags.h"
 #include "method_reference.h"
diff --git a/runtime/verifier/method_verifier_test.cc b/runtime/verifier/method_verifier_test.cc
index d987467..97c1b62 100644
--- a/runtime/verifier/method_verifier_test.cc
+++ b/runtime/verifier/method_verifier_test.cc
@@ -23,7 +23,7 @@
 
 #include "class_linker-inl.h"
 #include "common_runtime_test.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "scoped_thread_state_change-inl.h"
 #include "utils.h"
 #include "verifier_enums.h"
diff --git a/runtime/verifier/reg_type.cc b/runtime/verifier/reg_type.cc
index 309c374..7ebdd90 100644
--- a/runtime/verifier/reg_type.cc
+++ b/runtime/verifier/reg_type.cc
@@ -22,7 +22,7 @@
 #include "base/bit_vector-inl.h"
 #include "base/casts.h"
 #include "class_linker-inl.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "method_verifier.h"
 #include "mirror/class-inl.h"
 #include "mirror/class.h"
diff --git a/runtime/verifier/reg_type_cache.cc b/runtime/verifier/reg_type_cache.cc
index c68fa0f..5564684 100644
--- a/runtime/verifier/reg_type_cache.cc
+++ b/runtime/verifier/reg_type_cache.cc
@@ -25,7 +25,7 @@
 #include "base/scoped_arena_allocator.h"
 #include "base/stl_util.h"
 #include "class_linker-inl.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "mirror/class-inl.h"
 #include "mirror/object-inl.h"
 #include "reg_type-inl.h"
diff --git a/runtime/verifier/register_line.cc b/runtime/verifier/register_line.cc
index 34c406e..ea30e05 100644
--- a/runtime/verifier/register_line.cc
+++ b/runtime/verifier/register_line.cc
@@ -18,7 +18,7 @@
 
 #include "android-base/stringprintf.h"
 
-#include "dex_instruction-inl.h"
+#include "dex/dex_instruction-inl.h"
 #include "method_verifier-inl.h"
 #include "reg_type-inl.h"
 #include "register_line-inl.h"
diff --git a/runtime/verifier/verifier_deps.cc b/runtime/verifier/verifier_deps.cc
index 0481f24..7d8c5aa 100644
--- a/runtime/verifier/verifier_deps.cc
+++ b/runtime/verifier/verifier_deps.cc
@@ -22,7 +22,7 @@
 #include "art_method-inl.h"
 #include "base/stl_util.h"
 #include "compiler_callbacks.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "indenter.h"
 #include "leb128.h"
 #include "mirror/class-inl.h"
diff --git a/runtime/verifier/verifier_deps.h b/runtime/verifier/verifier_deps.h
index 4069a11..94441da 100644
--- a/runtime/verifier/verifier_deps.h
+++ b/runtime/verifier/verifier_deps.h
@@ -23,7 +23,7 @@
 
 #include "base/array_ref.h"
 #include "base/mutex.h"
-#include "dex_file_types.h"
+#include "dex/dex_file_types.h"
 #include "handle.h"
 #include "obj_ptr.h"
 #include "thread.h"
diff --git a/test/117-nopatchoat/nopatchoat.cc b/test/117-nopatchoat/nopatchoat.cc
index 2248fc4..7c38258 100644
--- a/test/117-nopatchoat/nopatchoat.cc
+++ b/test/117-nopatchoat/nopatchoat.cc
@@ -15,7 +15,7 @@
  */
 
 #include "class_linker.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "gc/heap.h"
 #include "gc/space/image_space.h"
 #include "mirror/class-inl.h"
diff --git a/test/466-get-live-vreg/get_live_vreg_jni.cc b/test/466-get-live-vreg/get_live_vreg_jni.cc
index 24792f1..aeb9e44 100644
--- a/test/466-get-live-vreg/get_live_vreg_jni.cc
+++ b/test/466-get-live-vreg/get_live_vreg_jni.cc
@@ -16,7 +16,7 @@
 
 #include "arch/context.h"
 #include "art_method-inl.h"
-#include "code_item_accessors-inl.h"
+#include "dex/code_item_accessors-inl.h"
 #include "jni.h"
 #include "oat_quick_method_header.h"
 #include "scoped_thread_state_change-inl.h"
diff --git a/test/595-profile-saving/profile-saving.cc b/test/595-profile-saving/profile-saving.cc
index 06e3fb4..b2af91e 100644
--- a/test/595-profile-saving/profile-saving.cc
+++ b/test/595-profile-saving/profile-saving.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "dex_file.h"
+#include "dex/dex_file.h"
 
 #include "art_method-inl.h"
 #include "jit/profile_compilation_info.h"
diff --git a/test/664-aget-verifier/aget-verifier.cc b/test/664-aget-verifier/aget-verifier.cc
index 41372ad..4a263fa 100644
--- a/test/664-aget-verifier/aget-verifier.cc
+++ b/test/664-aget-verifier/aget-verifier.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "dex_file.h"
+#include "dex/dex_file.h"
 
 #include "art_method-inl.h"
 #include "jni.h"
diff --git a/test/983-source-transform-verify/source_transform.cc b/test/983-source-transform-verify/source_transform.cc
index 831e01c..55dc603 100644
--- a/test/983-source-transform-verify/source_transform.cc
+++ b/test/983-source-transform-verify/source_transform.cc
@@ -27,10 +27,10 @@
 
 #include "base/macros.h"
 #include "bytecode_utils.h"
-#include "code_item_accessors-inl.h"
-#include "dex_file.h"
-#include "dex_file_loader.h"
-#include "dex_instruction.h"
+#include "dex/code_item_accessors-inl.h"
+#include "dex/dex_file.h"
+#include "dex/dex_file_loader.h"
+#include "dex/dex_instruction.h"
 #include "jit/jit.h"
 #include "native_stack_dump.h"
 #include "runtime.h"
diff --git a/test/common/runtime_state.cc b/test/common/runtime_state.cc
index 1eed80e..22c5106 100644
--- a/test/common/runtime_state.cc
+++ b/test/common/runtime_state.cc
@@ -21,7 +21,7 @@
 
 #include "art_method-inl.h"
 #include "base/enums.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "instrumentation.h"
 #include "jit/jit.h"
 #include "jit/jit_code_cache.h"
diff --git a/test/common/stack_inspect.cc b/test/common/stack_inspect.cc
index 046b1fb..fd62737 100644
--- a/test/common/stack_inspect.cc
+++ b/test/common/stack_inspect.cc
@@ -19,7 +19,7 @@
 #include <android-base/logging.h>
 
 #include "base/mutex.h"
-#include "dex_file-inl.h"
+#include "dex/dex_file-inl.h"
 #include "jni_internal.h"
 #include "mirror/class-inl.h"
 #include "nth_caller_visitor.h"
diff --git a/tools/titrace/instruction_decoder.cc b/tools/titrace/instruction_decoder.cc
index bc4660b..d8fb713 100644
--- a/tools/titrace/instruction_decoder.cc
+++ b/tools/titrace/instruction_decoder.cc
@@ -15,7 +15,7 @@
 
 #include "instruction_decoder.h"
 
-#include "dex_instruction_list.h"
+#include "dex/dex_instruction_list.h"
 
 #include <android-base/logging.h>