OSDN Git Service

ART: Clean up art_field.h
authorAndreas Gampe <agampe@google.com>
Fri, 21 Apr 2017 05:53:58 +0000 (22:53 -0700)
committerAndreas Gampe <agampe@google.com>
Fri, 21 Apr 2017 15:41:28 +0000 (08:41 -0700)
Clean up the header. Fix up other headers including the -inl file,
in an effort to prune the include graph. Fix broken transitive
includes by making includes explicit.

Test: m
Change-Id: I6ff2d6f89b741d8188e19426eccf4743fec688fc

24 files changed:
compiler/debug/elf_debug_info_writer.h
compiler/optimizing/intrinsics.cc
compiler/optimizing/reference_type_propagation.cc
imgdiag/imgdiag.cc
runtime/art_field-inl.h
runtime/art_field.cc
runtime/art_field.h
runtime/art_method.cc
runtime/entrypoints/entrypoint_utils-inl.h
runtime/gc/space/image_space.cc
runtime/mirror/class-inl.h
runtime/mirror/class-refvisitor-inl.h
runtime/mirror/dex_cache-inl.h
runtime/native/java_lang_VMClassLoader.cc
runtime/native/java_lang_reflect_Field.cc
runtime/openjdkjvmti/ti_class.cc
runtime/openjdkjvmti/ti_class_loader.cc
runtime/openjdkjvmti/ti_redefine.cc
runtime/openjdkjvmti/ti_search.cc
runtime/openjdkjvmti/ti_stack.cc
runtime/openjdkjvmti/ti_thread.cc
runtime/openjdkjvmti/ti_threadgroup.cc
runtime/verifier/method_verifier_test.cc
runtime/verifier/verifier_deps.cc

index 30d4b47..558c7d5 100644 (file)
@@ -21,6 +21,7 @@
 #include <unordered_set>
 #include <vector>
 
+#include "art_field-inl.h"
 #include "debug/dwarf/debug_abbrev_writer.h"
 #include "debug/dwarf/debug_info_entry_writer.h"
 #include "debug/elf_compilation_unit.h"
index 6069f34..6236bd8 100644 (file)
@@ -16,6 +16,7 @@
 
 #include "intrinsics.h"
 
+#include "art_field-inl.h"
 #include "art_method-inl.h"
 #include "class_linker.h"
 #include "driver/compiler_driver.h"
index 39effe0..98332d3 100644 (file)
@@ -16,6 +16,7 @@
 
 #include "reference_type_propagation.h"
 
+#include "art_field-inl.h"
 #include "art_method-inl.h"
 #include "base/enums.h"
 #include "class_linker-inl.h"
index f307cbc..06a0f23 100644 (file)
@@ -28,6 +28,7 @@
 
 #include "android-base/stringprintf.h"
 
+#include "art_field-inl.h"
 #include "art_method-inl.h"
 #include "base/unix_file/fd_file.h"
 #include "gc/space/image_space.h"
index 0e00977..0de0f02 100644 (file)
@@ -47,16 +47,6 @@ inline void ArtField::SetDeclaringClass(ObjPtr<mirror::Class> new_declaring_clas
   declaring_class_ = GcRoot<mirror::Class>(new_declaring_class);
 }
 
-inline uint32_t ArtField::GetAccessFlags() {
-  DCHECK(GetDeclaringClass()->IsLoaded() || GetDeclaringClass()->IsErroneous());
-  return access_flags_;
-}
-
-inline MemberOffset ArtField::GetOffset() {
-  DCHECK(GetDeclaringClass()->IsResolved());
-  return MemberOffset(offset_);
-}
-
 inline MemberOffset ArtField::GetOffsetDuringLinking() {
   DCHECK(GetDeclaringClass()->IsLoaded() || GetDeclaringClass()->IsErroneous());
   return MemberOffset(offset_);
index 7e13104..bc728f4 100644 (file)
@@ -78,5 +78,12 @@ std::string ArtField::PrettyField(bool with_type) {
   return result;
 }
 
+void ArtField::GetAccessFlagsDCheck() {
+  CHECK(GetDeclaringClass()->IsLoaded() || GetDeclaringClass()->IsErroneous());
+}
+
+void ArtField::GetOffsetDCheck() {
+  CHECK(GetDeclaringClass()->IsResolved());
+}
 
 }  // namespace art
index 666ed8a..3789b0c 100644 (file)
@@ -51,7 +51,12 @@ class ArtField FINAL {
     return declaring_class_.AddressWithoutBarrier();
   }
 
-  uint32_t GetAccessFlags() REQUIRES_SHARED(Locks::mutator_lock_);
+  uint32_t GetAccessFlags() REQUIRES_SHARED(Locks::mutator_lock_) {
+    if (kIsDebugBuild) {
+      GetAccessFlagsDCheck();
+    }
+    return access_flags_;
+  }
 
   void SetAccessFlags(uint32_t new_access_flags) REQUIRES_SHARED(Locks::mutator_lock_) {
     // Not called within a transaction.
@@ -80,7 +85,12 @@ class ArtField FINAL {
   }
 
   // Offset to field within an Object.
-  MemberOffset GetOffset() REQUIRES_SHARED(Locks::mutator_lock_);
+  MemberOffset GetOffset() REQUIRES_SHARED(Locks::mutator_lock_) {
+    if (kIsDebugBuild) {
+      GetOffsetDCheck();
+    }
+    return MemberOffset(offset_);
+  }
 
   static MemberOffset OffsetOffset() {
     return MemberOffset(OFFSETOF_MEMBER(ArtField, offset_));
@@ -227,6 +237,9 @@ class ArtField FINAL {
                                               ObjPtr<mirror::DexCache> dex_cache)
       REQUIRES_SHARED(Locks::mutator_lock_);
 
+  void GetAccessFlagsDCheck() REQUIRES_SHARED(Locks::mutator_lock_);
+  void GetOffsetDCheck() REQUIRES_SHARED(Locks::mutator_lock_);
+
   GcRoot<mirror::Class> declaring_class_;
 
   uint32_t access_flags_ = 0;
index a6ee7eb..7de8916 100644 (file)
@@ -21,7 +21,6 @@
 #include "android-base/stringprintf.h"
 
 #include "arch/context.h"
-#include "art_field-inl.h"
 #include "art_method-inl.h"
 #include "base/stringpiece.h"
 #include "class_linker-inl.h"
index caf2e5d..e03ca79 100644 (file)
@@ -39,6 +39,7 @@
 #include "runtime.h"
 #include "stack_map.h"
 #include "thread.h"
+#include "well_known_classes.h"
 
 namespace art {
 
index ac7293d..e9f0758 100644 (file)
@@ -25,6 +25,7 @@
 #include "android-base/stringprintf.h"
 #include "android-base/strings.h"
 
+#include "art_field-inl.h"
 #include "art_method-inl.h"
 #include "base/enums.h"
 #include "base/macros.h"
index d78ed7f..2247f7d 100644 (file)
 
 #include "class.h"
 
-#include "art_field-inl.h"
+#include "art_field.h"
 #include "art_method.h"
 #include "base/array_slice.h"
 #include "base/length_prefixed_array.h"
+#include "class_linker-inl.h"
 #include "class_loader.h"
 #include "common_throws.h"
-#include "dex_file.h"
+#include "dex_file-inl.h"
 #include "gc/heap-inl.h"
 #include "iftable.h"
 #include "object_array-inl.h"
index ffc4af5..3d52ead 100644 (file)
@@ -19,6 +19,7 @@
 
 #include "class-inl.h"
 
+#include "art_field-inl.h"
 #include "class_ext-inl.h"
 
 namespace art {
index 37a67e8..18e22ef 100644 (file)
 
 #include "dex_cache.h"
 
-#include "art_field-inl.h"
+#include "art_field.h"
 #include "art_method.h"
 #include "base/casts.h"
 #include "base/enums.h"
 #include "base/logging.h"
+#include "class_linker.h"
 #include "dex_file.h"
 #include "gc_root.h"
+#include "gc/heap-inl.h"
 #include "mirror/class.h"
 #include "mirror/call_site.h"
 #include "mirror/method_type.h"
index 54ab861..a9ba33e 100644 (file)
@@ -23,6 +23,7 @@
 #include "obj_ptr.h"
 #include "scoped_fast_native_object_access-inl.h"
 #include "ScopedUtfChars.h"
+#include "well_known_classes.h"
 #include "zip_archive.h"
 
 namespace art {
index 9198964..0fb3903 100644 (file)
@@ -18,6 +18,7 @@
 
 #include "android-base/stringprintf.h"
 
+#include "art_field-inl.h"
 #include "class_linker.h"
 #include "class_linker-inl.h"
 #include "common_throws.h"
@@ -29,6 +30,7 @@
 #include "reflection-inl.h"
 #include "scoped_fast_native_object_access-inl.h"
 #include "utils.h"
+#include "well_known_classes.h"
 
 namespace art {
 
index c3a1acf..e0af6e8 100644 (file)
@@ -69,6 +69,7 @@
 #include "ti_phase.h"
 #include "ti_redefine.h"
 #include "utils.h"
+#include "well_known_classes.h"
 
 namespace openjdkjvmti {
 
index 66357eb..5544dde 100644 (file)
@@ -35,6 +35,7 @@
 
 #include "android-base/stringprintf.h"
 
+#include "art_field-inl.h"
 #include "art_jvmti.h"
 #include "base/array_slice.h"
 #include "base/logging.h"
index 77f507c..41ed862 100644 (file)
@@ -35,6 +35,7 @@
 
 #include "android-base/stringprintf.h"
 
+#include "art_field-inl.h"
 #include "art_method-inl.h"
 #include "art_jvmti.h"
 #include "base/array_slice.h"
index f51a98f..ec139f2 100644 (file)
@@ -33,6 +33,7 @@
 
 #include "jni.h"
 
+#include "art_field-inl.h"
 #include "art_jvmti.h"
 #include "base/enums.h"
 #include "base/macros.h"
@@ -50,6 +51,7 @@
 #include "ti_phase.h"
 #include "thread-inl.h"
 #include "thread_list.h"
+#include "well_known_classes.h"
 
 namespace openjdkjvmti {
 
index 067c7c1..1ddf04f 100644 (file)
@@ -36,8 +36,9 @@
 #include <unordered_map>
 #include <vector>
 
-#include "art_jvmti.h"
+#include "art_field-inl.h"
 #include "art_method-inl.h"
+#include "art_jvmti.h"
 #include "base/bit_utils.h"
 #include "base/enums.h"
 #include "base/mutex.h"
@@ -54,6 +55,7 @@
 #include "thread-inl.h"
 #include "thread_list.h"
 #include "thread_pool.h"
+#include "well_known_classes.h"
 
 namespace openjdkjvmti {
 
index e5ff090..3dfa633 100644 (file)
@@ -32,7 +32,7 @@
 #include "ti_thread.h"
 
 #include "android-base/strings.h"
-#include "art_field.h"
+#include "art_field-inl.h"
 #include "art_jvmti.h"
 #include "base/logging.h"
 #include "base/mutex.h"
index df14333..dd7be11 100644 (file)
@@ -31,7 +31,7 @@
 
 #include "ti_threadgroup.h"
 
-#include "art_field.h"
+#include "art_field-inl.h"
 #include "art_jvmti.h"
 #include "base/logging.h"
 #include "base/macros.h"
index be5c18b..bdb6b68 100644 (file)
@@ -23,7 +23,7 @@
 
 #include "class_linker-inl.h"
 #include "common_runtime_test.h"
-#include "dex_file.h"
+#include "dex_file-inl.h"
 #include "scoped_thread_state_change-inl.h"
 #include "utils.h"
 #include "verifier_log_mode.h"
index 51ec51f..0497a6d 100644 (file)
@@ -18,6 +18,7 @@
 
 #include <cstring>
 
+#include "art_field-inl.h"
 #include "art_method-inl.h"
 #include "base/stl_util.h"
 #include "compiler_callbacks.h"