Remove ExtractCodeAndPrelink and switch Portable to MCLinker
Change-Id: Ia2459c7da6b79e0a1c0f1148c6e28ad9cbbe27a2
diff --git a/src/compiler/driver/dex_compilation_unit.h b/src/compiler/driver/dex_compilation_unit.h
index 6a0218d..0fc1123 100644
--- a/src/compiler/driver/dex_compilation_unit.h
+++ b/src/compiler/driver/dex_compilation_unit.h
@@ -17,26 +17,29 @@
#ifndef ART_SRC_COMPILER_DEX_DEX_COMPILATION_UNIT_H_
#define ART_SRC_COMPILER_DEX_DEX_COMPILATION_UNIT_H_
-#include "dex_file.h"
-
#include <stdint.h>
+#include "dex_file.h"
+#include "jni.h"
+
namespace art {
namespace mirror {
class ClassLoader;
class DexCache;
} // namespace mirror
class ClassLinker;
-class DexFile;
+class CompilationUnit;
class DexCompilationUnit {
public:
- DexCompilationUnit(jobject class_loader, ClassLinker* class_linker, const DexFile& dex_file,
- const DexFile::CodeItem* code_item, uint32_t class_def_idx,
- uint32_t method_idx, uint32_t access_flags)
- : class_loader_(class_loader), class_linker_(class_linker), dex_file_(&dex_file),
- code_item_(code_item), class_def_idx_(class_def_idx), dex_method_idx_(method_idx),
- access_flags_(access_flags) {
+ DexCompilationUnit(CompilationUnit* cu);
+
+ DexCompilationUnit(CompilationUnit* cu, jobject class_loader, ClassLinker* class_linker,
+ const DexFile& dex_file, const DexFile::CodeItem* code_item,
+ uint32_t class_def_idx, uint32_t method_idx, uint32_t access_flags);
+
+ CompilationUnit* GetCompilationUnit() const {
+ return cu_;
}
jobject GetClassLoader() const {
@@ -89,8 +92,15 @@
return ((access_flags_ & kAccSynchronized) != 0);
}
+ const std::string& GetSymbol() const {
+ return symbol_;
+ }
+
private:
+ CompilationUnit* cu_;
+
const jobject class_loader_;
+
ClassLinker* const class_linker_;
const DexFile* const dex_file_;
@@ -99,6 +109,8 @@
const uint32_t class_def_idx_;
const uint32_t dex_method_idx_;
const uint32_t access_flags_;
+
+ const std::string symbol_;
};
} // namespace art