summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--compiler/driver/compiler_callbacks_impl.h10
-rw-r--r--oatdump/oatdump.cc11
-rw-r--r--runtime/common_runtime_test.h12
-rw-r--r--runtime/noop_compiler_callbacks.h36
4 files changed, 45 insertions, 24 deletions
diff --git a/compiler/driver/compiler_callbacks_impl.h b/compiler/driver/compiler_callbacks_impl.h
index fd2cd4a..ed6a925 100644
--- a/compiler/driver/compiler_callbacks_impl.h
+++ b/compiler/driver/compiler_callbacks_impl.h
@@ -23,7 +23,7 @@
namespace art {
-class CompilerCallbacksImpl : public CompilerCallbacks {
+class CompilerCallbacksImpl FINAL : public CompilerCallbacks {
public:
CompilerCallbacksImpl(VerificationResults* verification_results,
DexFileToMethodInlinerMap* method_inliner_map)
@@ -33,10 +33,10 @@ class CompilerCallbacksImpl : public CompilerCallbacks {
CHECK(method_inliner_map != nullptr);
}
- virtual ~CompilerCallbacksImpl() { }
+ ~CompilerCallbacksImpl() { }
- virtual bool MethodVerified(verifier::MethodVerifier* verifier)
- SHARED_LOCKS_REQUIRED(Locks::mutator_lock_) {
+ bool MethodVerified(verifier::MethodVerifier* verifier)
+ SHARED_LOCKS_REQUIRED(Locks::mutator_lock_) OVERRIDE {
bool result = verification_results_->ProcessVerifiedMethod(verifier);
if (result) {
MethodReference ref = verifier->GetMethodReference();
@@ -45,7 +45,7 @@ class CompilerCallbacksImpl : public CompilerCallbacks {
}
return result;
}
- virtual void ClassRejected(ClassReference ref) {
+ void ClassRejected(ClassReference ref) OVERRIDE {
verification_results_->AddRejectedClass(ref);
}
diff --git a/oatdump/oatdump.cc b/oatdump/oatdump.cc
index 841a478..915c415 100644
--- a/oatdump/oatdump.cc
+++ b/oatdump/oatdump.cc
@@ -26,7 +26,6 @@
#include "base/unix_file/fd_file.h"
#include "class_linker.h"
#include "class_linker-inl.h"
-#include "compiler_callbacks.h"
#include "dex_file-inl.h"
#include "dex_instruction.h"
#include "disassembler.h"
@@ -43,6 +42,7 @@
#include "mirror/class-inl.h"
#include "mirror/object-inl.h"
#include "mirror/object_array-inl.h"
+#include "noop_compiler_callbacks.h"
#include "oat.h"
#include "object_utils.h"
#include "os.h"
@@ -1528,13 +1528,8 @@ static int oatdump(int argc, char** argv) {
std::string boot_oat_option;
// We are more like a compiler than a run-time. We don't want to execute code.
- // TODO: Replace with NoopCompilerCallbacks.
- struct OatDumpCompilerCallbacks : CompilerCallbacks {
- virtual bool MethodVerified(verifier::MethodVerifier* /*verifier*/) { return true; }
- virtual void ClassRejected(ClassReference /*ref*/) { }
- } callbacks;
- options.push_back(std::make_pair("compilercallbacks",
- static_cast<CompilerCallbacks*>(&callbacks)));
+ NoopCompilerCallbacks callbacks;
+ options.push_back(std::make_pair("compilercallbacks", &callbacks));
if (boot_image_filename != NULL) {
boot_image_option += "-Ximage:";
diff --git a/runtime/common_runtime_test.h b/runtime/common_runtime_test.h
index cef0703..cfe808c 100644
--- a/runtime/common_runtime_test.h
+++ b/runtime/common_runtime_test.h
@@ -31,7 +31,6 @@
#include "base/stringprintf.h"
#include "base/unix_file/fd_file.h"
#include "class_linker.h"
-#include "compiler_callbacks.h"
#include "dex_file-inl.h"
#include "entrypoints/entrypoint_utils.h"
#include "gc/heap.h"
@@ -39,6 +38,7 @@
#include "instruction_set.h"
#include "interpreter/interpreter.h"
#include "mirror/class_loader.h"
+#include "noop_compiler_callbacks.h"
#include "oat_file.h"
#include "object_utils.h"
#include "os.h"
@@ -94,16 +94,6 @@ class ScratchFile {
UniquePtr<File> file_;
};
-class NoopCompilerCallbacks : public CompilerCallbacks {
- public:
- NoopCompilerCallbacks() {}
- virtual ~NoopCompilerCallbacks() {}
- virtual bool MethodVerified(verifier::MethodVerifier* verifier) {
- return true;
- }
- virtual void ClassRejected(ClassReference ref) {}
-};
-
class CommonRuntimeTest : public testing::Test {
public:
static void SetEnvironmentVariables(std::string& android_data) {
diff --git a/runtime/noop_compiler_callbacks.h b/runtime/noop_compiler_callbacks.h
new file mode 100644
index 0000000..702b2e1
--- /dev/null
+++ b/runtime/noop_compiler_callbacks.h
@@ -0,0 +1,36 @@
+/*
+ * Copyright (C) 2013 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ART_RUNTIME_NOOP_COMPILER_CALLBACKS_H_
+#define ART_RUNTIME_NOOP_COMPILER_CALLBACKS_H_
+
+#include "compiler_callbacks.h"
+
+namespace art {
+
+class NoopCompilerCallbacks FINAL : public CompilerCallbacks {
+ public:
+ NoopCompilerCallbacks() {}
+ ~NoopCompilerCallbacks() {}
+ bool MethodVerified(verifier::MethodVerifier* verifier) OVERRIDE {
+ return true;
+ }
+ void ClassRejected(ClassReference ref) OVERRIDE {}
+};
+
+} // namespace art
+
+#endif // ART_RUNTIME_NOOP_COMPILER_CALLBACKS_H_