Remove mirror:: and ArtMethod deps in utils.{h,cc}
The latest chapter in the ongoing saga of attempting to dump a DEX
file without having to start a whole runtime instance. This episode
finds us removing references to ArtMethod/ArtField/mirror.
One aspect of this change that I would like to call out specfically
is that the utils versions of the "Pretty*" functions all were written
to accept nullptr as an argument. I have split these functions up as
follows:
1) an instance method, such as PrettyClass that obviously requires
this != nullptr.
2) a static method, that behaves the same way as the util method, but
calls the instance method if p != nullptr.
This requires using a full class qualifier for the static methods,
which isn't exactly beautiful. I have tried to remove as many cases
as possible where it was clear p != nullptr.
Bug: 22322814
Test: test-art-host
Change-Id: I21adee3614aa697aa580cd1b86b72d9206e1cb24
diff --git a/compiler/driver/compiler_driver_test.cc b/compiler/driver/compiler_driver_test.cc
index e323b16..20f0e5e 100644
--- a/compiler/driver/compiler_driver_test.cc
+++ b/compiler/driver/compiler_driver_test.cc
@@ -216,7 +216,7 @@
const auto pointer_size = class_linker->GetImagePointerSize();
for (auto& m : klass->GetDirectMethods(pointer_size)) {
- std::string name = PrettyMethod(&m, true);
+ std::string name = m.PrettyMethod(true);
const void* code = m.GetEntryPointFromQuickCompiledCodePtrSize(pointer_size);
ASSERT_NE(code, nullptr);
if (expected->find(name) != expected->end()) {
@@ -273,7 +273,7 @@
const auto pointer_size = class_linker->GetImagePointerSize();
size_t number_of_compiled_methods = 0;
for (auto& m : klass->GetVirtualMethods(pointer_size)) {
- std::string name = PrettyMethod(&m, true);
+ std::string name = m.PrettyMethod(true);
const void* code = m.GetEntryPointFromQuickCompiledCodePtrSize(pointer_size);
ASSERT_NE(code, nullptr);
if (expected_methods.find(name) != expected_methods.end()) {