Separate out more of LLVM build. Move verifier.
Move the verifier to its own directory and break out major components.
Avoid compiling unused files as part of the LLVM build, increase the use
of unimplemented for LLVM.
Change-Id: Icd3b1708363fb70ae99417d06ef8669d60446533
diff --git a/src/compiler_llvm/inferred_reg_category_map.h b/src/compiler_llvm/inferred_reg_category_map.h
index 14bc052..7b3501b 100644
--- a/src/compiler_llvm/inferred_reg_category_map.h
+++ b/src/compiler_llvm/inferred_reg_category_map.h
@@ -47,7 +47,7 @@
void SetRegCategory(uint16_t reg_idx, RegCategory cat) {
if (cat != kRegUnknown) {
- reg_category_line_[reg_idx] = cat;
+ reg_category_line_.Put(reg_idx, cat);
}
}
diff --git a/src/compiler_llvm/method_compiler.cc b/src/compiler_llvm/method_compiler.cc
index e044c54..fc9c4d8 100644
--- a/src/compiler_llvm/method_compiler.cc
+++ b/src/compiler_llvm/method_compiler.cc
@@ -19,7 +19,6 @@
#include "backend_types.h"
#include "compilation_unit.h"
#include "compiler.h"
-#include "dex_verifier.h"
#include "inferred_reg_category_map.h"
#include "ir_builder.h"
#include "logging.h"
@@ -32,6 +31,7 @@
#include "stl_util.h"
#include "stringprintf.h"
#include "utils_llvm.h"
+#include "verifier/method_verifier.h"
#include <iomanip>
@@ -62,6 +62,7 @@
module_(cunit->GetModule()),
context_(cunit->GetLLVMContext()),
irb_(*cunit->GetIRBuilder()), func_(NULL), retval_reg_(NULL),
+ basic_block_stack_overflow_(NULL),
basic_block_reg_alloca_(NULL), basic_block_shadow_frame_alloca_(NULL),
basic_block_reg_zero_init_(NULL), basic_block_reg_arg_init_(NULL),
basic_blocks_(code_item_->insns_size_in_code_units_),
@@ -2215,7 +2216,7 @@
Compiler::MethodReference mref(dex_file_, method_idx_);
InferredRegCategoryMap const* map =
- verifier::DexVerifier::GetInferredRegCategoryMap(mref);
+ verifier::MethodVerifier::GetInferredRegCategoryMap(mref);
CHECK_NE(map, static_cast<InferredRegCategoryMap*>(NULL));
diff --git a/src/compiler_llvm/runtime_support_llvm.cc b/src/compiler_llvm/runtime_support_llvm.cc
index 3db1667..18e4842 100644
--- a/src/compiler_llvm/runtime_support_llvm.cc
+++ b/src/compiler_llvm/runtime_support_llvm.cc
@@ -15,7 +15,6 @@
*/
#include "class_linker.h"
-#include "dex_verifier.h"
#include "nth_caller_visitor.h"
#include "object.h"
#include "object_utils.h"
@@ -26,6 +25,7 @@
#include "shadow_frame.h"
#include "thread.h"
#include "thread_list.h"
+#include "verifier/method_verifier.h"
#include <algorithm>
#include <cstdarg>
@@ -33,11 +33,6 @@
namespace art {
-extern int64_t D2L(double d);
-extern int32_t D2I(double d);
-extern int64_t F2L(float f);
-extern int32_t F2I(float f);
-
//----------------------------------------------------------------------------
// Thread
//----------------------------------------------------------------------------