1afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# Copyright (C) 2011 The Android Open Source Project 2afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# 3afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# Licensed under the Apache License, Version 2.0 (the "License"); 4afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# you may not use this file except in compliance with the License. 5afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# You may obtain a copy of the License at 6afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# 7afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# http://www.apache.org/licenses/LICENSE-2.0 8afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# 9afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# Unless required by applicable law or agreed to in writing, software 10afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# distributed under the License is distributed on an "AS IS" BASIS, 11afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# See the License for the specific language governing permissions and 13afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# limitations under the License. 14afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# 15afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 16afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian RogersLOCAL_PATH := $(call my-dir) 17afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 18afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogersinclude art/build/Android.common_test.mk 19afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 20afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# List of all tests of the form 003-omnibus-opcodes. 21afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian RogersTEST_ART_RUN_TESTS := $(wildcard $(LOCAL_PATH)/[0-9]*) 22afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian RogersTEST_ART_RUN_TESTS := $(subst $(LOCAL_PATH)/,, $(TEST_ART_RUN_TESTS)) 23afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 24f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers######################################################################## 25f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers# The art-run-tests module, used to build all run-tests into an image. 269dcc4572949f6a8231a1b4ed859676ba6f411726Alex Light 27afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# The path where build only targets will be output, e.g. 28afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# out/target/product/generic_x86_64/obj/PACKAGING/art-run-tests_intermediates/DATA 29afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogersart_run_tests_dir := $(call intermediates-dir-for,PACKAGING,art-run-tests)/DATA 30afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 31afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# A generated list of prerequisites that call 'run-test --build-only', the actual prerequisite is 32afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# an empty file touched in the intermediate directory. 33afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian RogersTEST_ART_RUN_TEST_BUILD_RULES := 34afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 3507f2bc1088039154ee10370989a7d4f37bc138aeNicolas Geoffray# Dependencies for actually running a run-test. 3619ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien HertzTEST_ART_RUN_TEST_DEPENDENCIES := \ 3719ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz $(DX) \ 3819ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz $(HOST_OUT_EXECUTABLES)/jasmin \ 3919ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz $(HOST_OUT_EXECUTABLES)/smali \ 402b763c3642b78e8a6a83787aedd713374afec2efSebastien Hertz $(HOST_OUT_EXECUTABLES)/dexmerger \ 412b763c3642b78e8a6a83787aedd713374afec2efSebastien Hertz $(JACK) 4219ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz 432b763c3642b78e8a6a83787aedd713374afec2efSebastien HertzTEST_ART_RUN_TEST_ORDERONLY_DEPENDENCIES := setup-jack-server 4407f2bc1088039154ee10370989a7d4f37bc138aeNicolas Geoffray 45093f1b4c3007d52a75186175d184ad7f58aaa0dfHiroshi Yamauchiifeq ($(ART_TEST_DEBUG_GC),true) 46093f1b4c3007d52a75186175d184ad7f58aaa0dfHiroshi Yamauchi ART_TEST_WITH_STRACE := true 47093f1b4c3007d52a75186175d184ad7f58aaa0dfHiroshi Yamauchiendif 48093f1b4c3007d52a75186175d184ad7f58aaa0dfHiroshi Yamauchi 49afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# Helper to create individual build targets for tests. Must be called with $(eval). 50afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# $(1): the test number 51afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogersdefine define-build-art-run-test 52afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers dmart_target := $(art_run_tests_dir)/art-run-tests/$(1)/touch 5319ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz run_test_options = --build-only 5491de25fd88ed755be5d72db80c93da364d97e16fAlex Light ifeq ($(ART_TEST_QUIET),true) 5591de25fd88ed755be5d72db80c93da364d97e16fAlex Light run_test_options += --quiet 5691de25fd88ed755be5d72db80c93da364d97e16fAlex Light endif 5719ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz$$(dmart_target): PRIVATE_RUN_TEST_OPTIONS := $$(run_test_options) 5805b91251870533aae58670cd073643ae700c8521Yohann Roussel$$(dmart_target): $(TEST_ART_RUN_TEST_DEPENDENCIES) $(TARGET_JACK_CLASSPATH_DEPENDENCIES) | $(TEST_ART_RUN_TEST_ORDERONLY_DEPENDENCIES) 59afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers $(hide) rm -rf $$(dir $$@) && mkdir -p $$(dir $$@) 60afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers $(hide) DX=$(abspath $(DX)) JASMIN=$(abspath $(HOST_OUT_EXECUTABLES)/jasmin) \ 618fda9f2aec6820ebf1bd550412ec99d9eb3ffa9eAndreas Gampe SMALI=$(abspath $(HOST_OUT_EXECUTABLES)/smali) \ 628fda9f2aec6820ebf1bd550412ec99d9eb3ffa9eAndreas Gampe DXMERGER=$(abspath $(HOST_OUT_EXECUTABLES)/dexmerger) \ 63cc6bb939d00016bfa342fa8cbfc7540b7abc89f2Yohann Roussel JACK_VERSION=$(JACK_DEFAULT_VERSION) \ 6419ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz JACK=$(abspath $(JACK)) \ 65aaa779a0a5f7afc23814728de68c6fe3ae1450bfYohann Roussel JACK_VERSION=$(JACK_DEFAULT_VERSION) \ 6619ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz JACK_CLASSPATH=$(TARGET_JACK_CLASSPATH) \ 6719ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz $(LOCAL_PATH)/run-test $$(PRIVATE_RUN_TEST_OPTIONS) --output-path $$(abspath $$(dir $$@)) $(1) 68afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers $(hide) touch $$@ 69afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 70afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers TEST_ART_RUN_TEST_BUILD_RULES += $$(dmart_target) 71afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers dmart_target := 7219ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz run_test_options := 73afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogersendef 74bf66bce894595c2d197c636e28d2c3a8044925e2Ian Rogers$(foreach test, $(TEST_ART_RUN_TESTS), $(eval $(call define-build-art-run-test,$(test)))) 75afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 76afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogersinclude $(CLEAR_VARS) 77afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian RogersLOCAL_MODULE_TAGS := tests 78afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian RogersLOCAL_MODULE := art-run-tests 79abbf242d57bba783bef7f4f3c4deb0e63d34353fIan RogersLOCAL_ADDITIONAL_DEPENDENCIES := $(TEST_ART_RUN_TEST_BUILD_RULES) 80afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# The build system use this flag to pick up files generated by declare-make-art-run-test. 81afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian RogersLOCAL_PICKUP_FILES := $(art_run_tests_dir) 82afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 83afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogersinclude $(BUILD_PHONY_PACKAGE) 84afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 85afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# Clear temp vars. 86afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogersart_run_tests_dir := 87afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogersdefine-build-art-run-test := 888a14b75d876ad20f08087664070354fa6f65a029Ian RogersTEST_ART_RUN_TEST_BUILD_RULES := 89afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 90afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers######################################################################## 91f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers# General rules to build and run a run-test. 92f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers 93f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian RogersTARGET_TYPES := host target 9441bb331ff93a8e54d0fafaaccfddd791a8ddf430Nicolas GeoffrayPREBUILD_TYPES := 9541bb331ff93a8e54d0fafaaccfddd791a8ddf430Nicolas Geoffrayifeq ($(ART_TEST_RUN_TEST_PREBUILD),true) 9641bb331ff93a8e54d0fafaaccfddd791a8ddf430Nicolas Geoffray PREBUILD_TYPES += prebuild 9741bb331ff93a8e54d0fafaaccfddd791a8ddf430Nicolas Geoffrayendif 9886df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersifeq ($(ART_TEST_RUN_TEST_NO_PREBUILD),true) 9986df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers PREBUILD_TYPES += no-prebuild 10086df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersendif 10186df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersifeq ($(ART_TEST_RUN_TEST_NO_DEX2OAT),true) 10286df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers PREBUILD_TYPES += no-dex2oat 10386df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersendif 10486df3ac7603f2f50780f6c4310b24a0c38a286a9Ian RogersCOMPILER_TYPES := 1057617abdb402fd0419daa3eefb2ad059ccbb8b6dbIgor Murashkinifeq ($(ART_TEST_INTERPRETER_ACCESS_CHECKS),true) 106825570c844b447beabfc7497d04fbd61c69cf28bAndreas Gampe COMPILER_TYPES += interp-ac 1077617abdb402fd0419daa3eefb2ad059ccbb8b6dbIgor Murashkinendif 10886df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersifeq ($(ART_TEST_INTERPRETER),true) 10986df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers COMPILER_TYPES += interpreter 11086df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersendif 111e5f13e57ff8fa36342beb33830b3ec5942a61ccaMathieu Chartierifeq ($(ART_TEST_JIT),true) 112e5f13e57ff8fa36342beb33830b3ec5942a61ccaMathieu Chartier COMPILER_TYPES += jit 113e5f13e57ff8fa36342beb33830b3ec5942a61ccaMathieu Chartierendif 11486df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersifeq ($(ART_TEST_OPTIMIZING),true) 11586df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers COMPILER_TYPES += optimizing 11686df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersendif 11786df3ac7603f2f50780f6c4310b24a0c38a286a9Ian RogersRELOCATE_TYPES := relocate 11886df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersifeq ($(ART_TEST_RUN_TEST_NO_RELOCATE),true) 11986df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers RELOCATE_TYPES += no-relocate 12086df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersendif 12186df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersifeq ($(ART_TEST_RUN_TEST_RELOCATE_NO_PATCHOAT),true) 122b9aec2ccd8b9f39a4ddadde5ca8304cea6b1b188Andreas Gampe RELOCATE_TYPES += relocate-npatchoat 12386df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersendif 1241445dd3b3f47fcbdb722f74bcf5189249310a0b4Mathieu ChartierTRACE_TYPES := ntrace 12586df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersifeq ($(ART_TEST_TRACE),true) 12686df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers TRACE_TYPES += trace 12786df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersendif 1287526d783ab68ed1dd53c763c75895cb432532b0fAndreas Gampeifeq ($(ART_TEST_TRACE_STREAM),true) 1297526d783ab68ed1dd53c763c75895cb432532b0fAndreas Gampe TRACE_TYPES += stream 1307526d783ab68ed1dd53c763c75895cb432532b0fAndreas Gampeendif 13186df3ac7603f2f50780f6c4310b24a0c38a286a9Ian RogersGC_TYPES := cms 132992f1e7cd2049730e45ad9b9489938845c8c4f1fAlex Lightifeq ($(ART_TEST_GC_STRESS),true) 13386df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers GC_TYPES += gcstress 13486df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersendif 135992f1e7cd2049730e45ad9b9489938845c8c4f1fAlex Lightifeq ($(ART_TEST_GC_VERIFY),true) 13686df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers GC_TYPES += gcverify 13786df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersendif 13886df3ac7603f2f50780f6c4310b24a0c38a286a9Ian RogersJNI_TYPES := checkjni 13986df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersifeq ($(ART_TEST_JNI_FORCECOPY),true) 14086df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers JNI_TYPES += forcecopy 14186df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersendif 14286df3ac7603f2f50780f6c4310b24a0c38a286a9Ian RogersIMAGE_TYPES := image 14386df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersifeq ($(ART_TEST_RUN_TEST_NO_IMAGE),true) 14486df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers IMAGE_TYPES += no-image 14586df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogersendif 146dcdc85bbd569f0ee66c331b4219c19304a616214Jeff Haoifeq ($(ART_TEST_RUN_TEST_MULTI_IMAGE),true) 147dcdc85bbd569f0ee66c331b4219c19304a616214Jeff Hao IMAGE_TYPES := multiimage 148dcdc85bbd569f0ee66c331b4219c19304a616214Jeff Haoendif 149c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampeifeq ($(ART_TEST_PIC_IMAGE),true) 150c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe IMAGE_TYPES += picimage 151dcdc85bbd569f0ee66c331b4219c19304a616214Jeff Hao ifeq ($(ART_TEST_RUN_TEST_MULTI_IMAGE),true) 152dcdc85bbd569f0ee66c331b4219c19304a616214Jeff Hao IMAGE_TYPES := multipicimage 153dcdc85bbd569f0ee66c331b4219c19304a616214Jeff Hao endif 154c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampeendif 1551445dd3b3f47fcbdb722f74bcf5189249310a0b4Mathieu ChartierPICTEST_TYPES := npictest 156c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampeifeq ($(ART_TEST_PIC_TEST),true) 157c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe PICTEST_TYPES += pictest 158c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampeendif 159bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas GeoffrayRUN_TYPES := 160bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffrayifeq ($(ART_TEST_RUN_TEST_DEBUG),true) 161bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray RUN_TYPES += debug 162bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffrayendif 163bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffrayifeq ($(ART_TEST_RUN_TEST_NDEBUG),true) 164bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray RUN_TYPES += ndebug 165bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffrayendif 1661445dd3b3f47fcbdb722f74bcf5189249310a0b4Mathieu ChartierDEBUGGABLE_TYPES := ndebuggable 16743c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffrayifeq ($(ART_TEST_RUN_TEST_DEBUGGABLE),true) 16843c162f059e6463119aa1efd0841374ca7b4f789Nicolas GeoffrayDEBUGGABLE_TYPES += debuggable 16943c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffrayendif 17041bb331ff93a8e54d0fafaaccfddd791a8ddf430Nicolas GeoffrayADDRESS_SIZES_TARGET := $(ART_PHONY_TEST_TARGET_SUFFIX) 17141bb331ff93a8e54d0fafaaccfddd791a8ddf430Nicolas GeoffrayADDRESS_SIZES_HOST := $(ART_PHONY_TEST_HOST_SUFFIX) 17241bb331ff93a8e54d0fafaaccfddd791a8ddf430Nicolas Geoffrayifeq ($(ART_TEST_RUN_TEST_2ND_ARCH),true) 17341bb331ff93a8e54d0fafaaccfddd791a8ddf430Nicolas Geoffray ADDRESS_SIZES_TARGET += $(2ND_ART_PHONY_TEST_TARGET_SUFFIX) 17441bb331ff93a8e54d0fafaaccfddd791a8ddf430Nicolas Geoffray ADDRESS_SIZES_HOST += $(2ND_ART_PHONY_TEST_HOST_SUFFIX) 17541bb331ff93a8e54d0fafaaccfddd791a8ddf430Nicolas Geoffrayendif 176f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian RogersALL_ADDRESS_SIZES := 64 32 17786df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers 178f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers# List all run test names with number arguments agreeing with the comment above. 179f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogersdefine all-run-test-names 180f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach target, $(1), \ 181bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach run-type, $(2), \ 182bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach prebuild, $(3), \ 183bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach compiler, $(4), \ 184bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach relocate, $(5), \ 185bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach trace, $(6), \ 186bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach gc, $(7), \ 187bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach jni, $(8), \ 188bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach image, $(9), \ 189c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe $(foreach pictest, $(10), \ 19043c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(foreach debuggable, $(11), \ 19143c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(foreach test, $(12), \ 19243c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(foreach address_size, $(13), \ 19343c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray test-art-$(target)-run-test-$(run-type)-$(prebuild)-$(compiler)-$(relocate)-$(trace)-$(gc)-$(jni)-$(image)-$(pictest)-$(debuggable)-$(test)$(address_size) \ 19443c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray ))))))))))))) 195f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogersendef # all-run-test-names 196f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers 197f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers# To generate a full list or tests: 198bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray# $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),$(PREBUILD_TYPES),$(COMPILER_TYPES), \ 19986df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers# $(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES),$(IMAGE_TYPES), \ 200d139bb7d1c4b86dd1d05eed32defdf7d5f7aa299Roland Levillain# $(PICTEST_TYPES),$(DEBUGGABLE_TYPES),$(TEST_ART_RUN_TESTS),$(ALL_ADDRESS_SIZES)) 201f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers 202f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers# Convert's a rule name to the form used in variables, e.g. no-relocate to NO_RELOCATE 203f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogersdefine name-to-var 204f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(shell echo $(1) | tr '[:lower:]' '[:upper:]' | tr '-' '_') 205f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogersendef # name-to-var 206f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers 207c07d66d816924bf97fa97192c23670010e775a3cAlex LightART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),$(PREBUILD_TYPES), \ 208c07d66d816924bf97fa97192c23670010e775a3cAlex Light $(COMPILER_TYPES),$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 209c07d66d816924bf97fa97192c23670010e775a3cAlex Light $(IMAGE_TYPES), $(PICTEST_TYPES), $(DEBUGGABLE_TYPES), $(ART_TEST_RUN_TEST_SKIP), $(ALL_ADDRESS_SIZES)) 210c07d66d816924bf97fa97192c23670010e775a3cAlex Light 211fc07555f6b8ce07b2c0897c6919597b53faa419dSebastien Hertz 21218047e4cd06387958d315d4de6d9c1753a08ee9eNicolas Geoffray# Disable 137-cfi (b/27391690). 2136cba74b8c89ac8738212032313635050bb1535a1Hiroshi Yamauchi# Disable 577-profile-foreign-dex (b/27454772). 214fc07555f6b8ce07b2c0897c6919597b53faa419dSebastien HertzTEST_ART_BROKEN_ALL_TARGET_TESTS := \ 2156cba74b8c89ac8738212032313635050bb1535a1Hiroshi Yamauchi 577-profile-foreign-dex \ 216fc07555f6b8ce07b2c0897c6919597b53faa419dSebastien Hertz 217fc07555f6b8ce07b2c0897c6919597b53faa419dSebastien HertzART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),$(PREBUILD_TYPES), \ 218fc07555f6b8ce07b2c0897c6919597b53faa419dSebastien Hertz $(COMPILER_TYPES), $(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 219fc07555f6b8ce07b2c0897c6919597b53faa419dSebastien Hertz $(IMAGE_TYPES),$(PICTEST_TYPES),$(DEBUGGABLE_TYPES), $(TEST_ART_BROKEN_ALL_TARGET_TESTS), \ 220fc07555f6b8ce07b2c0897c6919597b53faa419dSebastien Hertz $(ALL_ADDRESS_SIZES)) 221fc07555f6b8ce07b2c0897c6919597b53faa419dSebastien Hertz 222fc07555f6b8ce07b2c0897c6919597b53faa419dSebastien HertzTEST_ART_BROKEN_ALL_TARGET_TESTS := 223fc07555f6b8ce07b2c0897c6919597b53faa419dSebastien Hertz 224f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers# Tests that are timing sensitive and flaky on heavily loaded systems. 225f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian RogersTEST_ART_TIMING_SENSITIVE_RUN_TESTS := \ 2260b9112ddc74919650d6f62abfb758549763c48caNicolas Geoffray 002-sleep \ 227f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers 053-wait-some \ 228e4a91bbeaa118bc01a5c338c6a6d9ee094a6a2c6Mathieu Chartier 055-enum-performance \ 229e4a91bbeaa118bc01a5c338c6a6d9ee094a6a2c6Mathieu Chartier 133-static-invoke-super 230afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 231dedcba2e42ddd8e1202abf50bbcdbe46d28daff3Alex Light# disable timing sensitive tests on "dist" builds. 232dedcba2e42ddd8e1202abf50bbcdbe46d28daff3Alex Lightifdef dist_goal 233dedcba2e42ddd8e1202abf50bbcdbe46d28daff3Alex Light ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),$(PREBUILD_TYPES), \ 234dedcba2e42ddd8e1202abf50bbcdbe46d28daff3Alex Light $(COMPILER_TYPES),$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 235dedcba2e42ddd8e1202abf50bbcdbe46d28daff3Alex Light $(IMAGE_TYPES), $(PICTEST_TYPES), $(DEBUGGABLE_TYPES), $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(ALL_ADDRESS_SIZES)) 236dedcba2e42ddd8e1202abf50bbcdbe46d28daff3Alex Lightendif 237dedcba2e42ddd8e1202abf50bbcdbe46d28daff3Alex Light 238cfe7184632c2b698179125dc1767ab83004b3d2bRichard Uhler# 147-stripped-dex-fallback isn't supported on device because --strip-dex 239cfe7184632c2b698179125dc1767ab83004b3d2bRichard Uhler# requires the zip command. 240354efa6cdf558b2331e8fec539893fa51763806eVladimir Marko# 569-checker-pattern-replacement tests behaviour present only on host. 241354efa6cdf558b2331e8fec539893fa51763806eVladimir MarkoTEST_ART_BROKEN_TARGET_TESTS := \ 242cfe7184632c2b698179125dc1767ab83004b3d2bRichard Uhler 147-stripped-dex-fallback \ 243354efa6cdf558b2331e8fec539893fa51763806eVladimir Marko 569-checker-pattern-replacement 244354efa6cdf558b2331e8fec539893fa51763806eVladimir Marko 245354efa6cdf558b2331e8fec539893fa51763806eVladimir Markoifneq (,$(filter target,$(TARGET_TYPES))) 246354efa6cdf558b2331e8fec539893fa51763806eVladimir Marko ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,target,$(RUN_TYPES),$(PREBUILD_TYPES), \ 247354efa6cdf558b2331e8fec539893fa51763806eVladimir Marko $(COMPILER_TYPES),$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 248354efa6cdf558b2331e8fec539893fa51763806eVladimir Marko $(IMAGE_TYPES), $(PICTEST_TYPES), $(DEBUGGABLE_TYPES), $(TEST_ART_BROKEN_TARGET_TESTS), $(ALL_ADDRESS_SIZES)) 249354efa6cdf558b2331e8fec539893fa51763806eVladimir Markoendif 250354efa6cdf558b2331e8fec539893fa51763806eVladimir Marko 251354efa6cdf558b2331e8fec539893fa51763806eVladimir MarkoTEST_ART_BROKEN_TARGET_TESTS := 252354efa6cdf558b2331e8fec539893fa51763806eVladimir Marko 253ec00b7e916aa4bec4abf27788b23b0fe274a086fNicolas Geoffray# Tests that require python3. 254ec00b7e916aa4bec4abf27788b23b0fe274a086fNicolas GeoffrayTEST_ART_PYTHON3_DEPENDENCY_RUN_TESTS := \ 255ec00b7e916aa4bec4abf27788b23b0fe274a086fNicolas Geoffray 960-default-smali \ 256ec00b7e916aa4bec4abf27788b23b0fe274a086fNicolas Geoffray 961-default-iface-resolution-generated \ 257ec00b7e916aa4bec4abf27788b23b0fe274a086fNicolas Geoffray 964-default-iface-init-generated \ 258705ad49f353d3f90d8b63625aca2c2035bacdbefAlex Light 968-default-partial-compile-generated \ 259812dd366f109e810275f3f869a45b9748255b5a5Nicolas Geoffray 969-iface-super \ 260705ad49f353d3f90d8b63625aca2c2035bacdbefAlex Light 970-iface-super-resolution-generated \ 261a866ccf692a3823f99423fff92fb3e11c13f4622Nicolas Geoffray 971-iface-super 262ec00b7e916aa4bec4abf27788b23b0fe274a086fNicolas Geoffray 263dedcba2e42ddd8e1202abf50bbcdbe46d28daff3Alex Light# Check if we have python3 to run our tests. 264dedcba2e42ddd8e1202abf50bbcdbe46d28daff3Alex Lightifeq ($(wildcard /usr/bin/python3),) 265dedcba2e42ddd8e1202abf50bbcdbe46d28daff3Alex Light $(warning "No python3 found. Disabling tests: $(TEST_ART_PYTHON3_DEPENDENCY_RUN_TESTS)") 266ec00b7e916aa4bec4abf27788b23b0fe274a086fNicolas Geoffray 267dedcba2e42ddd8e1202abf50bbcdbe46d28daff3Alex Light # Currently disable tests requiring python3 when it is not installed. 268ec00b7e916aa4bec4abf27788b23b0fe274a086fNicolas Geoffray ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),$(PREBUILD_TYPES), \ 269ec00b7e916aa4bec4abf27788b23b0fe274a086fNicolas Geoffray $(COMPILER_TYPES),$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 270ec00b7e916aa4bec4abf27788b23b0fe274a086fNicolas Geoffray $(IMAGE_TYPES), $(PICTEST_TYPES), $(DEBUGGABLE_TYPES), $(TEST_ART_PYTHON3_DEPENDENCY_RUN_TESTS), $(ALL_ADDRESS_SIZES)) 271f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogersendif 272f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers 27386df3ac7603f2f50780f6c4310b24a0c38a286a9Ian RogersTEST_ART_TIMING_SENSITIVE_RUN_TESTS := 27486df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers 27540e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogers# Note 116-nodex2oat is not broken per-se it just doesn't (and isn't meant to) work with --prebuild. 276f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian RogersTEST_ART_BROKEN_PREBUILD_RUN_TESTS := \ 2773ad5d5ea993376e7cae41ee6642d5e963822db84Andreas Gampe 116-nodex2oat \ 27824e04aa68c575d349eac0d9d09aab9bd3106ef94Jean Christophe Beyler 118-noimage-dex2oat \ 27924e04aa68c575d349eac0d9d09aab9bd3106ef94Jean Christophe Beyler 134-nodex2oat-nofallback 280f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers 28140e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogersifneq (,$(filter prebuild,$(PREBUILD_TYPES))) 282bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),prebuild, \ 28340e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogers $(COMPILER_TYPES),$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 28443c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(IMAGE_TYPES), $(PICTEST_TYPES), $(DEBUGGABLE_TYPES), $(TEST_ART_BROKEN_PREBUILD_RUN_TESTS), $(ALL_ADDRESS_SIZES)) 28540e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogersendif 286f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers 28786df3ac7603f2f50780f6c4310b24a0c38a286a9Ian RogersTEST_ART_BROKEN_PREBUILD_RUN_TESTS := 28886df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers 289216848a1d41e986ff169e4277135b8ef545e67a3Andreas Gampe# 554-jit-profile-file is disabled because it needs a primary oat file to know what it should save. 290cfa72391f9ec8ec99059f5125b0cb5c0dc4ac16eNicolas Geoffray# 529 and 555: b/27784033 29140e1912e9fc26f9970035e70d59ef9fbbeb796efIan RogersTEST_ART_BROKEN_NO_PREBUILD_TESTS := \ 292216848a1d41e986ff169e4277135b8ef545e67a3Andreas Gampe 117-nopatchoat \ 2931153ae16f243adb30fc8509c619025d30408c74aRichard Uhler 147-stripped-dex-fallback \ 294cfa72391f9ec8ec99059f5125b0cb5c0dc4ac16eNicolas Geoffray 554-jit-profile-file \ 295cfa72391f9ec8ec99059f5125b0cb5c0dc4ac16eNicolas Geoffray 529-checker-unresolved \ 2960748ed9fcf63b8fc23e0d8f019ddc933f47fda10Andreas Gampe 555-checker-regression-x86const \ 2970748ed9fcf63b8fc23e0d8f019ddc933f47fda10Andreas Gampe 608-checker-unresolved-lse 298f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers 29940e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogersifneq (,$(filter no-prebuild,$(PREBUILD_TYPES))) 300bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),no-prebuild, \ 30140e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogers $(COMPILER_TYPES),$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 30243c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(IMAGE_TYPES), $(PICTEST_TYPES), $(DEBUGGABLE_TYPES), $(TEST_ART_BROKEN_NO_PREBUILD_TESTS), $(ALL_ADDRESS_SIZES)) 30340e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogersendif 304f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers 30540e1912e9fc26f9970035e70d59ef9fbbeb796efIan RogersTEST_ART_BROKEN_NO_PREBUILD_TESTS := 30686df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers 30740e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogers# Note 117-nopatchoat is not broken per-se it just doesn't work (and isn't meant to) without 30840e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogers# --prebuild --relocate 30940e1912e9fc26f9970035e70d59ef9fbbeb796efIan RogersTEST_ART_BROKEN_NO_RELOCATE_TESTS := \ 3103ad5d5ea993376e7cae41ee6642d5e963822db84Andreas Gampe 117-nopatchoat \ 3113ad5d5ea993376e7cae41ee6642d5e963822db84Andreas Gampe 118-noimage-dex2oat \ 312226501b317e148aa8a8983355e85acb59c1eee83Calin Juravle 119-noimage-patchoat \ 313226501b317e148aa8a8983355e85acb59c1eee83Calin Juravle 554-jit-profile-file 314f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers 31540e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogersifneq (,$(filter no-relocate,$(RELOCATE_TYPES))) 316bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),$(PREBUILD_TYPES), \ 31740e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogers $(COMPILER_TYPES), no-relocate,$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 31843c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(IMAGE_TYPES), $(PICTEST_TYPES), $(DEBUGGABLE_TYPES), $(TEST_ART_BROKEN_NO_RELOCATE_TESTS), $(ALL_ADDRESS_SIZES)) 31940e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogersendif 320f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers 32140e1912e9fc26f9970035e70d59ef9fbbeb796efIan RogersTEST_ART_BROKEN_NO_RELOCATE_TESTS := 32286df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers 3237617abdb402fd0419daa3eefb2ad059ccbb8b6dbIgor Murashkin# Temporarily disable some broken tests when forcing access checks in interpreter b/22414682 3247617abdb402fd0419daa3eefb2ad059ccbb8b6dbIgor MurashkinTEST_ART_BROKEN_INTERPRETER_ACCESS_CHECK_TESTS := \ 325df707e406877e9c0426dd051c00933ebb331673eIgor Murashkin 137-cfi 3267617abdb402fd0419daa3eefb2ad059ccbb8b6dbIgor Murashkin 327825570c844b447beabfc7497d04fbd61c69cf28bAndreas Gampeifneq (,$(filter interp-ac,$(COMPILER_TYPES))) 3287617abdb402fd0419daa3eefb2ad059ccbb8b6dbIgor Murashkin ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),$(PREBUILD_TYPES), \ 329825570c844b447beabfc7497d04fbd61c69cf28bAndreas Gampe interp-ac,$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 3307617abdb402fd0419daa3eefb2ad059ccbb8b6dbIgor Murashkin $(IMAGE_TYPES), $(PICTEST_TYPES), $(DEBUGGABLE_TYPES), $(TEST_ART_BROKEN_INTERPRETER_ACCESS_CHECK_TESTS), $(ALL_ADDRESS_SIZES)) 3317617abdb402fd0419daa3eefb2ad059ccbb8b6dbIgor Murashkinendif 3327617abdb402fd0419daa3eefb2ad059ccbb8b6dbIgor Murashkin 3337617abdb402fd0419daa3eefb2ad059ccbb8b6dbIgor MurashkinTEST_ART_BROKEN_INTERPRETER_ACCESS_CHECK_TESTS := 3347617abdb402fd0419daa3eefb2ad059ccbb8b6dbIgor Murashkin 3351ed11b9ad5512cf464cb1686640df53201fa5297Man Cao# Tests that are broken with GC stress. 3368d148c969769be83fc24484c46be5a2f1e672a0eAlex Light# * 137-cfi needs to unwind a second forked process. We're using a primitive sleep to wait till we 3378d148c969769be83fc24484c46be5a2f1e672a0eAlex Light# hope the second process got into the expected state. The slowness of gcstress makes this bad. 3389b0f516d3da1dfe10471ab760edc8206809ce829Alex Light# * 961-default-iface-resolution-generated and 964-default-iface-init-generated are very long tests 3399b0f516d3da1dfe10471ab760edc8206809ce829Alex Light# that often will take more than the timeout to run when gcstress is enabled. This is because 3409b0f516d3da1dfe10471ab760edc8206809ce829Alex Light# gcstress slows down allocations significantly which these tests do a lot. 341eb19362bae3dc12275c1a3b3aff20e9e8965ead8Mathieu ChartierTEST_ART_BROKEN_GCSTRESS_RUN_TESTS := \ 3428d148c969769be83fc24484c46be5a2f1e672a0eAlex Light 137-cfi \ 3439b0f516d3da1dfe10471ab760edc8206809ce829Alex Light 961-default-iface-resolution-generated \ 3449b0f516d3da1dfe10471ab760edc8206809ce829Alex Light 964-default-iface-init-generated 3451ed11b9ad5512cf464cb1686640df53201fa5297Man Cao 3461ed11b9ad5512cf464cb1686640df53201fa5297Man Caoifneq (,$(filter gcstress,$(GC_TYPES))) 3471ed11b9ad5512cf464cb1686640df53201fa5297Man Cao ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),$(PREBUILD_TYPES), \ 3481ed11b9ad5512cf464cb1686640df53201fa5297Man Cao $(COMPILER_TYPES),$(RELOCATE_TYPES),$(TRACE_TYPES),gcstress,$(JNI_TYPES), \ 3491ed11b9ad5512cf464cb1686640df53201fa5297Man Cao $(IMAGE_TYPES), $(PICTEST_TYPES), $(DEBUGGABLE_TYPES), $(TEST_ART_BROKEN_GCSTRESS_RUN_TESTS), $(ALL_ADDRESS_SIZES)) 3501ed11b9ad5512cf464cb1686640df53201fa5297Man Caoendif 3511ed11b9ad5512cf464cb1686640df53201fa5297Man Cao 3521ed11b9ad5512cf464cb1686640df53201fa5297Man CaoTEST_ART_BROKEN_GCSTRESS_RUN_TESTS := 35340e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogers 354f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers# 115-native-bridge setup is complicated. Need to implement it correctly for the target. 355bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas GeoffrayART_TEST_KNOWN_BROKEN += $(call all-run-test-names,target,$(RUN_TYPES),$(PREBUILD_TYPES),$(COMPILER_TYPES), \ 35643c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES),$(IMAGE_TYPES),$(PICTEST_TYPES),$(DEBUGGABLE_TYPES), 115-native-bridge, \ 357f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(ALL_ADDRESS_SIZES)) 358f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers 3593a91309c30a7575776526ffe6e9a46dc648a59feAndreas Gampe# 130-hprof dumps the heap and runs hprof-conv to check whether the file is somewhat readable. This 3603a91309c30a7575776526ffe6e9a46dc648a59feAndreas Gampe# is only possible on the host. 3613a91309c30a7575776526ffe6e9a46dc648a59feAndreas Gampe# TODO: Turn off all the other combinations, this is more about testing actual ART code. A gtest is 3623a91309c30a7575776526ffe6e9a46dc648a59feAndreas Gampe# very hard to write here, as (for a complete test) JDWP must be set up. 3633a91309c30a7575776526ffe6e9a46dc648a59feAndreas GampeART_TEST_KNOWN_BROKEN += $(call all-run-test-names,target,$(RUN_TYPES),$(PREBUILD_TYPES), \ 3643a91309c30a7575776526ffe6e9a46dc648a59feAndreas Gampe $(COMPILER_TYPES),$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES),$(IMAGE_TYPES), \ 36543c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(PICTEST_TYPES),$(DEBUGGABLE_TYPES),130-hprof,$(ALL_ADDRESS_SIZES)) 3663a91309c30a7575776526ffe6e9a46dc648a59feAndreas Gampe 36794329d31d2a99c9aff889b88ba4b675135409b82Andreas Gampe# 131 is an old test. The functionality has been implemented at an earlier stage and is checked 36880b37b7e679a530738c9bcbd39873b6dacf177e5Mathieu Chartier# in tests 138. Blacklisted for debug builds since these builds have duplicate classes checks which 36980b37b7e679a530738c9bcbd39873b6dacf177e5Mathieu Chartier# punt to interpreter. 37080b37b7e679a530738c9bcbd39873b6dacf177e5Mathieu ChartierART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),debug,$(PREBUILD_TYPES), \ 37194329d31d2a99c9aff889b88ba4b675135409b82Andreas Gampe $(COMPILER_TYPES),$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES),$(IMAGE_TYPES), \ 37294329d31d2a99c9aff889b88ba4b675135409b82Andreas Gampe $(PICTEST_TYPES),$(DEBUGGABLE_TYPES),131-structural-change,$(ALL_ADDRESS_SIZES)) 37394329d31d2a99c9aff889b88ba4b675135409b82Andreas Gampe 37480b37b7e679a530738c9bcbd39873b6dacf177e5Mathieu Chartier# 138-duplicate-classes-check. Turned on for debug builds since debug builds have duplicate classes 37580b37b7e679a530738c9bcbd39873b6dacf177e5Mathieu Chartier# checks enabled, b/2133391. 37680b37b7e679a530738c9bcbd39873b6dacf177e5Mathieu ChartierART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),ndebug,$(PREBUILD_TYPES), \ 37769b5d8febe6dd552d427c106f3e3f8cf715206b0Andreas Gampe $(COMPILER_TYPES),$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES),$(IMAGE_TYPES), \ 37869b5d8febe6dd552d427c106f3e3f8cf715206b0Andreas Gampe $(PICTEST_TYPES),$(DEBUGGABLE_TYPES),138-duplicate-classes-check,$(ALL_ADDRESS_SIZES)) 37969b5d8febe6dd552d427c106f3e3f8cf715206b0Andreas Gampe 38003a112d23694afffe9808082e7144b7e8744a4bdAlex Light# All these tests check that we have sane behavior if we don't have a patchoat or dex2oat. 38103a112d23694afffe9808082e7144b7e8744a4bdAlex Light# Therefore we shouldn't run them in situations where we actually don't have these since they 38203a112d23694afffe9808082e7144b7e8744a4bdAlex Light# explicitly test for them. These all also assume we have an image. 3833aa7fb86baa175f6a1e15eabf4b455c533276bf0Richard Uhler# 147-stripped-dex-fallback is disabled because it requires --prebuild. 384226501b317e148aa8a8983355e85acb59c1eee83Calin Juravle# 554-jit-profile-file is disabled because it needs a primary oat file to know what it should save. 38503a112d23694afffe9808082e7144b7e8744a4bdAlex LightTEST_ART_BROKEN_FALLBACK_RUN_TESTS := \ 38603a112d23694afffe9808082e7144b7e8744a4bdAlex Light 116-nodex2oat \ 38703a112d23694afffe9808082e7144b7e8744a4bdAlex Light 117-nopatchoat \ 38803a112d23694afffe9808082e7144b7e8744a4bdAlex Light 118-noimage-dex2oat \ 389b9aec2ccd8b9f39a4ddadde5ca8304cea6b1b188Andreas Gampe 119-noimage-patchoat \ 390e1bbed21f1f442a047a4035516e067be484d8c47Andreas Gampe 137-cfi \ 391226501b317e148aa8a8983355e85acb59c1eee83Calin Juravle 138-duplicate-classes-check2 \ 3923aa7fb86baa175f6a1e15eabf4b455c533276bf0Richard Uhler 147-stripped-dex-fallback \ 393226501b317e148aa8a8983355e85acb59c1eee83Calin Juravle 554-jit-profile-file 394b9aec2ccd8b9f39a4ddadde5ca8304cea6b1b188Andreas Gampe 395b9aec2ccd8b9f39a4ddadde5ca8304cea6b1b188Andreas Gampe# This test fails without an image. 396b9aec2ccd8b9f39a4ddadde5ca8304cea6b1b188Andreas GampeTEST_ART_BROKEN_NO_IMAGE_RUN_TESTS := \ 397e1bbed21f1f442a047a4035516e067be484d8c47Andreas Gampe 137-cfi \ 398b9aec2ccd8b9f39a4ddadde5ca8304cea6b1b188Andreas Gampe 138-duplicate-classes-check 39903a112d23694afffe9808082e7144b7e8744a4bdAlex Light 40040e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogersifneq (,$(filter no-dex2oat,$(PREBUILD_TYPES))) 401bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),no-dex2oat, \ 40240e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogers $(COMPILER_TYPES),$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES),$(IMAGE_TYPES), \ 40343c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(PICTEST_TYPES),$(DEBUGGABLE_TYPES), $(TEST_ART_BROKEN_FALLBACK_RUN_TESTS),$(ALL_ADDRESS_SIZES)) 40440e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogersendif 40540e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogers 40603a112d23694afffe9808082e7144b7e8744a4bdAlex Light 40740e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogersifneq (,$(filter no-image,$(IMAGE_TYPES))) 408bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),$(PREBUILD_TYPES), \ 40940e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogers $(COMPILER_TYPES), $(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES),no-image, \ 41043c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(PICTEST_TYPES), $(DEBUGGABLE_TYPES), $(TEST_ART_BROKEN_FALLBACK_RUN_TESTS),$(ALL_ADDRESS_SIZES)) 411b9aec2ccd8b9f39a4ddadde5ca8304cea6b1b188Andreas Gampe ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),$(PREBUILD_TYPES), \ 412b9aec2ccd8b9f39a4ddadde5ca8304cea6b1b188Andreas Gampe $(COMPILER_TYPES), $(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES),no-image, \ 413b9aec2ccd8b9f39a4ddadde5ca8304cea6b1b188Andreas Gampe $(PICTEST_TYPES), $(DEBUGGABLE_TYPES), $(TEST_ART_BROKEN_NO_IMAGE_RUN_TESTS),$(ALL_ADDRESS_SIZES)) 41440e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogersendif 41503a112d23694afffe9808082e7144b7e8744a4bdAlex Light 4161445dd3b3f47fcbdb722f74bcf5189249310a0b4Mathieu Chartierifneq (,$(filter relocate-npatchoat,$(RELOCATE_TYPES))) 417bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),$(PREBUILD_TYPES), \ 4181445dd3b3f47fcbdb722f74bcf5189249310a0b4Mathieu Chartier $(COMPILER_TYPES), relocate-npatchoat,$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 41943c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(IMAGE_TYPES),$(PICTEST_TYPES),$(DEBUGGABLE_TYPES), $(TEST_ART_BROKEN_FALLBACK_RUN_TESTS),$(ALL_ADDRESS_SIZES)) 42040e1912e9fc26f9970035e70d59ef9fbbeb796efIan Rogersendif 42103a112d23694afffe9808082e7144b7e8744a4bdAlex Light 42286df3ac7603f2f50780f6c4310b24a0c38a286a9Ian RogersTEST_ART_BROKEN_FALLBACK_RUN_TESTS := 42386df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers 424e1bbed21f1f442a047a4035516e067be484d8c47Andreas Gampe# 137: 425e1bbed21f1f442a047a4035516e067be484d8c47Andreas Gampe# This test unrolls and expects managed frames, but tracing means we run the interpreter. 426d9bc433a89c41a255d1b669d075f802597839bdcNicolas Geoffray# 802 and 570-checker-osr: 4279cb65bcea36aaabe00e39c061adf35727d251402Andreas Gampe# This test dynamically enables tracing to force a deoptimization. This makes the test meaningless 4289cb65bcea36aaabe00e39c061adf35727d251402Andreas Gampe# when already tracing, and writes an error message that we do not want to check for. 4299cb65bcea36aaabe00e39c061adf35727d251402Andreas GampeTEST_ART_BROKEN_TRACING_RUN_TESTS := \ 4307778b880b9cf46fe7a303b11477bd92b5cf65316Mathieu Chartier 087-gc-after-link \ 431e1bbed21f1f442a047a4035516e067be484d8c47Andreas Gampe 137-cfi \ 43242fbf491ff231f0c956665d764c6c88c5b0edbd1Mathieu Chartier 141-class-unload \ 433d9bc433a89c41a255d1b669d075f802597839bdcNicolas Geoffray 570-checker-osr \ 4349cb65bcea36aaabe00e39c061adf35727d251402Andreas Gampe 802-deoptimization 4359cb65bcea36aaabe00e39c061adf35727d251402Andreas Gampe 4367526d783ab68ed1dd53c763c75895cb432532b0fAndreas Gampeifneq (,$(filter trace stream,$(TRACE_TYPES))) 4379cb65bcea36aaabe00e39c061adf35727d251402Andreas Gampe ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),$(PREBUILD_TYPES), \ 4387526d783ab68ed1dd53c763c75895cb432532b0fAndreas Gampe $(COMPILER_TYPES),$(RELOCATE_TYPES),trace stream,$(GC_TYPES),$(JNI_TYPES),$(IMAGE_TYPES), \ 43943c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(PICTEST_TYPES),$(DEBUGGABLE_TYPES), $(TEST_ART_BROKEN_TRACING_RUN_TESTS),$(ALL_ADDRESS_SIZES)) 4409cb65bcea36aaabe00e39c061adf35727d251402Andreas Gampeendif 4419cb65bcea36aaabe00e39c061adf35727d251402Andreas Gampe 442e1bbed21f1f442a047a4035516e067be484d8c47Andreas Gampe# Known broken tests for the interpreter. 443e1bbed21f1f442a047a4035516e067be484d8c47Andreas Gampe# CFI unwinding expects managed frames. 444e1bbed21f1f442a047a4035516e067be484d8c47Andreas GampeTEST_ART_BROKEN_INTERPRETER_RUN_TESTS := \ 445226501b317e148aa8a8983355e85acb59c1eee83Calin Juravle 137-cfi \ 446226501b317e148aa8a8983355e85acb59c1eee83Calin Juravle 554-jit-profile-file 447e1bbed21f1f442a047a4035516e067be484d8c47Andreas Gampe 448e1bbed21f1f442a047a4035516e067be484d8c47Andreas Gampeifneq (,$(filter interpreter,$(COMPILER_TYPES))) 449e1bbed21f1f442a047a4035516e067be484d8c47Andreas Gampe ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),$(PREBUILD_TYPES), \ 450e1bbed21f1f442a047a4035516e067be484d8c47Andreas Gampe interpreter,$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 451e1bbed21f1f442a047a4035516e067be484d8c47Andreas Gampe $(IMAGE_TYPES),$(PICTEST_TYPES),$(DEBUGGABLE_TYPES),$(TEST_ART_BROKEN_INTERPRETER_RUN_TESTS),$(ALL_ADDRESS_SIZES)) 452e1bbed21f1f442a047a4035516e067be484d8c47Andreas Gampeendif 453e1bbed21f1f442a047a4035516e067be484d8c47Andreas Gampe 454e1bbed21f1f442a047a4035516e067be484d8c47Andreas GampeTEST_ART_BROKEN_INTERPRETER_RUN_TESTS := 455e1bbed21f1f442a047a4035516e067be484d8c47Andreas Gampe 456aab9f7394408327d8af9f2bec1b65b01e54ec107Andreas Gampe# Known broken tests for the JIT. 457aab9f7394408327d8af9f2bec1b65b01e54ec107Andreas Gampe# CFI unwinding expects managed frames, and the test does not iterate enough to even compile. JIT 458aab9f7394408327d8af9f2bec1b65b01e54ec107Andreas Gampe# also uses Generic JNI instead of the JNI compiler. 459aab9f7394408327d8af9f2bec1b65b01e54ec107Andreas GampeTEST_ART_BROKEN_JIT_RUN_TESTS := \ 460aab9f7394408327d8af9f2bec1b65b01e54ec107Andreas Gampe 137-cfi 461aab9f7394408327d8af9f2bec1b65b01e54ec107Andreas Gampe 462aab9f7394408327d8af9f2bec1b65b01e54ec107Andreas Gampeifneq (,$(filter jit,$(COMPILER_TYPES))) 463aab9f7394408327d8af9f2bec1b65b01e54ec107Andreas Gampe ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),$(PREBUILD_TYPES), \ 464aab9f7394408327d8af9f2bec1b65b01e54ec107Andreas Gampe jit,$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 465aab9f7394408327d8af9f2bec1b65b01e54ec107Andreas Gampe $(IMAGE_TYPES),$(PICTEST_TYPES),$(DEBUGGABLE_TYPES),$(TEST_ART_BROKEN_JIT_RUN_TESTS),$(ALL_ADDRESS_SIZES)) 466aab9f7394408327d8af9f2bec1b65b01e54ec107Andreas Gampeendif 467aab9f7394408327d8af9f2bec1b65b01e54ec107Andreas Gampe 468aab9f7394408327d8af9f2bec1b65b01e54ec107Andreas GampeTEST_ART_BROKEN_JIT_RUN_TESTS := 469aab9f7394408327d8af9f2bec1b65b01e54ec107Andreas Gampe 47073b6cdf10b9052d1e06d9c9c26fb424a201878f5David Brazdil# Known broken tests for the mips32 optimizing compiler backend. 47173b6cdf10b9052d1e06d9c9c26fb424a201878f5David BrazdilTEST_ART_BROKEN_OPTIMIZING_MIPS_RUN_TESTS := \ 47273b6cdf10b9052d1e06d9c9c26fb424a201878f5David Brazdil 510-checker-try-catch \ 47373b6cdf10b9052d1e06d9c9c26fb424a201878f5David Brazdil 47473b6cdf10b9052d1e06d9c9c26fb424a201878f5David Brazdilifeq (mips,$(TARGET_ARCH)) 47573b6cdf10b9052d1e06d9c9c26fb424a201878f5David Brazdil ifneq (,$(filter optimizing,$(COMPILER_TYPES))) 47673b6cdf10b9052d1e06d9c9c26fb424a201878f5David Brazdil ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,target,$(RUN_TYPES),$(PREBUILD_TYPES), \ 47773b6cdf10b9052d1e06d9c9c26fb424a201878f5David Brazdil optimizing,$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 47873b6cdf10b9052d1e06d9c9c26fb424a201878f5David Brazdil $(IMAGE_TYPES),$(PICTEST_TYPES),$(DEBUGGABLE_TYPES), \ 47973b6cdf10b9052d1e06d9c9c26fb424a201878f5David Brazdil $(TEST_ART_BROKEN_OPTIMIZING_MIPS_RUN_TESTS),$(ALL_ADDRESS_SIZES)) 48073b6cdf10b9052d1e06d9c9c26fb424a201878f5David Brazdil endif 4815319defdf502fc4569316473846b83180ec08035Alexandre Ramesendif 4825319defdf502fc4569316473846b83180ec08035Alexandre Rames 48373b6cdf10b9052d1e06d9c9c26fb424a201878f5David BrazdilTEST_ART_BROKEN_OPTIMIZING_MIPS_RUN_TESTS := 4845319defdf502fc4569316473846b83180ec08035Alexandre Rames 48540a04bf64e5837fa48aceaffe970c9984c94084aScott Wakeling# Known broken tests for the mips64 optimizing compiler backend. 48640a04bf64e5837fa48aceaffe970c9984c94084aScott WakelingTEST_ART_BROKEN_OPTIMIZING_MIPS64_RUN_TESTS := \ 48740a04bf64e5837fa48aceaffe970c9984c94084aScott Wakeling 48840a04bf64e5837fa48aceaffe970c9984c94084aScott Wakelingifeq (mips64,$(TARGET_ARCH)) 48940a04bf64e5837fa48aceaffe970c9984c94084aScott Wakeling ifneq (,$(filter optimizing,$(COMPILER_TYPES))) 49040a04bf64e5837fa48aceaffe970c9984c94084aScott Wakeling ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,target,$(RUN_TYPES),$(PREBUILD_TYPES), \ 49140a04bf64e5837fa48aceaffe970c9984c94084aScott Wakeling optimizing,$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 49240a04bf64e5837fa48aceaffe970c9984c94084aScott Wakeling $(IMAGE_TYPES),$(PICTEST_TYPES),$(DEBUGGABLE_TYPES), \ 49340a04bf64e5837fa48aceaffe970c9984c94084aScott Wakeling $(TEST_ART_BROKEN_OPTIMIZING_MIPS64_RUN_TESTS),$(ALL_ADDRESS_SIZES)) 49440a04bf64e5837fa48aceaffe970c9984c94084aScott Wakeling endif 49540a04bf64e5837fa48aceaffe970c9984c94084aScott Wakelingendif 49640a04bf64e5837fa48aceaffe970c9984c94084aScott Wakeling 49740a04bf64e5837fa48aceaffe970c9984c94084aScott WakelingTEST_ART_BROKEN_OPTIMIZING_MIPS64_RUN_TESTS := 49840a04bf64e5837fa48aceaffe970c9984c94084aScott Wakeling 499e0fe7ae36180863e45cbb9d1e6e9c30b1b1a949cNicolas Geoffray# Tests that should fail when the optimizing compiler compiles them non-debuggable. 500e0fe7ae36180863e45cbb9d1e6e9c30b1b1a949cNicolas GeoffrayTEST_ART_BROKEN_OPTIMIZING_NONDEBUGGABLE_RUN_TESTS := \ 501915b9d0c13bb5091875d868fbfa551d7b65d7477Nicolas Geoffray 454-get-vreg \ 502e0fe7ae36180863e45cbb9d1e6e9c30b1b1a949cNicolas Geoffray 457-regs \ 503e0fe7ae36180863e45cbb9d1e6e9c30b1b1a949cNicolas Geoffray 504e0fe7ae36180863e45cbb9d1e6e9c30b1b1a949cNicolas Geoffrayifneq (,$(filter optimizing,$(COMPILER_TYPES))) 505e0fe7ae36180863e45cbb9d1e6e9c30b1b1a949cNicolas Geoffray ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),$(PREBUILD_TYPES), \ 506e0fe7ae36180863e45cbb9d1e6e9c30b1b1a949cNicolas Geoffray optimizing,$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 5071445dd3b3f47fcbdb722f74bcf5189249310a0b4Mathieu Chartier $(IMAGE_TYPES),$(PICTEST_TYPES),ndebuggable,$(TEST_ART_BROKEN_OPTIMIZING_NONDEBUGGABLE_RUN_TESTS),$(ALL_ADDRESS_SIZES)) 508e0fe7ae36180863e45cbb9d1e6e9c30b1b1a949cNicolas Geoffrayendif 509e0fe7ae36180863e45cbb9d1e6e9c30b1b1a949cNicolas Geoffray 510e0fe7ae36180863e45cbb9d1e6e9c30b1b1a949cNicolas GeoffrayTEST_ART_BROKEN_OPTIMIZING_NONDEBUGGABLE_RUN_TESTS := 511e0fe7ae36180863e45cbb9d1e6e9c30b1b1a949cNicolas Geoffray 512e50b8d23d69a0d1f4eee51d34870968cd49a6f7dNicolas Geoffray# Tests that should fail when the optimizing compiler compiles them debuggable. 513e50b8d23d69a0d1f4eee51d34870968cd49a6f7dNicolas GeoffrayTEST_ART_BROKEN_OPTIMIZING_DEBUGGABLE_RUN_TESTS := \ 514e50b8d23d69a0d1f4eee51d34870968cd49a6f7dNicolas Geoffray 515e50b8d23d69a0d1f4eee51d34870968cd49a6f7dNicolas Geoffrayifneq (,$(filter optimizing,$(COMPILER_TYPES))) 516e50b8d23d69a0d1f4eee51d34870968cd49a6f7dNicolas Geoffray ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),$(PREBUILD_TYPES), \ 517e50b8d23d69a0d1f4eee51d34870968cd49a6f7dNicolas Geoffray optimizing,$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 518e50b8d23d69a0d1f4eee51d34870968cd49a6f7dNicolas Geoffray $(IMAGE_TYPES),$(PICTEST_TYPES),debuggable,$(TEST_ART_BROKEN_OPTIMIZING_DEBUGGABLE_RUN_TESTS),$(ALL_ADDRESS_SIZES)) 519e50b8d23d69a0d1f4eee51d34870968cd49a6f7dNicolas Geoffrayendif 520e50b8d23d69a0d1f4eee51d34870968cd49a6f7dNicolas Geoffray 521e50b8d23d69a0d1f4eee51d34870968cd49a6f7dNicolas GeoffrayTEST_ART_BROKEN_OPTIMIZING_DEBUGGABLE_RUN_TESTS := 522e50b8d23d69a0d1f4eee51d34870968cd49a6f7dNicolas Geoffray 523b0659e640fd80a8825b433aac9c4f095ecb098cfRoland Levillain# Tests that should fail in the read barrier configuration with the interpreter. 5246c73836daf0e8e5dfd18e4e090eb00c0de2e7255Hiroshi YamauchiTEST_ART_BROKEN_INTERPRETER_READ_BARRIER_RUN_TESTS := 525e217fee3c2daabc302f375252c5b22937d90272eRoland Levillain 52678ebe4a59ffedee43bf57f27071ab3eac06b87c6Roland Levillain# Tests that should fail in the read barrier configuration with the Optimizing compiler (AOT). 527e217fee3c2daabc302f375252c5b22937d90272eRoland Levillain# 484: Baker's fast path based read barrier compiler instrumentation generates code containing 528e217fee3c2daabc302f375252c5b22937d90272eRoland Levillain# more parallel moves on x86, thus some Checker assertions may fail. 529cd3d0fb5a4c113cfdb610454d133762a2ab0e6deRoland Levillain# 527: On ARM64, the read barrier instrumentation does not support the HArm64IntermediateAddress 530cd3d0fb5a4c113cfdb610454d133762a2ab0e6deRoland Levillain# instruction yet (b/26601270). 531e217fee3c2daabc302f375252c5b22937d90272eRoland Levillain# 537: Expects an array copy to be intrinsified on x86-64, but calling-on-slowpath intrinsics are 532e217fee3c2daabc302f375252c5b22937d90272eRoland Levillain# not yet handled in the read barrier configuration. 533e217fee3c2daabc302f375252c5b22937d90272eRoland LevillainTEST_ART_BROKEN_OPTIMIZING_READ_BARRIER_RUN_TESTS := \ 534e217fee3c2daabc302f375252c5b22937d90272eRoland Levillain 484-checker-register-hints \ 535cd3d0fb5a4c113cfdb610454d133762a2ab0e6deRoland Levillain 527-checker-array-access-split \ 536e217fee3c2daabc302f375252c5b22937d90272eRoland Levillain 537-checker-arraycopy 537e217fee3c2daabc302f375252c5b22937d90272eRoland Levillain 538560297fe39a0f181d7e7dd5f026a8c4a3d4abed1Roland Levillain# Tests that should fail in the read barrier configuration with JIT (Optimizing compiler). 5395c0a4aff91efca13b1a560bca0be98fbc6da5dddHiroshi YamauchiTEST_ART_BROKEN_JIT_READ_BARRIER_RUN_TESTS := 5403c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain 5411d85823d122b475bdf67cc49aa9eee32736fd5b1Hiroshi Yamauchiifeq ($(ART_USE_READ_BARRIER),true) 542b0659e640fd80a8825b433aac9c4f095ecb098cfRoland Levillain ifneq (,$(filter interpreter,$(COMPILER_TYPES))) 543b0659e640fd80a8825b433aac9c4f095ecb098cfRoland Levillain ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES), \ 544b0659e640fd80a8825b433aac9c4f095ecb098cfRoland Levillain $(PREBUILD_TYPES),interpreter,$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES), \ 545b0659e640fd80a8825b433aac9c4f095ecb098cfRoland Levillain $(JNI_TYPES),$(IMAGE_TYPES),$(PICTEST_TYPES),$(DEBUGGABLE_TYPES), \ 546b0659e640fd80a8825b433aac9c4f095ecb098cfRoland Levillain $(TEST_ART_BROKEN_INTERPRETER_READ_BARRIER_RUN_TESTS),$(ALL_ADDRESS_SIZES)) 547b0659e640fd80a8825b433aac9c4f095ecb098cfRoland Levillain endif 548b0659e640fd80a8825b433aac9c4f095ecb098cfRoland Levillain 549e217fee3c2daabc302f375252c5b22937d90272eRoland Levillain ifneq (,$(filter optimizing,$(COMPILER_TYPES))) 550e217fee3c2daabc302f375252c5b22937d90272eRoland Levillain ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES), \ 551e217fee3c2daabc302f375252c5b22937d90272eRoland Levillain $(PREBUILD_TYPES),optimizing,$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES), \ 552e217fee3c2daabc302f375252c5b22937d90272eRoland Levillain $(JNI_TYPES),$(IMAGE_TYPES),$(PICTEST_TYPES),$(DEBUGGABLE_TYPES), \ 553e217fee3c2daabc302f375252c5b22937d90272eRoland Levillain $(TEST_ART_BROKEN_OPTIMIZING_READ_BARRIER_RUN_TESTS),$(ALL_ADDRESS_SIZES)) 554e217fee3c2daabc302f375252c5b22937d90272eRoland Levillain endif 5553c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain 5563c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain ifneq (,$(filter jit,$(COMPILER_TYPES))) 5573c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES), \ 5583c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain $(PREBUILD_TYPES),jit,$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES), \ 5593c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain $(JNI_TYPES),$(IMAGE_TYPES),$(PICTEST_TYPES),$(DEBUGGABLE_TYPES), \ 5603c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain $(TEST_ART_BROKEN_JIT_READ_BARRIER_RUN_TESTS),$(ALL_ADDRESS_SIZES)) 5613c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain endif 5621d85823d122b475bdf67cc49aa9eee32736fd5b1Hiroshi Yamauchiendif 5631d85823d122b475bdf67cc49aa9eee32736fd5b1Hiroshi Yamauchi 564e217fee3c2daabc302f375252c5b22937d90272eRoland LevillainTEST_ART_BROKEN_OPTIMIZING_READ_BARRIER_RUN_TESTS := 5653c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland LevillainTEST_ART_BROKEN_JIT_READ_BARRIER_RUN_TESTS := 5665319defdf502fc4569316473846b83180ec08035Alexandre Rames 567d3997bd98a808c6b166b9c53eef523fc805ea2c2Alex LightTEST_ART_BROKEN_NPIC_RUN_TESTS := 596-app-images 568d3997bd98a808c6b166b9c53eef523fc805ea2c2Alex Lightifneq (,$(filter npictest,$(PICTEST_TYPES))) 569d3997bd98a808c6b166b9c53eef523fc805ea2c2Alex Light ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES),$(PREBUILD_TYPES), \ 570d3997bd98a808c6b166b9c53eef523fc805ea2c2Alex Light ${COMPILER_TYPES},$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 571d3997bd98a808c6b166b9c53eef523fc805ea2c2Alex Light $(IMAGE_TYPES),npictest,$(DEBUGGABLE_TYPES),$(TEST_ART_BROKEN_NPIC_RUN_TESTS),$(ALL_ADDRESS_SIZES)) 572d3997bd98a808c6b166b9c53eef523fc805ea2c2Alex Lightendif 573d3997bd98a808c6b166b9c53eef523fc805ea2c2Alex Light 5744d02711ea578dbb789abb30cbaf12f9926e13d81Roland Levillain# Tests that should fail in the heap poisoning configuration with the Optimizing compiler. 575e217fee3c2daabc302f375252c5b22937d90272eRoland Levillain# 055: Exceeds run time limits due to heap poisoning instrumentation (on ARM and ARM64 devices). 5764d02711ea578dbb789abb30cbaf12f9926e13d81Roland LevillainTEST_ART_BROKEN_OPTIMIZING_HEAP_POISONING_RUN_TESTS := \ 5774d02711ea578dbb789abb30cbaf12f9926e13d81Roland Levillain 055-enum-performance 5784437219a6cffe2609eb3d31f4ce484ea3622fdf8Andreas Gampe 5794437219a6cffe2609eb3d31f4ce484ea3622fdf8Andreas Gampeifeq ($(ART_HEAP_POISONING),true) 5804d02711ea578dbb789abb30cbaf12f9926e13d81Roland Levillain ifneq (,$(filter optimizing,$(COMPILER_TYPES))) 5814d02711ea578dbb789abb30cbaf12f9926e13d81Roland Levillain ART_TEST_KNOWN_BROKEN += $(call all-run-test-names,$(TARGET_TYPES),$(RUN_TYPES), \ 5824d02711ea578dbb789abb30cbaf12f9926e13d81Roland Levillain $(PREBUILD_TYPES),optimizing,$(RELOCATE_TYPES),$(TRACE_TYPES),$(GC_TYPES),$(JNI_TYPES), \ 5834d02711ea578dbb789abb30cbaf12f9926e13d81Roland Levillain $(IMAGE_TYPES),$(PICTEST_TYPES),$(DEBUGGABLE_TYPES), \ 5844d02711ea578dbb789abb30cbaf12f9926e13d81Roland Levillain $(TEST_ART_BROKEN_OPTIMIZING_HEAP_POISONING_RUN_TESTS),$(ALL_ADDRESS_SIZES)) 5854d02711ea578dbb789abb30cbaf12f9926e13d81Roland Levillain endif 5864437219a6cffe2609eb3d31f4ce484ea3622fdf8Andreas Gampeendif 5874437219a6cffe2609eb3d31f4ce484ea3622fdf8Andreas Gampe 588e217fee3c2daabc302f375252c5b22937d90272eRoland LevillainTEST_ART_BROKEN_OPTIMIZING_HEAP_POISONING_RUN_TESTS := 5894437219a6cffe2609eb3d31f4ce484ea3622fdf8Andreas Gampe 590f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers# Clear variables ahead of appending to them when defining tests. 591f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), $(eval ART_RUN_TEST_$(call name-to-var,$(target))_RULES :=)) 592f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 593f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach prebuild, $(PREBUILD_TYPES), \ 594f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(prebuild))_RULES :=))) 595f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 596f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach compiler, $(COMPILER_TYPES), \ 597f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(compiler))_RULES :=))) 598f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 599f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach relocate, $(RELOCATE_TYPES), \ 600f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(relocate))_RULES :=))) 601f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 602f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach trace, $(TRACE_TYPES), \ 603f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(trace))_RULES :=))) 604f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 605f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach gc, $(GC_TYPES), \ 606f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(gc))_RULES :=))) 607f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 608f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach jni, $(JNI_TYPES), \ 609f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(jni))_RULES :=))) 610f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 61103a112d23694afffe9808082e7144b7e8744a4bdAlex Light $(foreach image, $(IMAGE_TYPES), \ 61203a112d23694afffe9808082e7144b7e8744a4bdAlex Light $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(image))_RULES :=))) 61303a112d23694afffe9808082e7144b7e8744a4bdAlex Light$(foreach target, $(TARGET_TYPES), \ 614f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach test, $(TEST_ART_RUN_TESTS), \ 615f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(test))_RULES :=))) 616f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 617f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach address_size, $(ALL_ADDRESS_SIZES), \ 618f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(address_size))_RULES :=))) 619bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray$(foreach target, $(TARGET_TYPES), \ 620bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach run_type, $(RUN_TYPES), \ 621bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(run_type))_RULES :=))) 62243c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray$(foreach target, $(TARGET_TYPES), \ 62343c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(foreach debuggable_type, $(DEBUGGABLE_TYPES), \ 62443c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(debuggable_type))_RULES :=))) 625afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 62663fc30e201a74dbad9422a6dbd4c39e4b60ac4c5Andreas Gampe# We need dex2oat and dalvikvm on the target as well as the core images (all images as we sync 62763fc30e201a74dbad9422a6dbd4c39e4b60ac4c5Andreas Gampe# only once). 62863fc30e201a74dbad9422a6dbd4c39e4b60ac4c5Andreas GampeTEST_ART_TARGET_SYNC_DEPS += $(ART_TARGET_EXECUTABLES) $(TARGET_CORE_IMG_OUTS) 629afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 6301c83cbc4a817acbd7f9abb5b29a2d418a958e6a1Andreas Gampe# Also need libarttest. 6311c83cbc4a817acbd7f9abb5b29a2d418a958e6a1Andreas GampeTEST_ART_TARGET_SYNC_DEPS += $(ART_TARGET_TEST_OUT)/$(TARGET_ARCH)/libarttest.so 632031768a340634e2dbdec1aebb2bb3fe509b2f1f6Mathieu ChartierTEST_ART_TARGET_SYNC_DEPS += $(ART_TARGET_TEST_OUT)/$(TARGET_ARCH)/libarttestd.so 6331c83cbc4a817acbd7f9abb5b29a2d418a958e6a1Andreas Gampeifdef TARGET_2ND_ARCH 6341c83cbc4a817acbd7f9abb5b29a2d418a958e6a1Andreas GampeTEST_ART_TARGET_SYNC_DEPS += $(ART_TARGET_TEST_OUT)/$(TARGET_2ND_ARCH)/libarttest.so 635031768a340634e2dbdec1aebb2bb3fe509b2f1f6Mathieu ChartierTEST_ART_TARGET_SYNC_DEPS += $(ART_TARGET_TEST_OUT)/$(TARGET_2ND_ARCH)/libarttestd.so 6361c83cbc4a817acbd7f9abb5b29a2d418a958e6a1Andreas Gampeendif 6371c83cbc4a817acbd7f9abb5b29a2d418a958e6a1Andreas Gampe 638855564b83db7b106d2995d0e784f1f4b62e52371Andreas Gampe# Also need libnativebridgetest. 639855564b83db7b106d2995d0e784f1f4b62e52371Andreas GampeTEST_ART_TARGET_SYNC_DEPS += $(ART_TARGET_TEST_OUT)/$(TARGET_ARCH)/libnativebridgetest.so 640855564b83db7b106d2995d0e784f1f4b62e52371Andreas Gampeifdef TARGET_2ND_ARCH 641855564b83db7b106d2995d0e784f1f4b62e52371Andreas GampeTEST_ART_TARGET_SYNC_DEPS += $(ART_TARGET_TEST_OUT)/$(TARGET_2ND_ARCH)/libnativebridgetest.so 642855564b83db7b106d2995d0e784f1f4b62e52371Andreas Gampeendif 643855564b83db7b106d2995d0e784f1f4b62e52371Andreas Gampe 64463fc30e201a74dbad9422a6dbd4c39e4b60ac4c5Andreas Gampe# All tests require the host executables. The tests also depend on the core images, but on 64563fc30e201a74dbad9422a6dbd4c39e4b60ac4c5Andreas Gampe# specific version depending on the compiler. 646afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian RogersART_TEST_HOST_RUN_TEST_DEPENDENCIES := \ 647afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers $(ART_HOST_EXECUTABLES) \ 6481c83cbc4a817acbd7f9abb5b29a2d418a958e6a1Andreas Gampe $(ART_HOST_OUT_SHARED_LIBRARIES)/libarttest$(ART_HOST_SHLIB_EXTENSION) \ 649031768a340634e2dbdec1aebb2bb3fe509b2f1f6Mathieu Chartier $(ART_HOST_OUT_SHARED_LIBRARIES)/libarttestd$(ART_HOST_SHLIB_EXTENSION) \ 650855564b83db7b106d2995d0e784f1f4b62e52371Andreas Gampe $(ART_HOST_OUT_SHARED_LIBRARIES)/libnativebridgetest$(ART_HOST_SHLIB_EXTENSION) \ 65167ef2c9d9bd8cbb3bc33903d98bc1617b94ea850Narayan Kamath $(ART_HOST_OUT_SHARED_LIBRARIES)/libjavacore$(ART_HOST_SHLIB_EXTENSION) \ 65210edbb159afae232817c86fc06a6801349f05baeAndreas Gampe $(ART_HOST_OUT_SHARED_LIBRARIES)/libopenjdk$(ART_HOST_SHLIB_EXTENSION) \ 65310edbb159afae232817c86fc06a6801349f05baeAndreas Gampe $(ART_HOST_OUT_SHARED_LIBRARIES)/libopenjdkd$(ART_HOST_SHLIB_EXTENSION) 654665de8a1710d2418f60d3bffdc99bdac32252530Ian Rogers 655665de8a1710d2418f60d3bffdc99bdac32252530Ian Rogersifneq ($(HOST_PREFER_32_BIT),true) 656665de8a1710d2418f60d3bffdc99bdac32252530Ian RogersART_TEST_HOST_RUN_TEST_DEPENDENCIES += \ 6571c83cbc4a817acbd7f9abb5b29a2d418a958e6a1Andreas Gampe $(2ND_ART_HOST_OUT_SHARED_LIBRARIES)/libarttest$(ART_HOST_SHLIB_EXTENSION) \ 658031768a340634e2dbdec1aebb2bb3fe509b2f1f6Mathieu Chartier $(2ND_ART_HOST_OUT_SHARED_LIBRARIES)/libarttestd$(ART_HOST_SHLIB_EXTENSION) \ 659855564b83db7b106d2995d0e784f1f4b62e52371Andreas Gampe $(2ND_ART_HOST_OUT_SHARED_LIBRARIES)/libnativebridgetest$(ART_HOST_SHLIB_EXTENSION) \ 66067ef2c9d9bd8cbb3bc33903d98bc1617b94ea850Narayan Kamath $(2ND_ART_HOST_OUT_SHARED_LIBRARIES)/libjavacore$(ART_HOST_SHLIB_EXTENSION) \ 66110edbb159afae232817c86fc06a6801349f05baeAndreas Gampe $(2ND_ART_HOST_OUT_SHARED_LIBRARIES)/libopenjdk$(ART_HOST_SHLIB_EXTENSION) \ 66210edbb159afae232817c86fc06a6801349f05baeAndreas Gampe $(2ND_ART_HOST_OUT_SHARED_LIBRARIES)/libopenjdkd$(ART_HOST_SHLIB_EXTENSION) 663665de8a1710d2418f60d3bffdc99bdac32252530Ian Rogersendif 664afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 665f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers# Create a rule to build and run a tests following the form: 6669228b2a1dfcf27452a0acfcbf34f72fdaa5a1caaCalin Juravle# test-art-{1: host or target}-run-test-{2: debug ndebug}-{3: prebuild no-prebuild no-dex2oat}- 6677db00cdc25a1a68cbc3d942834b08043ef1253c2Nicolas Geoffray# {4: interpreter optimizing jit interp-ac}- 6687617abdb402fd0419daa3eefb2ad059ccbb8b6dbIgor Murashkin# {5: relocate nrelocate relocate-npatchoat}- 6691445dd3b3f47fcbdb722f74bcf5189249310a0b4Mathieu Chartier# {6: trace or ntrace}-{7: gcstress gcverify cms}-{8: forcecopy checkjni jni}- 6701445dd3b3f47fcbdb722f74bcf5189249310a0b4Mathieu Chartier# {9: no-image image picimage}-{10: pictest npictest}- 6711445dd3b3f47fcbdb722f74bcf5189249310a0b4Mathieu Chartier# {11: ndebuggable debuggable}-{12: test name}{13: 32 or 64} 672afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogersdefine define-test-art-run-test 673611e1db69aff00f297d0d59c47af3c9ae563eb7bNicolas Geoffray run_test_options := 674afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers prereq_rule := 675f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers test_groups := 676f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers uc_host_or_target := 67719ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz jack_classpath := 6781d4184d65dc199a5ba720245632493b7520d9edfHiroshi Yamauchi ifeq ($(ART_TEST_WITH_STRACE),true) 6791d4184d65dc199a5ba720245632493b7520d9edfHiroshi Yamauchi run_test_options += --strace 6801d4184d65dc199a5ba720245632493b7520d9edfHiroshi Yamauchi endif 681bfac14acef0c2327ef8c28f146dd17d009aa8669Alex Light ifeq ($(ART_TEST_RUN_TEST_ALWAYS_CLEAN),true) 682bfac14acef0c2327ef8c28f146dd17d009aa8669Alex Light run_test_options += --always-clean 683bfac14acef0c2327ef8c28f146dd17d009aa8669Alex Light endif 684f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers ifeq ($(1),host) 685afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers uc_host_or_target := HOST 686f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers test_groups := ART_RUN_TEST_HOST_RULES 687afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers run_test_options += --host 68830486987cf93ef76a725a5761c5153c230e9079eYohann Roussel prereq_rule := $(ART_TEST_HOST_RUN_TEST_DEPENDENCIES) $(HOST_JACK_CLASSPATH_DEPENDENCIES) 68919ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz jack_classpath := $(HOST_JACK_CLASSPATH) 690afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers else 691f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers ifeq ($(1),target) 692afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers uc_host_or_target := TARGET 693f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers test_groups := ART_RUN_TEST_TARGET_RULES 69430486987cf93ef76a725a5761c5153c230e9079eYohann Roussel prereq_rule := test-art-target-sync $(TARGET_JACK_CLASSPATH_DEPENDENCIES) 69519ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz jack_classpath := $(TARGET_JACK_CLASSPATH) 696afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers else 697f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $$(error found $(1) expected $(TARGET_TYPES)) 698afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers endif 699afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers endif 700bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(2),debug) 701bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray test_groups += ART_RUN_TEST_$$(uc_host_or_target)_DEBUG_RULES 702bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray else 703bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(2),ndebug) 704bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray test_groups += ART_RUN_TEST_$$(uc_host_or_target)_RELEASE_RULES 705bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray run_test_options += -O 706bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray else 707bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $$(error found $(2) expected $(RUN_TYPES)) 708bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray endif 709bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray endif 710bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(3),prebuild) 711f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers test_groups += ART_RUN_TEST_$$(uc_host_or_target)_PREBUILD_RULES 712f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers run_test_options += --prebuild 713a59dd80f9f48cb750d329d4d4af2d99d72b484d1Alex Light else 714bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(3),no-prebuild) 715f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers test_groups += ART_RUN_TEST_$$(uc_host_or_target)_NO_PREBUILD_RULES 716f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers run_test_options += --no-prebuild 717a59dd80f9f48cb750d329d4d4af2d99d72b484d1Alex Light else 718bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(3),no-dex2oat) 71903a112d23694afffe9808082e7144b7e8744a4bdAlex Light test_groups += ART_RUN_TEST_$$(uc_host_or_target)_NO_DEX2OAT_RULES 72003a112d23694afffe9808082e7144b7e8744a4bdAlex Light run_test_options += --no-prebuild --no-dex2oat 72103a112d23694afffe9808082e7144b7e8744a4bdAlex Light else 722bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $$(error found $(3) expected $(PREBUILD_TYPES)) 72303a112d23694afffe9808082e7144b7e8744a4bdAlex Light endif 724a59dd80f9f48cb750d329d4d4af2d99d72b484d1Alex Light endif 725a59dd80f9f48cb750d329d4d4af2d99d72b484d1Alex Light endif 726bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(4),optimizing) 727f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers test_groups += ART_RUN_TEST_$$(uc_host_or_target)_OPTIMIZING_RULES 72863fc30e201a74dbad9422a6dbd4c39e4b60ac4c5Andreas Gampe run_test_options += --optimizing 729afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers else 730bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(4),interpreter) 731f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers test_groups += ART_RUN_TEST_$$(uc_host_or_target)_INTERPRETER_RULES 732afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers run_test_options += --interpreter 733825570c844b447beabfc7497d04fbd61c69cf28bAndreas Gampe else ifeq ($(4),interp-ac) 7347617abdb402fd0419daa3eefb2ad059ccbb8b6dbIgor Murashkin test_groups += ART_RUN_TEST_$$(uc_host_or_target)_INTERPRETER_ACCESS_CHECKS_RULES 7357617abdb402fd0419daa3eefb2ad059ccbb8b6dbIgor Murashkin run_test_options += --interpreter --verify-soft-fail 736afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers else 7377db00cdc25a1a68cbc3d942834b08043ef1253c2Nicolas Geoffray ifeq ($(4),jit) 7387db00cdc25a1a68cbc3d942834b08043ef1253c2Nicolas Geoffray test_groups += ART_RUN_TEST_$$(uc_host_or_target)_JIT_RULES 7397db00cdc25a1a68cbc3d942834b08043ef1253c2Nicolas Geoffray run_test_options += --jit 740afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers else 7417db00cdc25a1a68cbc3d942834b08043ef1253c2Nicolas Geoffray $$(error found $(4) expected $(COMPILER_TYPES)) 742afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers endif 743afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers endif 744afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers endif 74563fc30e201a74dbad9422a6dbd4c39e4b60ac4c5Andreas Gampe 746bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(5),relocate) 747f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers test_groups += ART_RUN_TEST_$$(uc_host_or_target)_RELOCATE_RULES 748f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers run_test_options += --relocate 749afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers else 750bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(5),no-relocate) 751f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers test_groups += ART_RUN_TEST_$$(uc_host_or_target)_NO_RELOCATE_RULES 752f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers run_test_options += --no-relocate 753f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers else 7541445dd3b3f47fcbdb722f74bcf5189249310a0b4Mathieu Chartier ifeq ($(5),relocate-npatchoat) 75503a112d23694afffe9808082e7144b7e8744a4bdAlex Light test_groups += ART_RUN_TEST_$$(uc_host_or_target)_RELOCATE_NO_PATCHOAT_RULES 75603a112d23694afffe9808082e7144b7e8744a4bdAlex Light run_test_options += --relocate --no-patchoat 75703a112d23694afffe9808082e7144b7e8744a4bdAlex Light else 758bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $$(error found $(5) expected $(RELOCATE_TYPES)) 75903a112d23694afffe9808082e7144b7e8744a4bdAlex Light endif 760afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers endif 761afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers endif 762bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(6),trace) 763f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers test_groups += ART_RUN_TEST_$$(uc_host_or_target)_TRACE_RULES 764716e4f88aa062ef51a5cf7a16a452b2d291a1debIan Rogers run_test_options += --trace 765f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers else 7661445dd3b3f47fcbdb722f74bcf5189249310a0b4Mathieu Chartier ifeq ($(6),ntrace) 767f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers test_groups += ART_RUN_TEST_$$(uc_host_or_target)_NO_TRACE_RULES 768f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers else 7697526d783ab68ed1dd53c763c75895cb432532b0fAndreas Gampe ifeq ($(6),stream) 7707526d783ab68ed1dd53c763c75895cb432532b0fAndreas Gampe # Group streaming under normal tracing rules. 7717526d783ab68ed1dd53c763c75895cb432532b0fAndreas Gampe test_groups += ART_RUN_TEST_$$(uc_host_or_target)_TRACE_RULES 7727526d783ab68ed1dd53c763c75895cb432532b0fAndreas Gampe run_test_options += --trace --stream 7737526d783ab68ed1dd53c763c75895cb432532b0fAndreas Gampe else 7747526d783ab68ed1dd53c763c75895cb432532b0fAndreas Gampe $$(error found $(6) expected $(TRACE_TYPES)) 7757526d783ab68ed1dd53c763c75895cb432532b0fAndreas Gampe endif 7765242c0ab0505f0f038b15c3d934a79a6b4e5ef17Ian Rogers endif 777f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers endif 778bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(7),gcverify) 77986df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers test_groups += ART_RUN_TEST_$$(uc_host_or_target)_GCVERIFY_RULES 780f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers run_test_options += --gcverify 781716e4f88aa062ef51a5cf7a16a452b2d291a1debIan Rogers else 782bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(7),gcstress) 78386df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers test_groups += ART_RUN_TEST_$$(uc_host_or_target)_GCSTRESS_RULES 784f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers run_test_options += --gcstress 785f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers else 786bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(7),cms) 787f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers test_groups += ART_RUN_TEST_$$(uc_host_or_target)_CMS_RULES 788f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers else 789bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $$(error found $(7) expected $(GC_TYPES)) 790701aa645a3e61fe8866000bb66b1287196a5536aIan Rogers endif 791f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers endif 792f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers endif 793bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(8),forcecopy) 79486df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers test_groups += ART_RUN_TEST_$$(uc_host_or_target)_FORCECOPY_RULES 795f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers run_test_options += --runtime-option -Xjniopts:forcecopy 796f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers ifneq ($$(ART_TEST_JNI_FORCECOPY),true) 797f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers skip_test := true 798f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers endif 799f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers else 800bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(8),checkjni) 80186df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers test_groups += ART_RUN_TEST_$$(uc_host_or_target)_CHECKJNI_RULES 802f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers run_test_options += --runtime-option -Xcheck:jni 803701aa645a3e61fe8866000bb66b1287196a5536aIan Rogers else 804bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(8),jni) 805f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers test_groups += ART_RUN_TEST_$$(uc_host_or_target)_JNI_RULES 8068a14b75d876ad20f08087664070354fa6f65a029Ian Rogers else 807bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $$(error found $(8) expected $(JNI_TYPES)) 808701aa645a3e61fe8866000bb66b1287196a5536aIan Rogers endif 809716e4f88aa062ef51a5cf7a16a452b2d291a1debIan Rogers endif 810716e4f88aa062ef51a5cf7a16a452b2d291a1debIan Rogers endif 8118a159fdc17d478b2a3e49705045e51ab19842a34Andreas Gampe image_suffix := $(4) 812bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(9),no-image) 81303a112d23694afffe9808082e7144b7e8744a4bdAlex Light test_groups += ART_RUN_TEST_$$(uc_host_or_target)_NO_IMAGE_RULES 81403a112d23694afffe9808082e7144b7e8744a4bdAlex Light run_test_options += --no-image 815bf03e846536b1b5150bbc419d9adb651ebc4fa06Andreas Gampe # Add the core dependency. This is required for pre-building. 816bf03e846536b1b5150bbc419d9adb651ebc4fa06Andreas Gampe ifeq ($(1),host) 81743c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray prereq_rule += $$(HOST_CORE_IMAGE_$$(image_suffix)_no-pic_$(13)) 818bf03e846536b1b5150bbc419d9adb651ebc4fa06Andreas Gampe else 81943c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray prereq_rule += $$(TARGET_CORE_IMAGE_$$(image_suffix)_no-pic_$(13)) 820bf03e846536b1b5150bbc419d9adb651ebc4fa06Andreas Gampe endif 82103a112d23694afffe9808082e7144b7e8744a4bdAlex Light else 822bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray ifeq ($(9),image) 82303a112d23694afffe9808082e7144b7e8744a4bdAlex Light test_groups += ART_RUN_TEST_$$(uc_host_or_target)_IMAGE_RULES 824c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe # Add the core dependency. 825c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe ifeq ($(1),host) 82643c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray prereq_rule += $$(HOST_CORE_IMAGE_$$(image_suffix)_no-pic_$(13)) 827c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe else 82843c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray prereq_rule += $$(TARGET_CORE_IMAGE_$$(image_suffix)_no-pic_$(13)) 829c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe endif 830c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe else 831c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe ifeq ($(9),picimage) 832c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe test_groups += ART_RUN_TEST_$$(uc_host_or_target)_PICIMAGE_RULES 833c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe run_test_options += --pic-image 834c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe ifeq ($(1),host) 83543c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray prereq_rule += $$(HOST_CORE_IMAGE_$$(image_suffix)_pic_$(13)) 836c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe else 83743c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray prereq_rule += $$(TARGET_CORE_IMAGE_$$(image_suffix)_pic_$(13)) 838c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe endif 839c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe else 840dcdc85bbd569f0ee66c331b4219c19304a616214Jeff Hao ifeq ($(9),multiimage) 841dcdc85bbd569f0ee66c331b4219c19304a616214Jeff Hao test_groups += ART_RUN_TEST_$$(uc_host_or_target)_IMAGE_RULES 842dcdc85bbd569f0ee66c331b4219c19304a616214Jeff Hao run_test_options += --multi-image 8433c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain ifeq ($(1),host) 8443c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain prereq_rule += $$(HOST_CORE_IMAGE_$$(image_suffix)_no-pic_multi_$(13)) 8453c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain else 8463c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain prereq_rule += $$(TARGET_CORE_IMAGE_$$(image_suffix)_no-pic_multi_$(13)) 8473c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain endif 848dcdc85bbd569f0ee66c331b4219c19304a616214Jeff Hao else 849dcdc85bbd569f0ee66c331b4219c19304a616214Jeff Hao ifeq ($(9),multipicimage) 850dcdc85bbd569f0ee66c331b4219c19304a616214Jeff Hao test_groups += ART_RUN_TEST_$$(uc_host_or_target)_PICIMAGE_RULES 8513c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain run_test_options += --pic-image --multi-image 8523c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain ifeq ($(1),host) 8533c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain prereq_rule += $$(HOST_CORE_IMAGE_$$(image_suffix)_pic_multi_$(13)) 8543c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain else 8553c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain prereq_rule += $$(TARGET_CORE_IMAGE_$$(image_suffix)_pic_multi_$(13)) 8563c36f66f3e8db8837097a9e82ee36df15bbdfbdfRoland Levillain endif 857dcdc85bbd569f0ee66c331b4219c19304a616214Jeff Hao else 858dcdc85bbd569f0ee66c331b4219c19304a616214Jeff Hao $$(error found $(9) expected $(IMAGE_TYPES)) 859dcdc85bbd569f0ee66c331b4219c19304a616214Jeff Hao endif 860dcdc85bbd569f0ee66c331b4219c19304a616214Jeff Hao endif 861c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe endif 862c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe endif 863c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe endif 864c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe ifeq ($(10),pictest) 865c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe run_test_options += --pic-test 866c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe else 8671445dd3b3f47fcbdb722f74bcf5189249310a0b4Mathieu Chartier ifeq ($(10),npictest) 868c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe # Nothing to be done. 86903a112d23694afffe9808082e7144b7e8744a4bdAlex Light else 870c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe $$(error found $(10) expected $(PICTEST_TYPES)) 87103a112d23694afffe9808082e7144b7e8744a4bdAlex Light endif 87203a112d23694afffe9808082e7144b7e8744a4bdAlex Light endif 87343c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray ifeq ($(11),debuggable) 87443c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray test_groups += ART_RUN_TEST_$$(uc_host_or_target)_DEBUGGABLE_RULES 87543c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray run_test_options += --debuggable 87643c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray else 8771445dd3b3f47fcbdb722f74bcf5189249310a0b4Mathieu Chartier ifeq ($(11),ndebuggable) 87843c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray test_groups += ART_RUN_TEST_$$(uc_host_or_target)_NONDEBUGGABLE_RULES 87943c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray # Nothing to be done. 88043c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray else 88143c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $$(error found $(11) expected $(DEBUGGABLE_TYPES)) 88243c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray endif 88343c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray endif 88443c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray # $(12) is the test name. 88543c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray test_groups += ART_RUN_TEST_$$(uc_host_or_target)_$(call name-to-var,$(12))_RULES 88643c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray ifeq ($(13),64) 887f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers test_groups += ART_RUN_TEST_$$(uc_host_or_target)_64_RULES 888f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers run_test_options += --64 889f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers else 89043c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray ifeq ($(13),32) 891f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers test_groups += ART_RUN_TEST_$$(uc_host_or_target)_32_RULES 892f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers else 89343c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $$(error found $(13) expected $(ALL_ADDRESS_SIZES)) 894f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers endif 895f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers endif 8964d2ef33723c1d7df269ee82cdfac98e59d95b53dAndreas Gampe # Override of host instruction-set-features. Required to test advanced x86 intrinsics. The 8974d2ef33723c1d7df269ee82cdfac98e59d95b53dAndreas Gampe # conditionals aren't really correct, they will fail to do the right thing on a 32-bit only 8984d2ef33723c1d7df269ee82cdfac98e59d95b53dAndreas Gampe # host. However, this isn't common enough to worry here and make the conditions complicated. 8994d2ef33723c1d7df269ee82cdfac98e59d95b53dAndreas Gampe ifneq ($(DEX2OAT_HOST_INSTRUCTION_SET_FEATURES),) 9004d2ef33723c1d7df269ee82cdfac98e59d95b53dAndreas Gampe ifeq ($(13),64) 9014d2ef33723c1d7df269ee82cdfac98e59d95b53dAndreas Gampe run_test_options += --instruction-set-features $(DEX2OAT_HOST_INSTRUCTION_SET_FEATURES) 9024d2ef33723c1d7df269ee82cdfac98e59d95b53dAndreas Gampe endif 9034d2ef33723c1d7df269ee82cdfac98e59d95b53dAndreas Gampe endif 9044d2ef33723c1d7df269ee82cdfac98e59d95b53dAndreas Gampe ifneq ($($(HOST_2ND_ARCH_VAR_PREFIX)DEX2OAT_HOST_INSTRUCTION_SET_FEATURES),) 9054d2ef33723c1d7df269ee82cdfac98e59d95b53dAndreas Gampe ifeq ($(13),32) 9064d2ef33723c1d7df269ee82cdfac98e59d95b53dAndreas Gampe run_test_options += --instruction-set-features $($(HOST_2ND_ARCH_VAR_PREFIX)DEX2OAT_HOST_INSTRUCTION_SET_FEATURES) 9074d2ef33723c1d7df269ee82cdfac98e59d95b53dAndreas Gampe endif 9084d2ef33723c1d7df269ee82cdfac98e59d95b53dAndreas Gampe endif 90943c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray run_test_rule_name := test-art-$(1)-run-test-$(2)-$(3)-$(4)-$(5)-$(6)-$(7)-$(8)-$(9)-$(10)-$(11)-$(12)$(13) 910f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers run_test_options := --output-path $(ART_HOST_TEST_DIR)/run-test-output/$$(run_test_rule_name) \ 9115242c0ab0505f0f038b15c3d934a79a6b4e5ef17Ian Rogers $$(run_test_options) 912c8f23fc19726245da6a11fa2d92e319b9d26c019Nicolas Geoffray ifneq ($(ART_TEST_ANDROID_ROOT),) 913c8f23fc19726245da6a11fa2d92e319b9d26c019Nicolas Geoffray run_test_options := --android-root $(ART_TEST_ANDROID_ROOT) $$(run_test_options) 914c8f23fc19726245da6a11fa2d92e319b9d26c019Nicolas Geoffray endif 91591de25fd88ed755be5d72db80c93da364d97e16fAlex Light ifeq ($(ART_TEST_QUIET),true) 91691de25fd88ed755be5d72db80c93da364d97e16fAlex Light run_test_options += --quiet 91791de25fd88ed755be5d72db80c93da364d97e16fAlex Light endif 918afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers$$(run_test_rule_name): PRIVATE_RUN_TEST_OPTIONS := $$(run_test_options) 91919ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz$$(run_test_rule_name): PRIVATE_JACK_CLASSPATH := $$(jack_classpath) 920afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers.PHONY: $$(run_test_rule_name) 92105b91251870533aae58670cd073643ae700c8521Yohann Roussel$$(run_test_rule_name): $(TEST_ART_RUN_TEST_DEPENDENCIES) $(HOST_OUT_EXECUTABLES)/hprof-conv $$(prereq_rule) | $(TEST_ART_RUN_TEST_ORDERONLY_DEPENDENCIES) 922afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers $(hide) $$(call ART_TEST_SKIP,$$@) && \ 92319ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz DX=$(abspath $(DX)) \ 92419ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz JASMIN=$(abspath $(HOST_OUT_EXECUTABLES)/jasmin) \ 9258fda9f2aec6820ebf1bd550412ec99d9eb3ffa9eAndreas Gampe SMALI=$(abspath $(HOST_OUT_EXECUTABLES)/smali) \ 9268fda9f2aec6820ebf1bd550412ec99d9eb3ffa9eAndreas Gampe DXMERGER=$(abspath $(HOST_OUT_EXECUTABLES)/dexmerger) \ 927cc6bb939d00016bfa342fa8cbfc7540b7abc89f2Yohann Roussel JACK_VERSION=$(JACK_DEFAULT_VERSION) \ 92819ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz JACK=$(abspath $(JACK)) \ 929aaa779a0a5f7afc23814728de68c6fe3ae1450bfYohann Roussel JACK_VERSION=$(JACK_DEFAULT_VERSION) \ 93019ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz JACK_CLASSPATH=$$(PRIVATE_JACK_CLASSPATH) \ 93143c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray art/test/run-test $$(PRIVATE_RUN_TEST_OPTIONS) $(12) \ 932afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers && $$(call ART_TEST_PASSED,$$@) || $$(call ART_TEST_FAILED,$$@) 933afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers $$(hide) (echo $(MAKECMDGOALS) | grep -q $$@ && \ 934afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers echo "run-test run as top-level target, removing test directory $(ART_HOST_TEST_DIR)" && \ 935afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers rm -r $(ART_HOST_TEST_DIR)) || true 936afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 937f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $$(foreach test_group,$$(test_groups), $$(eval $$(value test_group) += $$(run_test_rule_name))) 938afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 939afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers # Clear locally defined variables. 940f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers uc_host_or_target := 941f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers test_groups := 942afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers run_test_options := 943afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers run_test_rule_name := 944afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers prereq_rule := 94519ac0276208f0afef6ba8a4ab34b74a59b8d11d7Sebastien Hertz jack_classpath := 946afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogersendef # define-test-art-run-test 947afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 948f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 949f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach test, $(TEST_ART_RUN_TESTS), \ 950bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach run_type, $(RUN_TYPES), \ 951bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach address_size, $(ADDRESS_SIZES_$(call name-to-var,$(target))), \ 952bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach prebuild, $(PREBUILD_TYPES), \ 953bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach compiler, $(COMPILER_TYPES), \ 954bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach relocate, $(RELOCATE_TYPES), \ 955bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach trace, $(TRACE_TYPES), \ 956bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach gc, $(GC_TYPES), \ 957bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach jni, $(JNI_TYPES), \ 958bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach image, $(IMAGE_TYPES), \ 959c23c9c93aade8dd99d23ad796888cbf2f7f96a47Andreas Gampe $(foreach pictest, $(PICTEST_TYPES), \ 96043c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(foreach debuggable, $(DEBUGGABLE_TYPES), \ 96143c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(eval $(call define-test-art-run-test,$(target),$(run_type),$(prebuild),$(compiler),$(relocate),$(trace),$(gc),$(jni),$(image),$(pictest),$(debuggable),$(test),$(address_size))) \ 96243c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray ))))))))))))) 963f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogersdefine-test-art-run-test := 964f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers 965afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# Define a phony rule whose purpose is to test its prerequisites. 966f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers# $(1): host or target 967afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers# $(2): list of prerequisites 968f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogersdefine define-test-art-run-test-group 969afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers.PHONY: $(1) 970afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers$(1): $(2) 971afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers $(hide) $$(call ART_TEST_PREREQ_FINISHED,$$@) 972afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 973afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogersendef # define-test-art-run-test-group 974afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 975afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogers 976f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), $(eval \ 977f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(call define-test-art-run-test-group,test-art-$(target)-run-test,$(ART_RUN_TEST_$(call name-to-var,$(target))_RULES)))) 978f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 979f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach prebuild, $(PREBUILD_TYPES), $(eval \ 980f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(call define-test-art-run-test-group,test-art-$(target)-run-test-$(prebuild),$(ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(prebuild))_RULES))))) 981f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 982bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach run-type, $(RUN_TYPES), $(eval \ 983bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(call define-test-art-run-test-group,test-art-$(target)-run-test-$(run-type),$(ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(run-type))_RULES))))) 984bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray$(foreach target, $(TARGET_TYPES), \ 985f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach compiler, $(COMPILER_TYPES), $(eval \ 986f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(call define-test-art-run-test-group,test-art-$(target)-run-test-$(compiler),$(ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(compiler))_RULES))))) 987f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 988f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach relocate, $(RELOCATE_TYPES), $(eval \ 989f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(call define-test-art-run-test-group,test-art-$(target)-run-test-$(relocate),$(ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(relocate))_RULES))))) 990f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 991f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach trace, $(TRACE_TYPES), $(eval \ 992f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(call define-test-art-run-test-group,test-art-$(target)-run-test-$(trace),$(ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(trace))_RULES))))) 993f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 994f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach gc, $(GC_TYPES), $(eval \ 995f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(call define-test-art-run-test-group,test-art-$(target)-run-test-$(gc),$(ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(gc))_RULES))))) 996f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 997f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach jni, $(JNI_TYPES), $(eval \ 998f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(call define-test-art-run-test-group,test-art-$(target)-run-test-$(jni),$(ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(jni))_RULES))))) 999f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 100043c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(foreach debuggable, $(DEBUGGABLE_TYPES), $(eval \ 100143c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(call define-test-art-run-test-group,test-art-$(target)-run-test-$(debuggable),$(ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(debuggable))_RULES))))) 100243c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray$(foreach target, $(TARGET_TYPES), \ 100303a112d23694afffe9808082e7144b7e8744a4bdAlex Light $(foreach image, $(IMAGE_TYPES), $(eval \ 100403a112d23694afffe9808082e7144b7e8744a4bdAlex Light $(call define-test-art-run-test-group,test-art-$(target)-run-test-$(image),$(ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(image))_RULES))))) 100503a112d23694afffe9808082e7144b7e8744a4bdAlex Light$(foreach target, $(TARGET_TYPES), \ 1006f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach test, $(TEST_ART_RUN_TESTS), $(eval \ 1007f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(call define-test-art-run-test-group,test-art-$(target)-run-test-$(test),$(ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(test))_RULES))))) 1008f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 100986df3ac7603f2f50780f6c4310b24a0c38a286a9Ian Rogers $(foreach address_size, $(ADDRESS_SIZES_$(call name-to-var,$(target))), $(eval \ 1010a3cf6ce149b98b90f5f646e2a3adc5259ae0c3c6Ian Rogers $(call define-test-art-run-test-group,test-art-$(target)-run-test$(address_size),$(ART_RUN_TEST_$(call name-to-var,$(target))_$(address_size)_RULES))))) 1011f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers 1012f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers# Clear variables now we're finished with them. 1013f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), $(eval ART_RUN_TEST_$(call name-to-var,$(target))_RULES :=)) 1014f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 1015f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach prebuild, $(PREBUILD_TYPES), \ 1016f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(prebuild))_RULES :=))) 1017f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 1018f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach compiler, $(COMPILER_TYPES), \ 1019f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(compiler))_RULES :=))) 1020f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 1021f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach relocate, $(RELOCATE_TYPES), \ 1022f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(relocate))_RULES :=))) 1023f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 1024f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach trace, $(TRACE_TYPES), \ 1025f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(trace))_RULES :=))) 1026f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 1027f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach gc, $(GC_TYPES), \ 1028f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(gc))_RULES :=))) 1029f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 1030f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach jni, $(JNI_TYPES), \ 1031f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(jni))_RULES :=))) 1032f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 103343c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(foreach debuggable, $(DEBUGGABLE_TYPES), \ 103443c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(debuggable))_RULES :=))) 103543c162f059e6463119aa1efd0841374ca7b4f789Nicolas Geoffray$(foreach target, $(TARGET_TYPES), \ 103603a112d23694afffe9808082e7144b7e8744a4bdAlex Light $(foreach image, $(IMAGE_TYPES), \ 103703a112d23694afffe9808082e7144b7e8744a4bdAlex Light $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(image))_RULES :=))) 103803a112d23694afffe9808082e7144b7e8744a4bdAlex Light$(foreach target, $(TARGET_TYPES), \ 1039f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach test, $(TEST_ART_RUN_TESTS), \ 1040f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(test))_RULES :=))) 1041f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers$(foreach target, $(TARGET_TYPES), \ 1042f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(foreach address_size, $(ALL_ADDRESS_SIZES), \ 1043f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian Rogers $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(address_size))_RULES :=))) 1044bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray$(foreach target, $(TARGET_TYPES), \ 1045bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(foreach run_type, $(RUN_TYPES), \ 1046bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas Geoffray $(eval ART_RUN_TEST_$(call name-to-var,$(target))_$(call name-to-var,$(run_type))_RULES :=))) 1047afd9acc30bdd11cdd12d8209eb994cb371c65e33Ian Rogersdefine-test-art-run-test-group := 1048f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian RogersTARGET_TYPES := 1049f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian RogersPREBUILD_TYPES := 1050f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian RogersCOMPILER_TYPES := 1051f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian RogersRELOCATE_TYPES := 1052f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian RogersTRACE_TYPES := 1053f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian RogersGC_TYPES := 1054f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian RogersJNI_TYPES := 105503a112d23694afffe9808082e7144b7e8744a4bdAlex LightIMAGE_TYPES := 105686df3ac7603f2f50780f6c4310b24a0c38a286a9Ian RogersADDRESS_SIZES_TARGET := 105786df3ac7603f2f50780f6c4310b24a0c38a286a9Ian RogersADDRESS_SIZES_HOST := 1058f5c44b37131e7c54675db7d4446cfb256f6bd0f7Ian RogersALL_ADDRESS_SIZES := 1059bd2c63ca277a6f7659bc0821e0af1521ce45928eNicolas GeoffrayRUN_TYPES := 106043c162f059e6463119aa1efd0841374ca7b4f789Nicolas GeoffrayDEBUGGABLE_TYPES := 10619fcaa4b46789650c42d819f163781312e463b6ceIan Rogers 10629fcaa4b46789650c42d819f163781312e463b6ceIan Rogersinclude $(LOCAL_PATH)/Android.libarttest.mk 10639fcaa4b46789650c42d819f163781312e463b6ceIan Rogersinclude art/test/Android.libnativebridgetest.mk 1064