diff options
| author | 2014-04-01 21:13:05 +0000 | |
|---|---|---|
| committer | 2014-04-01 21:13:05 +0000 | |
| commit | b3d7eed9f760fa22e3a8e87ec2c8ff3fe50a1f50 (patch) | |
| tree | 97dc40fcc18b0ad8ff036d45524bcebab338b4a6 | |
| parent | a1dbc55dcbeb0e91f1c3a68b94ee6d06d5d216f7 (diff) | |
| parent | afbaa1aab02cfe519d00336870b1bcd24b61378d (diff) | |
Merge "Build changes to build multilib tests"
| -rw-r--r-- | Android.mk | 23 | ||||
| -rw-r--r-- | build/Android.common.mk | 44 | ||||
| -rw-r--r-- | build/Android.executable.mk | 2 | ||||
| -rw-r--r-- | build/Android.gtest.mk | 54 | ||||
| -rw-r--r-- | build/Android.libarttest.mk | 4 | ||||
| -rw-r--r-- | build/Android.oat.mk | 29 | ||||
| -rw-r--r-- | dalvikvm/Android.mk | 3 | ||||
| -rw-r--r-- | runtime/common_runtime_test.h | 4 | ||||
| -rw-r--r-- | test/Android.mk | 36 | ||||
| -rwxr-xr-x | test/etc/push-and-run-test-jar | 8 | ||||
| -rwxr-xr-x | test/run-test | 4 |
11 files changed, 160 insertions, 51 deletions
diff --git a/Android.mk b/Android.mk index 6c388e5974..fe39c030c6 100644 --- a/Android.mk +++ b/Android.mk @@ -229,13 +229,26 @@ test-art-target-gtest: $(ART_TARGET_GTEST_TARGETS) test-art-target-oat: $(ART_TEST_TARGET_OAT_TARGETS) @echo test-art-target-oat PASSED +define declare-test-art-target-run-test-impl +.PHONY: test-art-target-run-test-$(1)$($(2)ART_PHONY_TEST_TARGET_SUFFIX) +test-art-target-run-test-$(1)$($(2)ART_PHONY_TEST_TARGET_SUFFIX): test-art-target-sync $(DX) $(HOST_OUT_EXECUTABLES)/jasmin + DX=$(abspath $(DX)) JASMIN=$(abspath $(HOST_OUT_EXECUTABLES)/jasmin) art/test/run-test $(DALVIKVM_FLAGS) $(1) $(3) + @echo test-art-target-run-test-$(1)$($(2)ART_PHONY_TEST_TARGET_SUFFIX) PASSED +endef + define declare-test-art-target-run-test -.PHONY: test-art-target-run-test-$(1) -test-art-target-run-test-$(1): test-art-target-sync $(DX) $(HOST_OUT_EXECUTABLES)/jasmin - DX=$(abspath $(DX)) JASMIN=$(abspath $(HOST_OUT_EXECUTABLES)/jasmin) art/test/run-test $(DALVIKVM_FLAGS) $(1) - @echo test-art-target-run-test-$(1) PASSED -TEST_ART_TARGET_RUN_TEST_TARGETS += test-art-target-run-test-$(1) + ifdef TARGET_2ND_ARCH + $(call declare-test-art-target-run-test-impl,$(1),2ND_,) + + ifneq ($(ART_PHONY_TEST_TARGET_SUFFIX),) + # Link primary to non-suffix +test-art-target-run-test-$(1): test-art-target-run-test-$(1)$(ART_PHONY_TEST_TARGET_SUFFIX) + endif + endif + $(call declare-test-art-target-run-test-impl,$(1),,--$(ART_TARGET_BINARY_SUFFIX)) + + TEST_ART_TARGET_RUN_TEST_TARGETS += test-art-target-run-test-$(1) test-art-run-test-$(1): test-art-host-run-test-$(1) test-art-target-run-test-$(1) diff --git a/build/Android.common.mk b/build/Android.common.mk index d80d039439..b9a297b3c7 100644 --- a/build/Android.common.mk +++ b/build/Android.common.mk @@ -127,12 +127,48 @@ endif ART_DALVIK_CACHE_DIR := /data/dalvik-cache # directory used for gtests on device -ART_NATIVETEST_DIR := /data/nativetest/art -ART_NATIVETEST_OUT := $(TARGET_OUT_DATA_NATIVE_TESTS)/art +ART_BASE_NATIVETEST_DIR := /data/nativetest/art +ART_BASE_NATIVETEST_OUT := $(TARGET_OUT_DATA_NATIVE_TESTS)/art # directory used for tests on device -ART_TEST_DIR := /data/art-test -ART_TEST_OUT := $(TARGET_OUT_DATA)/art-test +ART_BASE_TEST_DIR := /data/art-test +ART_BASE_TEST_OUT := $(TARGET_OUT_DATA)/art-test + +# Primary vs. secondary +2ND_TARGET_ARCH := $(TARGET_2ND_ARCH) +ART_PHONY_TEST_TARGET_SUFFIX := +2ND_ART_PHONY_TEST_TARGET_SUFFIX := +ART_TARGET_BINARY_SUFFIX := +2ND_ART_TARGET_BINARY_SUFFIX := +ifdef TARGET_2ND_ARCH + art_test_primary_suffix := + art_test_secondary_suffix := + ifneq ($(filter %64,$(TARGET_ARCH)),) + art_test_primary_suffix := 64 + ART_PHONY_TEST_TARGET_SUFFIX := 64 + 2ND_ART_PHONY_TEST_TARGET_SUFFIX := 32 + ART_TARGET_BINARY_SUFFIX := 64 + else + # TODO: ??? + $(error Do not know what to do with this multi-target configuration!) + endif + # Primary with primary suffix + ART_NATIVETEST_DIR := $(ART_BASE_NATIVETEST_DIR)$(art_test_primary_suffix) + ART_NATIVETEST_OUT := $(ART_BASE_NATIVETEST_OUT)$(art_test_primary_suffix) + ART_TEST_DIR := $(ART_BASE_TEST_DIR)$(art_test_primary_suffix) + ART_TEST_OUT := $(ART_BASE_TEST_OUT)$(art_test_primary_suffix) + # Secondary with 2ND_ prefix and secondary suffix + 2ND_ART_NATIVETEST_DIR := $(ART_BASE_NATIVETEST_DIR)$(art_test_secondary_suffix) + 2ND_ART_NATIVETEST_OUT := $(ART_BASE_NATIVETEST_OUT)$(art_test_secondary_suffix) + 2ND_ART_TEST_DIR := $(ART_BASE_TEST_DIR)$(art_test_secondary_suffix) + 2ND_ART_TEST_OUT := $(ART_BASE_TEST_OUT)$(art_test_secondary_suffix) +else + ART_NATIVETEST_DIR := $(ART_BASE_NATIVETEST_DIR) + ART_NATIVETEST_OUT := $(ART_BASE_NATIVETEST_OUT) + ART_TEST_DIR := $(ART_BASE_TEST_DIR) + ART_TEST_OUT := $(ART_BASE_TEST_OUT) + # No secondary +endif ART_CPP_EXTENSION := .cc diff --git a/build/Android.executable.mk b/build/Android.executable.mk index 551b03ccc6..88ca47eee0 100644 --- a/build/Android.executable.mk +++ b/build/Android.executable.mk @@ -98,8 +98,6 @@ define build-art-executable ifeq ($$(art_target_or_host),target) LOCAL_MODULE_TARGET_ARCH := $(ART_SUPPORTED_ARCH) - #HACK: force 32-bit until 64-bit dex2oat can handle 32-bit - LOCAL_32_BIT_ONLY := true endif ifeq ($$(art_target_or_host),target) diff --git a/build/Android.gtest.mk b/build/Android.gtest.mk index da0b5008a0..5b830564cb 100644 --- a/build/Android.gtest.mk +++ b/build/Android.gtest.mk @@ -113,6 +113,22 @@ ifeq ($(ART_USE_PORTABLE_COMPILER),true) ART_TEST_CFLAGS += -DART_USE_PORTABLE_COMPILER=1 endif +# Build a make target for a target test. +# (1) Prefix for variables +define build-art-test-make-target +.PHONY: $$(art_gtest_target)$($(1)ART_PHONY_TEST_TARGET_SUFFIX) +$$(art_gtest_target)$($(1)ART_PHONY_TEST_TARGET_SUFFIX): $($(1)ART_NATIVETEST_OUT)/$$(LOCAL_MODULE) test-art-target-sync + adb shell touch $($(1)ART_TEST_DIR)/$$@ + adb shell rm $($(1)ART_TEST_DIR)/$$@ + adb shell chmod 755 $($(1)ART_NATIVETEST_DIR)/$$(notdir $$<) + adb shell sh -c "$($(1)ART_NATIVETEST_DIR)/$$(notdir $$<) && touch $($(1)ART_TEST_DIR)/$$@" + $(hide) (adb pull $($(1)ART_TEST_DIR)/$$@ /tmp/ && echo $$@ PASSED) || (echo $$@ FAILED && exit 1) + $(hide) rm /tmp/$$@ + + ART_TARGET_GTEST_TARGETS += $$(art_gtest_target)$($(1)ART_PHONY_TEST_TARGET_SUFFIX) +endef + + # $(1): target or host # $(2): file name # $(3): extra C includes @@ -163,10 +179,23 @@ define build-art-test LOCAL_CFLAGS_x86 := $(ART_TARGET_CFLAGS_x86) LOCAL_SHARED_LIBRARIES += libdl libicuuc libicui18n libnativehelper libz libcutils LOCAL_STATIC_LIBRARIES += libgtest - LOCAL_MODULE_PATH := $(ART_NATIVETEST_OUT) + LOCAL_MODULE_PATH_32 := $(ART_BASE_NATIVETEST_OUT) + LOCAL_MODULE_PATH_64 := $(ART_BASE_NATIVETEST_OUT)64 + LOCAL_MULTILIB := both include $(BUILD_EXECUTABLE) - art_gtest_exe := $$(LOCAL_MODULE_PATH)/$$(LOCAL_MODULE) ART_TARGET_GTEST_EXECUTABLES += $$(art_gtest_exe) + art_gtest_target := test-art-$$(art_target_or_host)-gtest-$$(art_gtest_name) + + ifdef TARGET_2ND_ARCH + $(call build-art-test-make-target,2ND_) + + # Bind the primary to the non-suffix rule + ifneq ($(ART_PHONY_TEST_TARGET_SUFFIX),) +$$(art_gtest_target): $$(art_gtest_target)$(ART_PHONY_TEST_TARGET_SUFFIX) + endif + endif + $(call build-art-test-make-target,) + else # host LOCAL_CLANG := $(ART_HOST_CLANG) LOCAL_CFLAGS += $(ART_HOST_CFLAGS) $(ART_HOST_DEBUG_CFLAGS) @@ -180,34 +209,21 @@ define build-art-test include $(BUILD_HOST_EXECUTABLE) art_gtest_exe := $(HOST_OUT_EXECUTABLES)/$$(LOCAL_MODULE) ART_HOST_GTEST_EXECUTABLES += $$(art_gtest_exe) - endif -art_gtest_target := test-art-$$(art_target_or_host)-gtest-$$(art_gtest_name) -ifeq ($$(art_target_or_host),target) -.PHONY: $$(art_gtest_target) -$$(art_gtest_target): $$(art_gtest_exe) test-art-target-sync - adb shell touch $(ART_TEST_DIR)/$$@ - adb shell rm $(ART_TEST_DIR)/$$@ - adb shell chmod 755 $(ART_NATIVETEST_DIR)/$$(notdir $$<) - adb shell sh -c "$(ART_NATIVETEST_DIR)/$$(notdir $$<) && touch $(ART_TEST_DIR)/$$@" - $(hide) (adb pull $(ART_TEST_DIR)/$$@ /tmp/ && echo $$@ PASSED) || (echo $$@ FAILED && exit 1) - $(hide) rm /tmp/$$@ - -ART_TARGET_GTEST_TARGETS += $$(art_gtest_target) -else + art_gtest_target := test-art-$$(art_target_or_host)-gtest-$$(art_gtest_name) .PHONY: $$(art_gtest_target) $$(art_gtest_target): $$(art_gtest_exe) test-art-host-dependencies $$< @echo $$@ PASSED -ART_HOST_GTEST_TARGETS += $$(art_gtest_target) + ART_HOST_GTEST_TARGETS += $$(art_gtest_target) .PHONY: valgrind-$$(art_gtest_target) valgrind-$$(art_gtest_target): $$(art_gtest_exe) test-art-host-dependencies valgrind --leak-check=full --error-exitcode=1 $$< @echo $$@ PASSED -ART_HOST_VALGRIND_GTEST_TARGETS += valgrind-$$(art_gtest_target) -endif + ART_HOST_VALGRIND_GTEST_TARGETS += valgrind-$$(art_gtest_target) + endif endef ifeq ($(ART_BUILD_TARGET),true) diff --git a/build/Android.libarttest.mk b/build/Android.libarttest.mk index d807a9c6d7..14d16acaa7 100644 --- a/build/Android.libarttest.mk +++ b/build/Android.libarttest.mk @@ -51,7 +51,9 @@ define build-libarttest LOCAL_CFLAGS_x86 := $(ART_TARGET_CFLAGS_x86) LOCAL_SHARED_LIBRARIES += libdl libcutils LOCAL_STATIC_LIBRARIES := libgtest - LOCAL_MODULE_PATH := $(ART_TEST_OUT) + LOCAL_MULTILIB := both + LOCAL_MODULE_PATH_32 := $(ART_BASE_TEST_OUT) + LOCAL_MODULE_PATH_64 := $(ART_BASE_TEST_OUT)64 LOCAL_MODULE_TARGET_ARCH := $(ART_SUPPORTED_ARCH) include $(BUILD_SHARED_LIBRARY) else # host diff --git a/build/Android.oat.mk b/build/Android.oat.mk index def585b787..51beedc2cb 100644 --- a/build/Android.oat.mk +++ b/build/Android.oat.mk @@ -31,12 +31,15 @@ TARGET_CORE_DEX_FILES := $(foreach jar,$(TARGET_CORE_JARS),$(call intermediates- HOST_CORE_OAT := $(HOST_OUT_JAVA_LIBRARIES)/core.oat TARGET_CORE_OAT := $(ART_TEST_DIR)/core.oat +2ND_TARGET_CORE_OAT := $(2ND_ART_TEST_DIR)/core.oat HOST_CORE_OAT_OUT := $(HOST_OUT_JAVA_LIBRARIES)/core.oat TARGET_CORE_OAT_OUT := $(ART_TEST_OUT)/core.oat +2ND_TARGET_CORE_OAT_OUT := $(2ND_ART_TEST_OUT)/core.oat HOST_CORE_IMG_OUT := $(HOST_OUT_JAVA_LIBRARIES)/core.art TARGET_CORE_IMG_OUT := $(ART_TEST_OUT)/core.art +2ND_TARGET_CORE_IMG_OUT := $(2ND_ART_TEST_OUT)/core.art TARGET_INSTRUCTION_SET_FEATURES := $(DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES) @@ -48,17 +51,25 @@ $(HOST_CORE_IMG_OUT): $(HOST_CORE_DEX_FILES) $(DEX2OAT_DEPENDENCY) --oat-location=$(HOST_CORE_OAT) --image=$(HOST_CORE_IMG_OUT) --base=$(LIBART_IMG_HOST_BASE_ADDRESS) \ --instruction-set=$(ART_HOST_ARCH) --host --android-root=$(HOST_OUT) -$(TARGET_CORE_IMG_OUT): $(TARGET_CORE_DEX_FILES) $(DEX2OAT_DEPENDENCY) - @echo "target dex2oat: $@ ($?)" - @mkdir -p $(dir $@) - $(hide) $(DEX2OAT) --runtime-arg -Xms16m --runtime-arg -Xmx16m --image-classes=$(PRELOADED_CLASSES) $(addprefix \ - --dex-file=,$(TARGET_CORE_DEX_FILES)) $(addprefix --dex-location=,$(TARGET_CORE_DEX_LOCATIONS)) --oat-file=$(TARGET_CORE_OAT_OUT) \ - --oat-location=$(TARGET_CORE_OAT) --image=$(TARGET_CORE_IMG_OUT) --base=$(LIBART_IMG_TARGET_BASE_ADDRESS) \ - --instruction-set=$(TARGET_ARCH) --instruction-set-features=$(TARGET_INSTRUCTION_SET_FEATURES) --android-root=$(PRODUCT_OUT)/system - $(HOST_CORE_OAT_OUT): $(HOST_CORE_IMG_OUT) -$(TARGET_CORE_OAT_OUT): $(TARGET_CORE_IMG_OUT) +define create-oat-target-targets +$$($(1)TARGET_CORE_IMG_OUT): $$($(1)TARGET_CORE_DEX_FILES) $$(DEX2OAT_DEPENDENCY) + @echo "target dex2oat: $$@ ($$?)" + @mkdir -p $$(dir $$@) + $$(hide) $$(DEX2OAT) --runtime-arg -Xms16m --runtime-arg -Xmx16m --image-classes=$$(PRELOADED_CLASSES) $$(addprefix \ + --dex-file=,$$(TARGET_CORE_DEX_FILES)) $$(addprefix --dex-location=,$$(TARGET_CORE_DEX_LOCATIONS)) --oat-file=$$($(1)TARGET_CORE_OAT_OUT) \ + --oat-location=$$($(1)TARGET_CORE_OAT) --image=$$($(1)TARGET_CORE_IMG_OUT) --base=$$(LIBART_IMG_TARGET_BASE_ADDRESS) \ + --instruction-set=$$($(1)TARGET_ARCH) --instruction-set-features=$$(TARGET_INSTRUCTION_SET_FEATURES) --android-root=$$(PRODUCT_OUT)/system + +$$($(1)TARGET_CORE_OAT_OUT): $$($(1)TARGET_CORE_IMG_OUT) +endef + +ifdef TARGET_2ND_ARCH +$(eval $(call create-oat-target-targets,2ND_)) +endif +$(eval $(call create-oat-target-targets,)) + ifeq ($(ART_BUILD_HOST),true) include $(CLEAR_VARS) diff --git a/dalvikvm/Android.mk b/dalvikvm/Android.mk index a046391885..231fba1b02 100644 --- a/dalvikvm/Android.mk +++ b/dalvikvm/Android.mk @@ -26,6 +26,9 @@ LOCAL_SRC_FILES := dalvikvm.cc LOCAL_CFLAGS := $(dalvikvm_cflags) LOCAL_SHARED_LIBRARIES := libdl libnativehelper LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk +LOCAL_MULTILIB := both +LOCAL_MODULE_STEM_32 := dalvikvm +LOCAL_MODULE_STEM_64 := dalvikvm64 include external/stlport/libstlport.mk include $(BUILD_EXECUTABLE) ART_TARGET_EXECUTABLES += $(TARGET_OUT_EXECUTABLES)/$(LOCAL_MODULE) diff --git a/runtime/common_runtime_test.h b/runtime/common_runtime_test.h index 4b50cf4a1c..723e32c85f 100644 --- a/runtime/common_runtime_test.h +++ b/runtime/common_runtime_test.h @@ -255,7 +255,11 @@ class CommonRuntimeTest : public testing::Test { filename += getenv("ANDROID_HOST_OUT"); filename += "/framework/"; } else { +#ifdef __LP64__ + filename += "/data/nativetest/art64/"; +#else filename += "/data/nativetest/art/"; +#endif } filename += "art-test-dex-"; filename += name; diff --git a/test/Android.mk b/test/Android.mk index bb6c43772b..d15eacf64e 100644 --- a/test/Android.mk +++ b/test/Android.mk @@ -77,6 +77,12 @@ define build-art-test-dex LOCAL_ADDITIONAL_DEPENDENCIES += $(LOCAL_PATH)/Android.mk include $(BUILD_JAVA_LIBRARY) ART_TEST_TARGET_DEX_FILES += $$(LOCAL_INSTALLED_MODULE) + + ifdef TARGET_2ND_ARCH + # TODO: make this a simple copy +$(4)/$(1)-$(2).jar: $(3)/$(1)-$(2).jar + cp $$< $(4)/ + endif endif ifeq ($(ART_BUILD_HOST),true) @@ -93,8 +99,8 @@ define build-art-test-dex ART_TEST_HOST_DEX_FILES += $$(LOCAL_INSTALLED_MODULE) endif endef -$(foreach dir,$(TEST_DEX_DIRECTORIES), $(eval $(call build-art-test-dex,art-test-dex,$(dir),$(ART_NATIVETEST_OUT)))) -$(foreach dir,$(TEST_OAT_DIRECTORIES), $(eval $(call build-art-test-dex,oat-test-dex,$(dir),$(ART_TEST_OUT)))) +$(foreach dir,$(TEST_DEX_DIRECTORIES), $(eval $(call build-art-test-dex,art-test-dex,$(dir),$(ART_NATIVETEST_OUT),$(2ND_ART_NATIVETEST_OUT)))) +$(foreach dir,$(TEST_OAT_DIRECTORIES), $(eval $(call build-art-test-dex,oat-test-dex,$(dir),$(ART_TEST_OUT),$(2ND_ART_TEST_OUT)))) ######################################################################## @@ -102,16 +108,28 @@ ART_TEST_TARGET_OAT_TARGETS := ART_TEST_HOST_OAT_DEFAULT_TARGETS := ART_TEST_HOST_OAT_INTERPRETER_TARGETS := +define declare-test-art-oat-targets-impl +.PHONY: test-art-target-oat-$(1)$($(2)ART_PHONY_TEST_TARGET_SUFFIX) +test-art-target-oat-$(1)$($(2)ART_PHONY_TEST_TARGET_SUFFIX): $($(2)ART_TEST_OUT)/oat-test-dex-$(1).jar test-art-target-sync + adb shell touch $($(2)ART_TEST_DIR)/test-art-target-oat-$(1) + adb shell rm $($(2)ART_TEST_DIR)/test-art-target-oat-$(1) + adb shell sh -c "/system/bin/dalvikvm$($(2)ART_TARGET_BINARY_SUFFIX) $(DALVIKVM_FLAGS) -XXlib:libartd.so -Ximage:$($(2)ART_TEST_DIR)/core.art -classpath $($(2)ART_TEST_DIR)/oat-test-dex-$(1).jar -Djava.library.path=$($(2)ART_TEST_DIR) $(1) && touch $($(2)ART_TEST_DIR)/test-art-target-oat-$(1)" + $(hide) (adb pull $($(2)ART_TEST_DIR)/test-art-target-oat-$(1) /tmp/ && echo test-art-target-oat-$(1)$($(2)ART_PHONY_TEST_TARGET_SUFFIX) PASSED) || (echo test-art-target-oat-$(1)$($(2)ART_PHONY_TEST_TARGET_SUFFIX) FAILED && exit 1) + $(hide) rm /tmp/test-art-target-oat-$(1) +endef + # $(1): directory # $(2): arguments define declare-test-art-oat-targets -.PHONY: test-art-target-oat-$(1) -test-art-target-oat-$(1): $(ART_TEST_OUT)/oat-test-dex-$(1).jar test-art-target-sync - adb shell touch $(ART_TEST_DIR)/test-art-target-oat-$(1) - adb shell rm $(ART_TEST_DIR)/test-art-target-oat-$(1) - adb shell sh -c "/system/bin/dalvikvm $(DALVIKVM_FLAGS) -XXlib:libartd.so -Ximage:$(ART_TEST_DIR)/core.art -classpath $(ART_TEST_DIR)/oat-test-dex-$(1).jar -Djava.library.path=$(ART_TEST_DIR) $(1) $(2) && touch $(ART_TEST_DIR)/test-art-target-oat-$(1)" - $(hide) (adb pull $(ART_TEST_DIR)/test-art-target-oat-$(1) /tmp/ && echo test-art-target-oat-$(1) PASSED) || (echo test-art-target-oat-$(1) FAILED && exit 1) - $(hide) rm /tmp/test-art-target-oat-$(1) + ifdef TARGET_2ND_ARCH + $(call declare-test-art-oat-targets-impl,$(1),2ND_) + + # Bind the primary to the non-suffix rule + ifneq ($(ART_PHONY_TEST_TARGET_SUFFIX),) +test-art-target-oat-$(1): test-art-target-oat-$(1)$(ART_PHONY_TEST_TARGET_SUFFIX) + endif + endif + $(call declare-test-art-oat-targets-impl,$(1),) $(HOST_OUT_JAVA_LIBRARIES)/oat-test-dex-$(1).odex: $(HOST_OUT_JAVA_LIBRARIES)/oat-test-dex-$(1).jar $(HOST_CORE_IMG_OUT) | $(DEX2OAT) $(DEX2OAT) $(DEX2OAT_FLAGS) --runtime-arg -Xms16m --runtime-arg -Xmx16m --boot-image=$(HOST_CORE_IMG_OUT) --dex-file=$(PWD)/$$< --oat-file=$(PWD)/$$@ --instruction-set=$(ART_HOST_ARCH) --host --android-root=$(HOST_OUT) diff --git a/test/etc/push-and-run-test-jar b/test/etc/push-and-run-test-jar index 9e30f65004..93d7e79298 100755 --- a/test/etc/push-and-run-test-jar +++ b/test/etc/push-and-run-test-jar @@ -19,6 +19,7 @@ QUIET="n" DEV_MODE="n" INVOKE_WITH="" FLAGS="" +TARGET_SUFFIX="" while true; do if [ "x$1" = "x--quiet" ]; then @@ -79,6 +80,9 @@ while true; do elif [ "x$1" = "x--" ]; then shift break + elif [ "x$1" = "x--64" ]; then + TARGET_SUFFIX="64" + shift elif expr "x$1" : "x--" >/dev/null 2>&1; then echo "unknown $0 option: $1" 1>&2 exit 1 @@ -136,7 +140,7 @@ if [ "$DEBUGGER" = "y" ]; then fi if [ "$GDB" = "y" ]; then - gdb="gdbserver :5039" + gdb="/data/gdbserver$TARGET_SUFFIX :5039" gdbargs="$exe" fi @@ -147,7 +151,7 @@ fi JNI_OPTS="-Xjnigreflimit:512 -Xcheck:jni" cmdline="cd $DEX_LOCATION && mkdir dalvik-cache && export ANDROID_DATA=$DEX_LOCATION && export DEX_LOCATION=$DEX_LOCATION && \ - $INVOKE_WITH $gdb /system/bin/dalvikvm $FLAGS $gdbargs -XXlib:$LIB $ZYGOTE $JNI_OPTS $INT_OPTS $DEBUGGER_OPTS $BOOT_OPT -cp $DEX_LOCATION/$TEST_NAME.jar Main" + $INVOKE_WITH $gdb /system/bin/dalvikvm$TARGET_SUFFIX $FLAGS $gdbargs -XXlib:$LIB $ZYGOTE $JNI_OPTS $INT_OPTS $DEBUGGER_OPTS $BOOT_OPT -cp $DEX_LOCATION/$TEST_NAME.jar Main" if [ "$DEV_MODE" = "y" ]; then echo $cmdline "$@" fi diff --git a/test/run-test b/test/run-test index 8ff0915b65..58de9809df 100755 --- a/test/run-test +++ b/test/run-test @@ -152,6 +152,9 @@ while true; do elif [ "x$1" = "x--help" ]; then usage="yes" shift + elif [ "x$1" = "x--64" ]; then + run_args="${run_args} --64" + shift elif expr "x$1" : "x--" >/dev/null 2>&1; then echo "unknown $0 option: $1" 1>&2 usage="yes" @@ -244,6 +247,7 @@ if [ "$usage" = "yes" ]; then echo " --jvm Use a host-local RI virtual machine." echo " --output-path [path] Location where to store the build" \ "files." + echo " --64 Run the test in 64-bit mode" ) 1>&2 exit 1 fi |