Refactor runtime support.
Change-Id: Id7470a4105838150d5ceb73ab2c8c83e739660df
diff --git a/build/Android.common.mk b/build/Android.common.mk
index d09ad63..bc1825e 100644
--- a/build/Android.common.mk
+++ b/build/Android.common.mk
@@ -102,18 +102,9 @@
src/oatexec.cc
LIBART_COMMON_SRC_FILES := \
- src/assembler.cc \
- src/assembler_arm.cc \
- src/assembler_x86.cc \
src/atomic.cc.arm \
- src/calling_convention.cc \
- src/calling_convention_arm.cc \
- src/calling_convention_x86.cc \
src/card_table.cc \
src/constants.cc \
- src/context.cc \
- src/context_arm.cc.arm \
- src/context_x86.cc \
src/check_jni.cc \
src/class_linker.cc \
src/class_loader.cc \
@@ -165,8 +156,6 @@
src/logging.cc \
src/mark_stack.cc \
src/mark_sweep.cc \
- src/managed_register_arm.cc \
- src/managed_register_x86.cc \
src/mem_map.cc \
src/memory_region.cc \
src/monitor.cc \
@@ -184,15 +173,12 @@
src/reflection.cc \
src/runtime.cc \
src/runtime_support.cc \
- src/runtime_support_common.cc \
src/scoped_thread_list_lock.cc \
src/signal_catcher.cc \
src/space.cc \
src/stack.cc \
src/stringpiece.cc \
src/stringprintf.cc \
- src/stub_arm.cc \
- src/stub_x86.cc \
src/sun_misc_Unsafe.cc \
src/thread.cc \
src/thread_list.cc \
@@ -206,6 +192,31 @@
src/compiler_llvm/inferred_reg_category_map.cc \
src/compiler_llvm/runtime_support_llvm.cc \
src/compiler_llvm/utils_llvm.cc
+else
+LIBART_COMMON_SRC_FILES += \
+ src/oat/runtime/arm/stub_arm.cc \
+ src/oat/runtime/context.cc \
+ src/oat/runtime/support_alloc.cc \
+ src/oat/runtime/support_cast.cc \
+ src/oat/runtime/support_debug.cc \
+ src/oat/runtime/support_dexcache.cc \
+ src/oat/runtime/support_field.cc \
+ src/oat/runtime/support_fillarray.cc \
+ src/oat/runtime/support_invoke.cc \
+ src/oat/runtime/support_jni.cc \
+ src/oat/runtime/support_locks.cc \
+ src/oat/runtime/support_math.cc \
+ src/oat/runtime/support_proxy.cc \
+ src/oat/runtime/support_stubs.cc \
+ src/oat/runtime/support_thread.cc \
+ src/oat/runtime/support_throw.cc \
+ src/oat/runtime/support_trace.cc \
+ src/oat/runtime/x86/stub_x86.cc \
+ src/oat/utils/arm/assembler_arm.cc \
+ src/oat/utils/arm/managed_register_arm.cc \
+ src/oat/utils/assembler.cc \
+ src/oat/utils/x86/assembler_x86.cc \
+ src/oat/utils/x86/managed_register_x86.cc
endif
LIBART_TARGET_SRC_FILES := \
@@ -217,13 +228,24 @@
src/thread_android.cc
ifeq ($(TARGET_ARCH),arm)
-LIBART_TARGET_SRC_FILES += src/runtime_support_arm.S src/thread_arm.cc
+LIBART_TARGET_SRC_FILES += \
+ src/oat/runtime/arm/context_arm.cc.arm \
+ src/oat/runtime/arm/oat_support_entrypoints_arm.cc \
+ src/oat/runtime/arm/runtime_support_arm.S \
+ src/thread_arm.cc
else # TARGET_ARCH != arm
ifeq ($(TARGET_ARCH),x86)
-LIBART_TARGET_SRC_FILES += src/runtime_support_x86.S src/thread_x86.cc
+LIBART_TARGET_SRC_FILES += \
+ src/oat/runtime/x86/context_x86.cc \
+ src/oat/runtime/x86/oat_support_entrypoints_x86.cc \
+ src/oat/runtime/x86/runtime_support_x86.S \
+ src/thread_x86.cc
else # TARGET_ARCH != x86
ifeq ($(TARGET_ARCH),mips)
-LIBART_TARGET_SRC_FILES += src/runtime_support_mips.S src/thread_mips.cc
+LIBART_TARGET_SRC_FILES += \
+ src/oat/runtime/mips/oat_support_entrypoints_mips.cc \
+ src/oat/runtime/mips/runtime_support_mips.S \
+ src/thread_mips.cc
else # TARGET_ARCH != mips
$(error unsupported TARGET_ARCH=$(TARGET_ARCH))
endif # TARGET_ARCH != mips
@@ -238,7 +260,11 @@
src/thread_linux.cc
ifeq ($(HOST_ARCH),x86)
-LIBART_HOST_SRC_FILES += src/runtime_support_x86.S src/thread_x86.cc
+LIBART_HOST_SRC_FILES += \
+ src/oat/runtime/x86/oat_support_entrypoints_x86.cc \
+ src/oat/runtime/x86/context_x86.cc \
+ src/oat/runtime/x86/runtime_support_x86.S \
+ src/thread_x86.cc
else # HOST_ARCH != x86
$(error unsupported HOST_ARCH=$(HOST_ARCH))
endif # HOST_ARCH != x86
@@ -262,8 +288,8 @@
src/intern_table_test.cc \
src/jni_internal_test.cc \
src/jni_compiler_test.cc \
- src/managed_register_arm_test.cc \
- src/managed_register_x86_test.cc \
+ src/oat/utils/arm/managed_register_arm_test.cc \
+ src/oat/utils/x86/managed_register_x86_test.cc \
src/mutex_test.cc \
src/oat_test.cc \
src/object_test.cc \
@@ -283,7 +309,7 @@
TEST_HOST_SRC_FILES := \
$(TEST_COMMON_SRC_FILES) \
- src/assembler_x86_test.cc
+ src/oat/utils/x86/assembler_x86_test.cc
# subdirectories of test/ which are used as inputs for gtests
TEST_DEX_DIRECTORIES := \