blob: 4f03347335d97631fb777802e618a0410dd03a05 [file] [log] [blame]
Ian Rogersafd9acc2014-06-17 08:21:54 -07001# Copyright (C) 2011 The Android Open Source Project
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14#
15
16LOCAL_PATH := $(call my-dir)
17
18include art/build/Android.common_test.mk
19
20# List of all tests of the form 003-omnibus-opcodes.
21TEST_ART_RUN_TESTS := $(wildcard $(LOCAL_PATH)/[0-9]*)
22TEST_ART_RUN_TESTS := $(subst $(LOCAL_PATH)/,, $(TEST_ART_RUN_TESTS))
23
Ian Rogers88138202014-07-18 20:56:27 -070024# List all the test names for host and target and compiler variants.
Ian Rogers716e4f82014-07-16 11:18:03 -070025# $(1): test name, e.g. 003-omnibus-opcodes
Ian Rogers88138202014-07-18 20:56:27 -070026# $(2): undefined, -trace, -gcverify or -gcstress
Alex Light9d722532014-07-22 18:07:12 -070027# $(3): -relocate, -norelocate, -no-prebuild, or undefined.
Ian Rogers716e4f82014-07-16 11:18:03 -070028define all-run-test-names
Alex Lighta59dd802014-07-02 16:28:08 -070029 test-art-host-run-test$(2)-default$(3)-$(1)32 \
30 test-art-host-run-test$(2)-optimizing$(3)-$(1)32 \
31 test-art-host-run-test$(2)-interpreter$(3)-$(1)32 \
32 test-art-host-run-test$(2)-default$(3)-$(1)64 \
33 test-art-host-run-test$(2)-optimizing$(3)-$(1)64 \
34 test-art-host-run-test$(2)-interpreter$(3)-$(1)64 \
35 test-art-target-run-test$(2)-default$(3)-$(1)32 \
36 test-art-target-run-test$(2)-optimizing$(3)-$(1)32 \
37 test-art-target-run-test$(2)-interpreter$(3)-$(1)32 \
38 test-art-target-run-test$(2)-default$(3)-$(1)64 \
39 test-art-target-run-test$(2)-optimizing$(3)-$(1)64 \
40 test-art-target-run-test$(2)-interpreter$(3)-$(1)64
Ian Rogers716e4f82014-07-16 11:18:03 -070041endef # all-run-test-names
42
Ian Rogersafd9acc2014-06-17 08:21:54 -070043# Tests that are timing sensitive and flaky on heavily loaded systems.
44TEST_ART_TIMING_SENSITIVE_RUN_TESTS := \
Ian Rogers716e4f82014-07-16 11:18:03 -070045 053-wait-some \
46 055-enum-performance
Ian Rogersafd9acc2014-06-17 08:21:54 -070047
48 # disable timing sensitive tests on "dist" builds.
49ifdef dist_goal
Alex Lighta59dd802014-07-02 16:28:08 -070050 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),,))
51 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),-trace,))
52 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),-gcverify,))
53 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),-gcstress,))
54 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),,-relocate))
55 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),-trace,-relocate))
56 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),-gcverify,-relocate))
57 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),-gcstress,-relocate))
58 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),,-norelocate))
59 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),-trace,-norelocate))
60 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),-gcverify,-norelocate))
61 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),-gcstress,-norelocate))
62 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),,-prebuild))
63 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),-trace,-prebuild))
64 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),-gcverify,-prebuild))
65 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),-gcstress,-prebuild))
Alex Light9d722532014-07-22 18:07:12 -070066 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),,-no-prebuild))
67 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),-trace,-no-prebuild))
68 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),-gcverify,-no-prebuild))
69 ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_TIMING_SENSITIVE_RUN_TESTS), $(call all-run-test-names,$(test),-gcstress,-no-prebuild))
Ian Rogersafd9acc2014-06-17 08:21:54 -070070endif
71
Ian Rogers716e4f82014-07-16 11:18:03 -070072# Tests that are broken in --trace mode.
73TEST_ART_BROKEN_TRACE_RUN_TESTS := \
74 003-omnibus-opcodes \
75 004-annotations \
Ian Rogers8a14b752014-07-18 15:06:53 -070076 012-math \
Ian Rogers716e4f82014-07-16 11:18:03 -070077 018-stack-overflow \
78 023-many-interfaces \
Ian Rogers4cd99b02014-07-18 19:52:07 -070079 027-arithmetic \
Ian Rogers716e4f82014-07-16 11:18:03 -070080 031-class-attributes \
81 037-inherit \
82 044-proxy \
83 046-reflect \
84 051-thread \
85 055-enum-performance \
Ian Rogers4cd99b02014-07-18 19:52:07 -070086 062-character-encodings \
Ian Rogers716e4f82014-07-16 11:18:03 -070087 064-field-access \
Ian Rogers4cd99b02014-07-18 19:52:07 -070088 074-gc-thrash \
Ian Rogers716e4f82014-07-16 11:18:03 -070089 078-polymorphic-virtual \
90 080-oom-throw \
91 082-inline-execute \
92 083-compiler-regressions \
Ian Rogers55bce0c2014-07-16 14:49:34 -070093 093-serialization \
Ian Rogers716e4f82014-07-16 11:18:03 -070094 097-duplicate-method \
95 100-reflect2 \
96 102-concurrent-gc \
97 103-string-append \
98 107-int-math2 \
99 112-double-math \
Ian Rogers4cd99b02014-07-18 19:52:07 -0700100 700-LoadArgRegs \
Ian Rogers716e4f82014-07-16 11:18:03 -0700101 701-easy-div-rem
102
Alex Lighta59dd802014-07-02 16:28:08 -0700103ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_BROKEN_TRACE_RUN_TESTS), $(call all-run-test-names,$(test),-trace,-relocate))
Alex Light9d722532014-07-22 18:07:12 -0700104ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_BROKEN_TRACE_RUN_TESTS), $(call all-run-test-names,$(test),-trace,-no-prebuild))
Alex Lighta59dd802014-07-02 16:28:08 -0700105ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_BROKEN_TRACE_RUN_TESTS), $(call all-run-test-names,$(test),-trace,-prebuild))
106ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_BROKEN_TRACE_RUN_TESTS), $(call all-run-test-names,$(test),-trace,-norelocate))
107ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_BROKEN_TRACE_RUN_TESTS), $(call all-run-test-names,$(test),-trace,))
Ian Rogers716e4f82014-07-16 11:18:03 -0700108
Ian Rogers8a14b752014-07-18 15:06:53 -0700109# Tests that need more than 2MB of RAM or are running into other corner cases in GC stress related
110# to OOMEs.
Mathieu Chartierb363f662014-07-16 13:28:58 -0700111TEST_ART_BROKEN_GCSTRESS_RUN_TESTS :=
Ian Rogers8a14b752014-07-18 15:06:53 -0700112
Alex Lighta59dd802014-07-02 16:28:08 -0700113ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_BROKEN_GCSTRESS_RUN_TESTS), $(call all-run-test-names,$(test),-gcstress,-relocate))
Alex Light9d722532014-07-22 18:07:12 -0700114ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_BROKEN_GCSTRESS_RUN_TESTS), $(call all-run-test-names,$(test),-gcstress,-no-prebuild))
Alex Lighta59dd802014-07-02 16:28:08 -0700115ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_BROKEN_GCSTRESS_RUN_TESTS), $(call all-run-test-names,$(test),-gcstress,-prebuild))
116ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_BROKEN_GCSTRESS_RUN_TESTS), $(call all-run-test-names,$(test),-gcstress,-norelocate))
117ART_TEST_KNOWN_BROKEN += $(foreach test, $(TEST_ART_BROKEN_GCSTRESS_RUN_TESTS), $(call all-run-test-names,$(test),-gcstress,))
Ian Rogers8a14b752014-07-18 15:06:53 -0700118
119
Ian Rogersafd9acc2014-06-17 08:21:54 -0700120# The path where build only targets will be output, e.g.
121# out/target/product/generic_x86_64/obj/PACKAGING/art-run-tests_intermediates/DATA
122art_run_tests_dir := $(call intermediates-dir-for,PACKAGING,art-run-tests)/DATA
123
124# A generated list of prerequisites that call 'run-test --build-only', the actual prerequisite is
125# an empty file touched in the intermediate directory.
126TEST_ART_RUN_TEST_BUILD_RULES :=
127
128# Helper to create individual build targets for tests. Must be called with $(eval).
129# $(1): the test number
130define define-build-art-run-test
131 dmart_target := $(art_run_tests_dir)/art-run-tests/$(1)/touch
132$$(dmart_target): $(DX) $(HOST_OUT_EXECUTABLES)/jasmin
133 $(hide) rm -rf $$(dir $$@) && mkdir -p $$(dir $$@)
134 $(hide) DX=$(abspath $(DX)) JASMIN=$(abspath $(HOST_OUT_EXECUTABLES)/jasmin) \
135 $(LOCAL_PATH)/run-test --build-only --output-path $$(abspath $$(dir $$@)) $(1)
136 $(hide) touch $$@
137
138 TEST_ART_RUN_TEST_BUILD_RULES += $$(dmart_target)
139 dmart_target :=
140endef
Ian Rogersbf66bce2014-06-24 23:15:34 -0700141$(foreach test, $(TEST_ART_RUN_TESTS), $(eval $(call define-build-art-run-test,$(test))))
Ian Rogersafd9acc2014-06-17 08:21:54 -0700142
143include $(CLEAR_VARS)
144LOCAL_MODULE_TAGS := tests
145LOCAL_MODULE := art-run-tests
146LOCAL_ADDITIONAL_DEPENDENCIES := $(TEST_ART_RUN_TEST_BUILD_RULES)
147# The build system use this flag to pick up files generated by declare-make-art-run-test.
148LOCAL_PICKUP_FILES := $(art_run_tests_dir)
149
150include $(BUILD_PHONY_PACKAGE)
151
152# Clear temp vars.
Ian Rogers8a14b752014-07-18 15:06:53 -0700153all-run-test-names :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700154art_run_tests_dir :=
155define-build-art-run-test :=
Ian Rogers8a14b752014-07-18 15:06:53 -0700156TEST_ART_RUN_TEST_BUILD_RULES :=
Ian Rogers8a14b752014-07-18 15:06:53 -0700157TEST_ART_TIMING_SENSITIVE_RUN_TESTS :=
158TEST_ART_BROKEN_TRACE_RUN_TESTS :=
159TEST_ART_BROKEN_GCSTRESS_RUN_TESTS :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700160
161########################################################################
162
163ART_TEST_TARGET_RUN_TEST_ALL_RULES :=
164ART_TEST_TARGET_RUN_TEST_DEFAULT_RULES :=
165ART_TEST_TARGET_RUN_TEST_INTERPRETER_RULES :=
166ART_TEST_TARGET_RUN_TEST_OPTIMIZING_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700167ART_TEST_TARGET_RUN_TEST_RELOCATE_RULES :=
168ART_TEST_TARGET_RUN_TEST_DEFAULT_RELOCATE_RULES :=
169ART_TEST_TARGET_RUN_TEST_INTERPRETER_RELOCATE_RULES :=
170ART_TEST_TARGET_RUN_TEST_OPTIMIZING_RELOCATE_RULES :=
171ART_TEST_TARGET_RUN_TEST_NORELOCATE_RULES :=
172ART_TEST_TARGET_RUN_TEST_DEFAULT_NORELOCATE_RULES :=
173ART_TEST_TARGET_RUN_TEST_INTERPRETER_NORELOCATE_RULES :=
174ART_TEST_TARGET_RUN_TEST_OPTIMIZING_NORELOCATE_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700175ART_TEST_TARGET_RUN_TEST_NO_PREBUILD_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700176ART_TEST_TARGET_RUN_TEST_PREBUILD_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700177ART_TEST_TARGET_RUN_TEST_DEFAULT_NO_PREBUILD_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700178ART_TEST_TARGET_RUN_TEST_DEFAULT_PREBUILD_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700179ART_TEST_TARGET_RUN_TEST_INTERPRETER_NO_PREBUILD_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700180ART_TEST_TARGET_RUN_TEST_INTERPRETER_PREBUILD_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700181ART_TEST_TARGET_RUN_TEST_OPTIMIZING_NO_PREBUILD_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700182ART_TEST_TARGET_RUN_TEST_OPTIMIZING_PREBUILD_RULES :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700183ART_TEST_TARGET_RUN_TEST_ALL$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
184ART_TEST_TARGET_RUN_TEST_DEFAULT$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
185ART_TEST_TARGET_RUN_TEST_INTERPRETER$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
186ART_TEST_TARGET_RUN_TEST_OPTIMIZING$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700187ART_TEST_TARGET_RUN_TEST_RELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
188ART_TEST_TARGET_RUN_TEST_DEFAULT_RELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
189ART_TEST_TARGET_RUN_TEST_INTERPRETER_RELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
190ART_TEST_TARGET_RUN_TEST_OPTIMIZING_RELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
191ART_TEST_TARGET_RUN_TEST_NORELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
192ART_TEST_TARGET_RUN_TEST_DEFAULT_NORELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
193ART_TEST_TARGET_RUN_TEST_INTERPRETER_NORELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
194ART_TEST_TARGET_RUN_TEST_OPTIMIZING_NORELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700195ART_TEST_TARGET_RUN_TEST_NO_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700196ART_TEST_TARGET_RUN_TEST_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700197ART_TEST_TARGET_RUN_TEST_DEFAULT_NO_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700198ART_TEST_TARGET_RUN_TEST_DEFAULT_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700199ART_TEST_TARGET_RUN_TEST_INTERPRETER_NO_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700200ART_TEST_TARGET_RUN_TEST_INTERPRETER_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700201ART_TEST_TARGET_RUN_TEST_ALL$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
202ART_TEST_TARGET_RUN_TEST_DEFAULT$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
203ART_TEST_TARGET_RUN_TEST_INTERPRETER$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
204ART_TEST_TARGET_RUN_TEST_OPTIMIZING$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700205ART_TEST_TARGET_RUN_TEST_RELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
206ART_TEST_TARGET_RUN_TEST_DEFAULT_RELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
207ART_TEST_TARGET_RUN_TEST_INTERPRETER_RELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
208ART_TEST_TARGET_RUN_TEST_OPTIMIZING_RELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
209ART_TEST_TARGET_RUN_TEST_NORELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
210ART_TEST_TARGET_RUN_TEST_DEFAULT_NORELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
211ART_TEST_TARGET_RUN_TEST_INTERPRETER_NORELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
212ART_TEST_TARGET_RUN_TEST_OPTIMIZING_NORELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700213ART_TEST_TARGET_RUN_TEST_NO_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700214ART_TEST_TARGET_RUN_TEST_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700215ART_TEST_TARGET_RUN_TEST_DEFAULT_NO_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700216ART_TEST_TARGET_RUN_TEST_DEFAULT_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700217ART_TEST_TARGET_RUN_TEST_INTERPRETER_NO_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700218ART_TEST_TARGET_RUN_TEST_INTERPRETER_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700219ART_TEST_TARGET_RUN_TEST_OPTIMIZING_NO_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700220ART_TEST_TARGET_RUN_TEST_OPTIMIZING_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700221ART_TEST_HOST_RUN_TEST_ALL_RULES :=
222ART_TEST_HOST_RUN_TEST_DEFAULT_RULES :=
223ART_TEST_HOST_RUN_TEST_INTERPRETER_RULES :=
224ART_TEST_HOST_RUN_TEST_OPTIMIZING_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700225ART_TEST_HOST_RUN_TEST_RELOCATE_RULES :=
226ART_TEST_HOST_RUN_TEST_DEFAULT_RELOCATE_RULES :=
227ART_TEST_HOST_RUN_TEST_INTERPRETER_RELOCATE_RULES :=
228ART_TEST_HOST_RUN_TEST_OPTIMIZING_RELOCATE_RULES :=
229ART_TEST_HOST_RUN_TEST_NORELOCATE_RULES :=
230ART_TEST_HOST_RUN_TEST_DEFAULT_NORELOCATE_RULES :=
231ART_TEST_HOST_RUN_TEST_INTERPRETER_NORELOCATE_RULES :=
232ART_TEST_HOST_RUN_TEST_OPTIMIZING_NORELOCATE_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700233ART_TEST_HOST_RUN_TEST_NO_PREBUILD_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700234ART_TEST_HOST_RUN_TEST_PREBUILD_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700235ART_TEST_HOST_RUN_TEST_DEFAULT_NO_PREBUILD_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700236ART_TEST_HOST_RUN_TEST_DEFAULT_PREBUILD_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700237ART_TEST_HOST_RUN_TEST_INTERPRETER_NO_PREBUILD_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700238ART_TEST_HOST_RUN_TEST_INTERPRETER_PREBUILD_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700239ART_TEST_HOST_RUN_TEST_OPTIMIZING_NO_PREBUILD_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700240ART_TEST_HOST_RUN_TEST_OPTIMIZING_PREBUILD_RULES :=
Ian Rogers716e4f82014-07-16 11:18:03 -0700241ART_TEST_HOST_RUN_TEST_ALL$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700242ART_TEST_HOST_RUN_TEST_DEFAULT$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
243ART_TEST_HOST_RUN_TEST_INTERPRETER$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
244ART_TEST_HOST_RUN_TEST_OPTIMIZING$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700245ART_TEST_HOST_RUN_TEST_RELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
246ART_TEST_HOST_RUN_TEST_DEFAULT_RELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
247ART_TEST_HOST_RUN_TEST_INTERPRETER_RELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
248ART_TEST_HOST_RUN_TEST_OPTIMIZING_RELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
249ART_TEST_HOST_RUN_TEST_NORELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
250ART_TEST_HOST_RUN_TEST_DEFAULT_NORELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
251ART_TEST_HOST_RUN_TEST_INTERPRETER_NORELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
252ART_TEST_HOST_RUN_TEST_OPTIMIZING_NORELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700253ART_TEST_HOST_RUN_TEST_NO_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700254ART_TEST_HOST_RUN_TEST_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700255ART_TEST_HOST_RUN_TEST_DEFAULT_NO_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700256ART_TEST_HOST_RUN_TEST_DEFAULT_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700257ART_TEST_HOST_RUN_TEST_INTERPRETER_NO_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700258ART_TEST_HOST_RUN_TEST_INTERPRETER_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Ian Rogers716e4f82014-07-16 11:18:03 -0700259ART_TEST_HOST_RUN_TEST_ALL$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700260ART_TEST_HOST_RUN_TEST_DEFAULT$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
261ART_TEST_HOST_RUN_TEST_INTERPRETER$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
262ART_TEST_HOST_RUN_TEST_OPTIMIZING$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700263ART_TEST_HOST_RUN_TEST_RELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
264ART_TEST_HOST_RUN_TEST_DEFAULT_RELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
265ART_TEST_HOST_RUN_TEST_INTERPRETER_RELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
266ART_TEST_HOST_RUN_TEST_OPTIMIZING_RELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
267ART_TEST_HOST_RUN_TEST_NORELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
268ART_TEST_HOST_RUN_TEST_DEFAULT_NORELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
269ART_TEST_HOST_RUN_TEST_INTERPRETER_NORELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
270ART_TEST_HOST_RUN_TEST_OPTIMIZING_NORELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700271ART_TEST_HOST_RUN_TEST_NO_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700272ART_TEST_HOST_RUN_TEST_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700273ART_TEST_HOST_RUN_TEST_DEFAULT_NO_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700274ART_TEST_HOST_RUN_TEST_DEFAULT_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700275ART_TEST_HOST_RUN_TEST_INTERPRETER_NO_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700276ART_TEST_HOST_RUN_TEST_INTERPRETER_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700277ART_TEST_HOST_RUN_TEST_OPTIMIZING_NO_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700278ART_TEST_HOST_RUN_TEST_OPTIMIZING_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700279
280# We need dex2oat and dalvikvm on the target as well as the core image.
281TEST_ART_TARGET_SYNC_DEPS += $(ART_TARGET_EXECUTABLES) $(TARGET_CORE_IMG_OUT) $(2ND_TARGET_CORE_IMG_OUT)
282
283# All tests require the host executables and the core images.
284ART_TEST_HOST_RUN_TEST_DEPENDENCIES := \
285 $(ART_HOST_EXECUTABLES) \
Nicolas Geoffray4d1231d2014-07-01 10:46:31 +0100286 $(ART_HOST_OUT_SHARED_LIBRARIES)/libjavacore$(ART_HOST_SHLIB_EXTENSION) \
Brian Carlstrom519e3d02014-06-25 00:57:36 -0700287 $(HOST_CORE_IMG_OUT)
Ian Rogers665de8a2014-06-24 21:34:09 -0700288
289ifneq ($(HOST_PREFER_32_BIT),true)
290ART_TEST_HOST_RUN_TEST_DEPENDENCIES += \
Nicolas Geoffray4d1231d2014-07-01 10:46:31 +0100291 $(2ND_ART_HOST_OUT_SHARED_LIBRARIES)/libjavacore$(ART_HOST_SHLIB_EXTENSION) \
Ian Rogersafd9acc2014-06-17 08:21:54 -0700292 $(2ND_HOST_CORE_IMG_OUT)
Ian Rogers665de8a2014-06-24 21:34:09 -0700293endif
Ian Rogersafd9acc2014-06-17 08:21:54 -0700294
295# For a given test create all the combinations of host/target, compiler and suffix such as:
296# test-art-host-run-test-optimizing-003-omnibus-opcodes32
297# $(1): test name, e.g. 003-omnibus-opcodes
298# $(2): host or target
299# $(3): default, optimizing or interpreter
300# $(4): 32 or 64
Ian Rogers701aa642014-07-18 11:38:13 -0700301# $(5): run tests with tracing or GC verification enabled or not: trace, gcverify or undefined
Alex Light9d722532014-07-22 18:07:12 -0700302# $(6): relocate, norelocate, no-prebuild or undefined.
Ian Rogersafd9acc2014-06-17 08:21:54 -0700303define define-test-art-run-test
304 run_test_options := $(addprefix --runtime-option ,$(DALVIKVM_FLAGS))
Alex Lighta59dd802014-07-02 16:28:08 -0700305 run_test_rule_name :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700306 uc_host_or_target :=
307 prereq_rule :=
Ian Rogers064a59d2014-07-18 15:55:59 -0700308 skip_test := false
Alex Lighta59dd802014-07-02 16:28:08 -0700309 uc_reloc_type :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700310 ifeq ($(2),host)
311 uc_host_or_target := HOST
312 run_test_options += --host
313 prereq_rule := $(ART_TEST_HOST_RUN_TEST_DEPENDENCIES)
314 else
315 ifeq ($(2),target)
316 uc_host_or_target := TARGET
317 prereq_rule := test-art-target-sync
318 else
319 $$(error found $(2) expected host or target)
320 endif
321 endif
Alex Lighta59dd802014-07-02 16:28:08 -0700322 ifeq ($(6),relocate)
323 uc_reloc_type := RELOCATE
Alex Light9d722532014-07-22 18:07:12 -0700324 run_test_options += --relocate --no-prebuild
Alex Lighta59dd802014-07-02 16:28:08 -0700325 ifneq ($(ART_TEST_RUN_TEST_RELOCATE),true)
326 skip_test := true
327 endif
328 else
Alex Light9d722532014-07-22 18:07:12 -0700329 ifeq ($(6),no-prebuild)
330 uc_reloc_type := NO_PREBUILD
331 run_test_options += --no-relocate --no-prebuild
332 ifneq ($(ART_TEST_RUN_TEST_NO_PREBUILD),true)
Alex Lighta59dd802014-07-02 16:28:08 -0700333 skip_test := true
334 endif
335 else
336 ifeq ($(6),norelocate)
337 uc_reloc_type := NORELOCATE
Alex Light9d722532014-07-22 18:07:12 -0700338 run_test_options += --no-relocate --prebuild
Alex Lighta59dd802014-07-02 16:28:08 -0700339 ifneq ($(ART_TEST_RUN_TEST_NO_RELOCATE),true)
340 skip_test := true
341 endif
342 else
Alex Light9d722532014-07-22 18:07:12 -0700343 uc_reloc_type := PREBUILD
344 run_test_options += --relocate --prebuild
Alex Lighta59dd802014-07-02 16:28:08 -0700345 endif
346 endif
347 endif
Ian Rogersafd9acc2014-06-17 08:21:54 -0700348 uc_compiler :=
349 ifeq ($(3),optimizing)
350 uc_compiler := OPTIMIZING
351 run_test_options += -Xcompiler-option --compiler-backend=Optimizing
Ian Rogers5242c0a2014-07-18 11:02:19 -0700352 ifneq ($$(ART_TEST_OPTIMIZING),true)
353 skip_test := true
354 endif
Ian Rogersafd9acc2014-06-17 08:21:54 -0700355 else
356 ifeq ($(3),interpreter)
357 uc_compiler := INTERPRETER
358 run_test_options += --interpreter
359 else
360 ifeq ($(3),default)
361 uc_compiler := DEFAULT
362 else
363 $$(error found $(3) expected optimizing, interpreter or default)
364 endif
365 endif
366 endif
367 ifeq ($(4),64)
368 run_test_options += --64
369 else
370 ifneq ($(4),32)
371 $$(error found $(4) expected 32 or 64)
372 endif
373 endif
Ian Rogers716e4f82014-07-16 11:18:03 -0700374 ifeq ($(5),trace)
375 run_test_options += --trace
Alex Lighta59dd802014-07-02 16:28:08 -0700376 run_test_rule_name := test-art-$(2)-run-test-trace-$(3)-$(6)-$(1)$(4)
Ian Rogers5242c0a2014-07-18 11:02:19 -0700377 ifneq ($$(ART_TEST_TRACE),true)
378 skip_test := true
379 endif
Ian Rogers716e4f82014-07-16 11:18:03 -0700380 else
Ian Rogers701aa642014-07-18 11:38:13 -0700381 ifeq ($(5),gcverify)
382 run_test_options += --runtime-option -Xgc:preverify --runtime-option -Xgc:postverify \
383 --runtime-option -Xgc:preverify_rosalloc --runtime-option -Xgc:postverify_rosalloc
Alex Lighta59dd802014-07-02 16:28:08 -0700384 run_test_rule_name := test-art-$(2)-run-test-gcverify-$(3)-$(6)-$(1)$(4)
Ian Rogers701aa642014-07-18 11:38:13 -0700385 ifneq ($$(ART_TEST_GC_VERIFY),true)
386 skip_test := true
387 endif
388 else
Ian Rogers8a14b752014-07-18 15:06:53 -0700389 ifeq ($(5),gcstress)
390 run_test_options += --runtime-option -Xgc:SS --runtime-option -Xms2m \
391 --runtime-option -Xmx2m --runtime-option -Xgc:preverify --runtime-option -Xgc:postverify
Alex Lighta59dd802014-07-02 16:28:08 -0700392 run_test_rule_name := test-art-$(2)-run-test-gcstress-$(3)-$(6)-$(1)$(4)
Ian Rogers8a14b752014-07-18 15:06:53 -0700393 ifneq ($$(ART_TEST_GC_STRESS),true)
394 skip_test := true
395 endif
396 else
397 ifneq (,$(5))
398 $$(error found $(5) expected undefined or gcverify, gcstress or trace)
399 endif
Alex Lighta59dd802014-07-02 16:28:08 -0700400 run_test_rule_name := test-art-$(2)-run-test-$(3)-$(6)-$(1)$(4)
Ian Rogers701aa642014-07-18 11:38:13 -0700401 endif
Ian Rogers716e4f82014-07-16 11:18:03 -0700402 endif
403 endif
Ian Rogers5242c0a2014-07-18 11:02:19 -0700404 ifeq ($$(skip_test),false)
405 run_test_options := --output-path $(ART_HOST_TEST_DIR)/run-test-output/$$(run_test_rule_name) \
406 $$(run_test_options)
Ian Rogersafd9acc2014-06-17 08:21:54 -0700407$$(run_test_rule_name): PRIVATE_RUN_TEST_OPTIONS := $$(run_test_options)
408.PHONY: $$(run_test_rule_name)
409$$(run_test_rule_name): $(DX) $(HOST_OUT_EXECUTABLES)/jasmin $$(prereq_rule)
410 $(hide) $$(call ART_TEST_SKIP,$$@) && \
411 DX=$(abspath $(DX)) JASMIN=$(abspath $(HOST_OUT_EXECUTABLES)/jasmin) \
412 art/test/run-test $$(PRIVATE_RUN_TEST_OPTIONS) $(1) \
413 && $$(call ART_TEST_PASSED,$$@) || $$(call ART_TEST_FAILED,$$@)
414 $$(hide) (echo $(MAKECMDGOALS) | grep -q $$@ && \
415 echo "run-test run as top-level target, removing test directory $(ART_HOST_TEST_DIR)" && \
416 rm -r $(ART_HOST_TEST_DIR)) || true
Ian Rogers5242c0a2014-07-18 11:02:19 -0700417 else
418 .PHONY: $$(run_test_rule_name)
419$$(run_test_rule_name):
420 endif
Ian Rogersafd9acc2014-06-17 08:21:54 -0700421
Ian Rogersafd9acc2014-06-17 08:21:54 -0700422 ART_TEST_$$(uc_host_or_target)_RUN_TEST_$$(uc_compiler)$(4)_RULES += $$(run_test_rule_name)
423 ART_TEST_$$(uc_host_or_target)_RUN_TEST_$$(uc_compiler)_RULES += $$(run_test_rule_name)
424 ART_TEST_$$(uc_host_or_target)_RUN_TEST_$$(uc_compiler)_$(1)_RULES += $$(run_test_rule_name)
Alex Lighta59dd802014-07-02 16:28:08 -0700425 ART_TEST_$$(uc_host_or_target)_RUN_TEST_$$(uc_compiler)_$$(uc_reloc_type)_RULES += $$(run_test_rule_name)
Ian Rogersafd9acc2014-06-17 08:21:54 -0700426 ART_TEST_$$(uc_host_or_target)_RUN_TEST_$(1)_RULES += $$(run_test_rule_name)
427 ART_TEST_$$(uc_host_or_target)_RUN_TEST_ALL_RULES += $$(run_test_rule_name)
Alex Lighta59dd802014-07-02 16:28:08 -0700428 ART_TEST_$$(uc_host_or_target)_RUN_TEST_$$(uc_reloc_type)_RULES += $$(run_test_rule_name)
Ian Rogersafd9acc2014-06-17 08:21:54 -0700429 ART_TEST_$$(uc_host_or_target)_RUN_TEST_ALL$(4)_RULES += $$(run_test_rule_name)
430
431 # Clear locally defined variables.
Ian Rogers5242c0a2014-07-18 11:02:19 -0700432 skip_test :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700433 run_test_options :=
434 run_test_rule_name :=
435 uc_host_or_target :=
436 prereq_rule :=
Alex Lighta59dd802014-07-02 16:28:08 -0700437 uc_reloc_type :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700438 uc_compiler :=
439endef # define-test-art-run-test
440
441# Define a phony rule whose purpose is to test its prerequisites.
442# $(1): rule name, e.g. test-art-host-run-test32
443# $(2): list of prerequisites
444define define-test-art-run-test-group-rule
445.PHONY: $(1)
446$(1): $(2)
447 $(hide) $$(call ART_TEST_PREREQ_FINISHED,$$@)
448
449endef # define-test-art-run-test-group-rule
450
451# Create rules for a group of run tests.
452# $(1): test name, e.g. 003-omnibus-opcodes
453# $(2): host or target
Alex Light9d722532014-07-22 18:07:12 -0700454# $(3): relocate, norelocate or no-prebuild, or prebuild.
Alex Lighta59dd802014-07-02 16:28:08 -0700455define define-test-art-run-test-group-type
Ian Rogersafd9acc2014-06-17 08:21:54 -0700456 group_uc_host_or_target :=
457 ifeq ($(2),host)
458 group_uc_host_or_target := HOST
459 else
460 ifeq ($(2),target)
461 group_uc_host_or_target := TARGET
462 else
463 $$(error found $(2) expected host or target)
464 endif
465 endif
466
467 ART_TEST_$$(group_uc_host_or_target)_RUN_TEST_DEFAULT_$(1)_RULES :=
468 ART_TEST_$$(group_uc_host_or_target)_RUN_TEST_INTERPRETER_$(1)_RULES :=
469 ART_TEST_$$(group_uc_host_or_target)_RUN_TEST_OPTIMIZING_$(1)_RULES :=
470 ART_TEST_$$(group_uc_host_or_target)_RUN_TEST_$(1)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700471 $$(eval $$(call define-test-art-run-test,$(1),$(2),default,$$(ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),,$(3)))
472 $$(eval $$(call define-test-art-run-test,$(1),$(2),interpreter,$$(ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),,$(3)))
473 $$(eval $$(call define-test-art-run-test,$(1),$(2),optimizing,$$(ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),,$(3)))
474 $$(eval $$(call define-test-art-run-test,$(1),$(2),default,$$(ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),trace,$(3)))
475 $$(eval $$(call define-test-art-run-test,$(1),$(2),interpreter,$$(ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),trace,$(3)))
476 $$(eval $$(call define-test-art-run-test,$(1),$(2),optimizing,$$(ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),trace,$(3)))
477 $$(eval $$(call define-test-art-run-test,$(1),$(2),default,$$(ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),gcverify,$(3)))
478 $$(eval $$(call define-test-art-run-test,$(1),$(2),interpreter,$$(ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),gcverify,$(3)))
479 $$(eval $$(call define-test-art-run-test,$(1),$(2),optimizing,$$(ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),gcverify,$(3)))
480 $$(eval $$(call define-test-art-run-test,$(1),$(2),default,$$(ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),gcstress,$(3)))
481 $$(eval $$(call define-test-art-run-test,$(1),$(2),interpreter,$$(ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),gcstress,$(3)))
482 $$(eval $$(call define-test-art-run-test,$(1),$(2),optimizing,$$(ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),gcstress,$(3)))
Ian Rogersafd9acc2014-06-17 08:21:54 -0700483 do_second := false
484 ifeq ($(2),host)
485 ifneq ($$(HOST_PREFER_32_BIT),true)
486 do_second := true
487 endif
488 else
489 ifdef TARGET_2ND_ARCH
490 do_second := true
491 endif
492 endif
493 ifeq (true,$$(do_second))
Alex Lighta59dd802014-07-02 16:28:08 -0700494 $$(eval $$(call define-test-art-run-test,$(1),$(2),default,$$(2ND_ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),,$(3)))
495 $$(eval $$(call define-test-art-run-test,$(1),$(2),interpreter,$$(2ND_ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),,$(3)))
496 $$(eval $$(call define-test-art-run-test,$(1),$(2),optimizing,$$(2ND_ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),,$(3)))
497 $$(eval $$(call define-test-art-run-test,$(1),$(2),default,$$(2ND_ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),trace,$(3)))
498 $$(eval $$(call define-test-art-run-test,$(1),$(2),interpreter,$$(2ND_ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),trace,$(3)))
499 $$(eval $$(call define-test-art-run-test,$(1),$(2),optimizing,$$(2ND_ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),trace,$(3)))
500 $$(eval $$(call define-test-art-run-test,$(1),$(2),default,$$(2ND_ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),gcverify,$(3)))
501 $$(eval $$(call define-test-art-run-test,$(1),$(2),interpreter,$$(2ND_ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),gcverify,$(3)))
502 $$(eval $$(call define-test-art-run-test,$(1),$(2),optimizing,$$(2ND_ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),gcverify,$(3)))
503 $$(eval $$(call define-test-art-run-test,$(1),$(2),default,$$(2ND_ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),gcstress,$(3)))
504 $$(eval $$(call define-test-art-run-test,$(1),$(2),interpreter,$$(2ND_ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),gcstress,$(3)))
505 $$(eval $$(call define-test-art-run-test,$(1),$(2),optimizing,$$(2ND_ART_PHONY_TEST_$$(group_uc_host_or_target)_SUFFIX),gcstress,$(3)))
Ian Rogersafd9acc2014-06-17 08:21:54 -0700506 endif
Alex Lighta59dd802014-07-02 16:28:08 -0700507endef # define-test-art-run-test-group-type
Ian Rogersafd9acc2014-06-17 08:21:54 -0700508
Alex Lighta59dd802014-07-02 16:28:08 -0700509# Create rules for a group of run tests.
510# $(1): test name, e.g. 003-omnibus-opcodes
511# $(2): host or target
512define define-test-art-run-test-group
513 group_uc_host_or_target :=
514 ifeq ($(2),host)
515 group_uc_host_or_target := HOST
516 else
517 ifeq ($(2),target)
518 group_uc_host_or_target := TARGET
519 else
520 $$(error found $(2) expected host or target)
521 endif
522 endif
523 ART_TEST_$$(group_uc_host_or_target)_RUN_TEST_DEFAULT_$(1)_RULES :=
524 ART_TEST_$$(group_uc_host_or_target)_RUN_TEST_INTERPRETER_$(1)_RULES :=
525 ART_TEST_$$(group_uc_host_or_target)_RUN_TEST_OPTIMIZING_$(1)_RULES :=
526 ART_TEST_$$(group_uc_host_or_target)_RUN_TEST_$(1)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700527 $$(eval $$(call define-test-art-run-test-group-type,$(1),$(2),prebuild))
Alex Lighta59dd802014-07-02 16:28:08 -0700528 $$(eval $$(call define-test-art-run-test-group-type,$(1),$(2),norelocate))
529 $$(eval $$(call define-test-art-run-test-group-type,$(1),$(2),relocate))
Alex Light9d722532014-07-22 18:07:12 -0700530 $$(eval $$(call define-test-art-run-test-group-type,$(1),$(2),no-prebuild))
Ian Rogersafd9acc2014-06-17 08:21:54 -0700531 $$(eval $$(call define-test-art-run-test-group-rule,test-art-$(2)-run-test-default-$(1), \
532 $$(ART_TEST_$$(group_uc_host_or_target)_RUN_TEST_DEFAULT_$(1)_RULES)))
533 $$(eval $$(call define-test-art-run-test-group-rule,test-art-$(2)-run-test-interpreter-$(1), \
534 $$(ART_TEST_$$(group_uc_host_or_target)_RUN_TEST_INTERPRETER_$(1)_RULES)))
535 $$(eval $$(call define-test-art-run-test-group-rule,test-art-$(2)-run-test-optimizing-$(1), \
536 $$(ART_TEST_$$(group_uc_host_or_target)_RUN_TEST_OPTIMIZING_$(1)_RULES)))
537 $$(eval $$(call define-test-art-run-test-group-rule,test-art-$(2)-run-test-$(1), \
538 $$(ART_TEST_$$(group_uc_host_or_target)_RUN_TEST_$(1)_RULES)))
539
540 # Clear locally defined variables.
541 ART_TEST_$$(group_uc_host_or_target)_RUN_TEST_DEFAULT_$(1)_RULES :=
542 ART_TEST_$$(group_uc_host_or_target)_RUN_TEST_INTERPRETER_$(1)_RULES :=
543 ART_TEST_$$(group_uc_host_or_target)_RUN_TEST_OPTIMIZING_$(1)_RULES :=
544 ART_TEST_$$(group_uc_host_or_target)_RUN_TEST_$(1)_RULES :=
545 group_uc_host_or_target :=
546 do_second :=
547endef # define-test-art-run-test-group
548
549$(foreach test, $(TEST_ART_RUN_TESTS), $(eval $(call define-test-art-run-test-group,$(test),target)))
550$(foreach test, $(TEST_ART_RUN_TESTS), $(eval $(call define-test-art-run-test-group,$(test),host)))
551
Alex Light9d722532014-07-22 18:07:12 -0700552$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-no-prebuild, \
553 $(ART_TEST_TARGET_RUN_TEST_NO_PREBUILD_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700554$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-prebuild, \
555 $(ART_TEST_TARGET_RUN_TEST_PREBUILD_RULES)))
556$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-norelocate, \
557 $(ART_TEST_TARGET_RUN_TEST_NORELOCATE_RULES)))
558$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-relocate, \
559 $(ART_TEST_TARGET_RUN_TEST_RELOCATE_RULES)))
Ian Rogersafd9acc2014-06-17 08:21:54 -0700560$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test, \
561 $(ART_TEST_TARGET_RUN_TEST_ALL_RULES)))
562$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-default, \
563 $(ART_TEST_TARGET_RUN_TEST_DEFAULT_RULES)))
564$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-interpreter, \
565 $(ART_TEST_TARGET_RUN_TEST_INTERPRETER_RULES)))
566$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-optimizing, \
567 $(ART_TEST_TARGET_RUN_TEST_OPTIMIZING_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700568$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-default-no-prebuild, \
569 $(ART_TEST_TARGET_RUN_TEST_DEFAULT_NO_PREBUILD_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700570$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-default-prebuild, \
571 $(ART_TEST_TARGET_RUN_TEST_DEFAULT_PREBUILD_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700572$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-interpreter-no-prebuild, \
573 $(ART_TEST_TARGET_RUN_TEST_INTERPRETER_NO_PREBUILD_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700574$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-interpreter-prebuild, \
575 $(ART_TEST_TARGET_RUN_TEST_INTERPRETER_PREBUILD_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700576$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-optimizing-no-prebuild, \
577 $(ART_TEST_TARGET_RUN_TEST_OPTIMIZING_NO_PREBUILD_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700578$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-optimizing-prebuild, \
579 $(ART_TEST_TARGET_RUN_TEST_OPTIMIZING_PREBUILD_RULES)))
580$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-default-norelocate, \
581 $(ART_TEST_TARGET_RUN_TEST_DEFAULT_NORELOCATE_RULES)))
582$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-interpreter-norelocate, \
583 $(ART_TEST_TARGET_RUN_TEST_INTERPRETER_NORELOCATE_RULES)))
584$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-optimizing-norelocate, \
585 $(ART_TEST_TARGET_RUN_TEST_OPTIMIZING_NORELOCATE_RULES)))
586$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-default-relocate, \
587 $(ART_TEST_TARGET_RUN_TEST_DEFAULT_RELOCATE_RULES)))
588$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-interpreter-relocate, \
589 $(ART_TEST_TARGET_RUN_TEST_INTERPRETER_RELOCATE_RULES)))
590$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-optimizing-relocate, \
591 $(ART_TEST_TARGET_RUN_TEST_OPTIMIZING_RELOCATE_RULES)))
Ian Rogersafd9acc2014-06-17 08:21:54 -0700592$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test$(ART_PHONY_TEST_TARGET_SUFFIX), \
593 $(ART_TEST_TARGET_RUN_TEST_ALL$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
594$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-default$(ART_PHONY_TEST_TARGET_SUFFIX), \
595 $(ART_TEST_TARGET_RUN_TEST_DEFAULT$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
596$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-interpreter$(ART_PHONY_TEST_TARGET_SUFFIX), \
597 $(ART_TEST_TARGET_RUN_TEST_INTERPRETER$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
598$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-optimizing$(ART_PHONY_TEST_TARGET_SUFFIX), \
599 $(ART_TEST_TARGET_RUN_TEST_OPTIMIZING$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700600$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-no-prebuild$(ART_PHONY_TEST_TARGET_SUFFIX), \
601 $(ART_TEST_TARGET_RUN_TEST_NO_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700602$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-prebuild$(ART_PHONY_TEST_TARGET_SUFFIX), \
603 $(ART_TEST_TARGET_RUN_TEST_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
604$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-norelocate$(ART_PHONY_TEST_TARGET_SUFFIX), \
605 $(ART_TEST_TARGET_RUN_TEST_NORELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
606$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-relocate$(ART_PHONY_TEST_TARGET_SUFFIX), \
607 $(ART_TEST_TARGET_RUN_TEST_RELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700608$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-default-no-prebuild$(ART_PHONY_TEST_TARGET_SUFFIX), \
609 $(ART_TEST_TARGET_RUN_TEST_DEFAULT_NO_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700610$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-default-prebuild$(ART_PHONY_TEST_TARGET_SUFFIX), \
611 $(ART_TEST_TARGET_RUN_TEST_DEFAULT_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700612$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-interpreter-no-prebuild$(ART_PHONY_TEST_TARGET_SUFFIX), \
613 $(ART_TEST_TARGET_RUN_TEST_INTERPRETER_NO_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700614$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-interpreter-prebuild$(ART_PHONY_TEST_TARGET_SUFFIX), \
615 $(ART_TEST_TARGET_RUN_TEST_INTERPRETER_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700616$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-optimizing-no-prebuild$(ART_PHONY_TEST_TARGET_SUFFIX), \
617 $(ART_TEST_TARGET_RUN_TEST_OPTIMIZING_NO_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700618$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-optimizing-prebuild$(ART_PHONY_TEST_TARGET_SUFFIX), \
619 $(ART_TEST_TARGET_RUN_TEST_OPTIMIZING_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
620$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-default-norelocate$(ART_PHONY_TEST_TARGET_SUFFIX), \
621 $(ART_TEST_TARGET_RUN_TEST_DEFAULT_NORELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
622$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-interpreter-norelocate$(ART_PHONY_TEST_TARGET_SUFFIX), \
623 $(ART_TEST_TARGET_RUN_TEST_INTERPRETER_NORELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
624$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-optimizing-norelocate$(ART_PHONY_TEST_TARGET_SUFFIX), \
625 $(ART_TEST_TARGET_RUN_TEST_OPTIMIZING_NORELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
626$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-default-relocate$(ART_PHONY_TEST_TARGET_SUFFIX), \
627 $(ART_TEST_TARGET_RUN_TEST_DEFAULT_RELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
628$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-interpreter-relocate$(ART_PHONY_TEST_TARGET_SUFFIX), \
629 $(ART_TEST_TARGET_RUN_TEST_INTERPRETER_RELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
630$(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-optimizing-relocate$(ART_PHONY_TEST_TARGET_SUFFIX), \
631 $(ART_TEST_TARGET_RUN_TEST_OPTIMIZING_RELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Ian Rogersafd9acc2014-06-17 08:21:54 -0700632ifdef TARGET_2ND_ARCH
633 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
634 $(ART_TEST_TARGET_RUN_TEST_ALL$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
635 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-default$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
636 $(ART_TEST_TARGET_RUN_TEST_DEFAULT$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
637 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-interpreter$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
638 $(ART_TEST_TARGET_RUN_TEST_INTERPRETER$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
639 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-optimizing$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
640 $(ART_TEST_TARGET_RUN_TEST_OPTIMIZING$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700641 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-no-prebuild$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
642 $(ART_TEST_TARGET_RUN_TEST_NO_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700643 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-prebuild$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
644 $(ART_TEST_TARGET_RUN_TEST_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
645 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-norelocate$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
646 $(ART_TEST_TARGET_RUN_TEST_NORELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
647 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-relocate$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
648 $(ART_TEST_TARGET_RUN_TEST_RELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700649 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-default-no-prebuild$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
650 $(ART_TEST_TARGET_RUN_TEST_DEFAULT_NO_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700651 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-default-prebuild$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
652 $(ART_TEST_TARGET_RUN_TEST_DEFAULT_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700653 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-interpreter-no-prebuild$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
654 $(ART_TEST_TARGET_RUN_TEST_INTERPRETER_NO_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700655 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-interpreter-prebuild$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
656 $(ART_TEST_TARGET_RUN_TEST_INTERPRETER_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700657 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-optimizing-no-prebuild$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
658 $(ART_TEST_TARGET_RUN_TEST_OPTIMIZING_NO_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700659 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-optimizing-prebuild$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
660 $(ART_TEST_TARGET_RUN_TEST_OPTIMIZING_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
661 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-default-norelocate$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
662 $(ART_TEST_TARGET_RUN_TEST_DEFAULT_NORELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
663 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-interpreter-norelocate$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
664 $(ART_TEST_TARGET_RUN_TEST_INTERPRETER_NORELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
665 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-optimizing-norelocate$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
666 $(ART_TEST_TARGET_RUN_TEST_OPTIMIZING_NORELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
667 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-default-relocate$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
668 $(ART_TEST_TARGET_RUN_TEST_DEFAULT_RELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
669 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-interpreter-relocate$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
670 $(ART_TEST_TARGET_RUN_TEST_INTERPRETER_RELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
671 $(eval $(call define-test-art-run-test-group-rule,test-art-target-run-test-optimizing-relocate$(2ND_ART_PHONY_TEST_TARGET_SUFFIX), \
672 $(ART_TEST_TARGET_RUN_TEST_OPTIMIZING_RELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES)))
Ian Rogersafd9acc2014-06-17 08:21:54 -0700673endif
674
Alex Light9d722532014-07-22 18:07:12 -0700675$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-no-prebuild, \
676 $(ART_TEST_HOST_RUN_TEST_NO_PREBUILD_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700677$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-prebuild, \
678 $(ART_TEST_HOST_RUN_TEST_PREBUILD_RULES)))
679$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-norelocate, \
680 $(ART_TEST_HOST_RUN_TEST_NORELOCATE_RULES)))
681$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-relocate, \
682 $(ART_TEST_HOST_RUN_TEST_RELOCATE_RULES)))
Ian Rogersafd9acc2014-06-17 08:21:54 -0700683$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test, \
684 $(ART_TEST_HOST_RUN_TEST_ALL_RULES)))
685$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-default, \
686 $(ART_TEST_HOST_RUN_TEST_DEFAULT_RULES)))
687$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-interpreter, \
688 $(ART_TEST_HOST_RUN_TEST_INTERPRETER_RULES)))
689$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-optimizing, \
690 $(ART_TEST_HOST_RUN_TEST_OPTIMIZING_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700691$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-default-no-prebuild, \
692 $(ART_TEST_HOST_RUN_TEST_DEFAULT_NO_PREBUILD_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700693$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-default-prebuild, \
694 $(ART_TEST_HOST_RUN_TEST_DEFAULT_PREBUILD_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700695$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-interpreter-no-prebuild, \
696 $(ART_TEST_HOST_RUN_TEST_INTERPRETER_NO_PREBUILD_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700697$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-interpreter-prebuild, \
698 $(ART_TEST_HOST_RUN_TEST_INTERPRETER_PREBUILD_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700699$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-optimizing-no-prebuild, \
700 $(ART_TEST_HOST_RUN_TEST_OPTIMIZING_NO_PREBUILD_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700701$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-optimizing-prebuild, \
702 $(ART_TEST_HOST_RUN_TEST_OPTIMIZING_PREBUILD_RULES)))
703$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-default-norelocate, \
704 $(ART_TEST_HOST_RUN_TEST_DEFAULT_NORELOCATE_RULES)))
705$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-interpreter-norelocate, \
706 $(ART_TEST_HOST_RUN_TEST_INTERPRETER_NORELOCATE_RULES)))
707$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-optimizing-norelocate, \
708 $(ART_TEST_HOST_RUN_TEST_OPTIMIZING_NORELOCATE_RULES)))
709$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-default-relocate, \
710 $(ART_TEST_HOST_RUN_TEST_DEFAULT_RELOCATE_RULES)))
711$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-interpreter-relocate, \
712 $(ART_TEST_HOST_RUN_TEST_INTERPRETER_RELOCATE_RULES)))
713$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-optimizing-relocate, \
714 $(ART_TEST_HOST_RUN_TEST_OPTIMIZING_RELOCATE_RULES)))
Ian Rogersafd9acc2014-06-17 08:21:54 -0700715$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test$(ART_PHONY_TEST_HOST_SUFFIX), \
716 $(ART_TEST_HOST_RUN_TEST_ALL$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
717$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-default$(ART_PHONY_TEST_HOST_SUFFIX), \
718 $(ART_TEST_HOST_RUN_TEST_DEFAULT$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
719$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-interpreter$(ART_PHONY_TEST_HOST_SUFFIX), \
720 $(ART_TEST_HOST_RUN_TEST_INTERPRETER$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
721$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-optimizing$(ART_PHONY_TEST_HOST_SUFFIX), \
722 $(ART_TEST_HOST_RUN_TEST_OPTIMIZING$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700723$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-no-prebuild$(ART_PHONY_TEST_HOST_SUFFIX), \
724 $(ART_TEST_HOST_RUN_TEST_NO_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700725$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-prebuild$(ART_PHONY_TEST_HOST_SUFFIX), \
726 $(ART_TEST_HOST_RUN_TEST_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
727$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-norelocate$(ART_PHONY_TEST_HOST_SUFFIX), \
728 $(ART_TEST_HOST_RUN_TEST_NORELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
729$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-relocate$(ART_PHONY_TEST_HOST_SUFFIX), \
730 $(ART_TEST_HOST_RUN_TEST_RELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700731$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-default-no-prebuild$(ART_PHONY_TEST_HOST_SUFFIX), \
732 $(ART_TEST_HOST_RUN_TEST_DEFAULT_NO_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700733$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-default-prebuild$(ART_PHONY_TEST_HOST_SUFFIX), \
734 $(ART_TEST_HOST_RUN_TEST_DEFAULT_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700735$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-interpreter-no-prebuild$(ART_PHONY_TEST_HOST_SUFFIX), \
736 $(ART_TEST_HOST_RUN_TEST_INTERPRETER_NO_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700737$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-interpreter-prebuild$(ART_PHONY_TEST_HOST_SUFFIX), \
738 $(ART_TEST_HOST_RUN_TEST_INTERPRETER_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700739$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-optimizing-no-prebuild$(ART_PHONY_TEST_HOST_SUFFIX), \
740 $(ART_TEST_HOST_RUN_TEST_OPTIMIZING_NO_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700741$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-optimizing-prebuild$(ART_PHONY_TEST_HOST_SUFFIX), \
742 $(ART_TEST_HOST_RUN_TEST_OPTIMIZING_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
743$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-default-norelocate$(ART_PHONY_TEST_HOST_SUFFIX), \
744 $(ART_TEST_HOST_RUN_TEST_DEFAULT_NORELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
745$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-interpreter-norelocate$(ART_PHONY_TEST_HOST_SUFFIX), \
746 $(ART_TEST_HOST_RUN_TEST_INTERPRETER_NORELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
747$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-optimizing-norelocate$(ART_PHONY_TEST_HOST_SUFFIX), \
748 $(ART_TEST_HOST_RUN_TEST_OPTIMIZING_NORELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
749$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-default-relocate$(ART_PHONY_TEST_HOST_SUFFIX), \
750 $(ART_TEST_HOST_RUN_TEST_DEFAULT_RELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
751$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-interpreter-relocate$(ART_PHONY_TEST_HOST_SUFFIX), \
752 $(ART_TEST_HOST_RUN_TEST_INTERPRETER_RELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
753$(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-optimizing-relocate$(ART_PHONY_TEST_HOST_SUFFIX), \
754 $(ART_TEST_HOST_RUN_TEST_OPTIMIZING_RELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Ian Rogersafd9acc2014-06-17 08:21:54 -0700755ifneq ($(HOST_PREFER_32_BIT),true)
756 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
757 $(ART_TEST_HOST_RUN_TEST_ALL$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
758 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-default$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
759 $(ART_TEST_HOST_RUN_TEST_DEFAULT$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
760 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-interpreter$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
761 $(ART_TEST_HOST_RUN_TEST_INTERPRETER$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
762 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-optimizing$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
763 $(ART_TEST_HOST_RUN_TEST_OPTIMIZING$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700764 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-no-prebuild$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
765 $(ART_TEST_HOST_RUN_TEST_NO_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700766 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-prebuild$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
767 $(ART_TEST_HOST_RUN_TEST_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
768 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-norelocate$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
769 $(ART_TEST_HOST_RUN_TEST_NORELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
770 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-relocate$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
771 $(ART_TEST_HOST_RUN_TEST_RELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700772 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-default-no-prebuild$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
773 $(ART_TEST_HOST_RUN_TEST_DEFAULT_NO_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700774 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-default-prebuild$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
775 $(ART_TEST_HOST_RUN_TEST_DEFAULT_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700776 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-interpreter-no-prebuild$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
777 $(ART_TEST_HOST_RUN_TEST_INTERPRETER_NO_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700778 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-interpreter-prebuild$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
779 $(ART_TEST_HOST_RUN_TEST_INTERPRETER_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Alex Light9d722532014-07-22 18:07:12 -0700780 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-optimizing-no-prebuild$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
781 $(ART_TEST_HOST_RUN_TEST_OPTIMIZING_NO_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Alex Lighta59dd802014-07-02 16:28:08 -0700782 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-optimizing-prebuild$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
783 $(ART_TEST_HOST_RUN_TEST_OPTIMIZING_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
784 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-default-norelocate$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
785 $(ART_TEST_HOST_RUN_TEST_DEFAULT_NORELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
786 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-interpreter-norelocate$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
787 $(ART_TEST_HOST_RUN_TEST_INTERPRETER_NORELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
788 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-optimizing-norelocate$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
789 $(ART_TEST_HOST_RUN_TEST_OPTIMIZING_NORELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
790 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-default-relocate$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
791 $(ART_TEST_HOST_RUN_TEST_DEFAULT_RELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
792 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-interpreter-relocate$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
793 $(ART_TEST_HOST_RUN_TEST_INTERPRETER_RELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
794 $(eval $(call define-test-art-run-test-group-rule,test-art-host-run-test-optimizing-relocate$(2ND_ART_PHONY_TEST_HOST_SUFFIX), \
795 $(ART_TEST_HOST_RUN_TEST_OPTIMIZING_RELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES)))
Ian Rogersafd9acc2014-06-17 08:21:54 -0700796endif
797
798define-test-art-run-test :=
799define-test-art-run-test-group-rule :=
800define-test-art-run-test-group :=
Ian Rogers064a59d2014-07-18 15:55:59 -0700801TEST_ART_RUN_TESTS :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700802ART_TEST_TARGET_RUN_TEST_ALL_RULES :=
803ART_TEST_TARGET_RUN_TEST_DEFAULT_RULES :=
804ART_TEST_TARGET_RUN_TEST_INTERPRETER_RULES :=
805ART_TEST_TARGET_RUN_TEST_OPTIMIZING_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700806ART_TEST_TARGET_RUN_TEST_RELOCATE_RULES :=
807ART_TEST_TARGET_RUN_TEST_DEFAULT_RELOCATE_RULES :=
808ART_TEST_TARGET_RUN_TEST_INTERPRETER_RELOCATE_RULES :=
809ART_TEST_TARGET_RUN_TEST_OPTIMIZING_RELOCATE_RULES :=
810ART_TEST_TARGET_RUN_TEST_NORELOCATE_RULES :=
811ART_TEST_TARGET_RUN_TEST_DEFAULT_NORELOCATE_RULES :=
812ART_TEST_TARGET_RUN_TEST_INTERPRETER_NORELOCATE_RULES :=
813ART_TEST_TARGET_RUN_TEST_OPTIMIZING_NORELOCATE_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700814ART_TEST_TARGET_RUN_TEST_NO_PREBUILD_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700815ART_TEST_TARGET_RUN_TEST_PREBUILD_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700816ART_TEST_TARGET_RUN_TEST_DEFAULT_NO_PREBUILD_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700817ART_TEST_TARGET_RUN_TEST_DEFAULT_PREBUILD_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700818ART_TEST_TARGET_RUN_TEST_INTERPRETER_NO_PREBUILD_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700819ART_TEST_TARGET_RUN_TEST_INTERPRETER_PREBUILD_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700820ART_TEST_TARGET_RUN_TEST_OPTIMIZING_NO_PREBUILD_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700821ART_TEST_TARGET_RUN_TEST_OPTIMIZING_PREBUILD_RULES :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700822ART_TEST_TARGET_RUN_TEST_ALL$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
823ART_TEST_TARGET_RUN_TEST_DEFAULT$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
824ART_TEST_TARGET_RUN_TEST_INTERPRETER$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
825ART_TEST_TARGET_RUN_TEST_OPTIMIZING$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700826ART_TEST_TARGET_RUN_TEST_RELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
827ART_TEST_TARGET_RUN_TEST_DEFAULT_RELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
828ART_TEST_TARGET_RUN_TEST_INTERPRETER_RELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
829ART_TEST_TARGET_RUN_TEST_OPTIMIZING_RELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
830ART_TEST_TARGET_RUN_TEST_NORELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
831ART_TEST_TARGET_RUN_TEST_DEFAULT_NORELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
832ART_TEST_TARGET_RUN_TEST_INTERPRETER_NORELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
833ART_TEST_TARGET_RUN_TEST_OPTIMIZING_NORELOCATE$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700834ART_TEST_TARGET_RUN_TEST_NO_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700835ART_TEST_TARGET_RUN_TEST_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700836ART_TEST_TARGET_RUN_TEST_DEFAULT_NO_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700837ART_TEST_TARGET_RUN_TEST_DEFAULT_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700838ART_TEST_TARGET_RUN_TEST_INTERPRETER_NO_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700839ART_TEST_TARGET_RUN_TEST_INTERPRETER_PREBUILD$(ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700840ART_TEST_TARGET_RUN_TEST_ALL$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
841ART_TEST_TARGET_RUN_TEST_DEFAULT$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
842ART_TEST_TARGET_RUN_TEST_INTERPRETER$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
843ART_TEST_TARGET_RUN_TEST_OPTIMIZING$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700844ART_TEST_TARGET_RUN_TEST_RELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
845ART_TEST_TARGET_RUN_TEST_DEFAULT_RELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
846ART_TEST_TARGET_RUN_TEST_INTERPRETER_RELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
847ART_TEST_TARGET_RUN_TEST_OPTIMIZING_RELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
848ART_TEST_TARGET_RUN_TEST_NORELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
849ART_TEST_TARGET_RUN_TEST_DEFAULT_NORELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
850ART_TEST_TARGET_RUN_TEST_INTERPRETER_NORELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
851ART_TEST_TARGET_RUN_TEST_OPTIMIZING_NORELOCATE$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700852ART_TEST_TARGET_RUN_TEST_NO_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700853ART_TEST_TARGET_RUN_TEST_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700854ART_TEST_TARGET_RUN_TEST_DEFAULT_NO_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700855ART_TEST_TARGET_RUN_TEST_DEFAULT_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700856ART_TEST_TARGET_RUN_TEST_INTERPRETER_NO_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700857ART_TEST_TARGET_RUN_TEST_INTERPRETER_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700858ART_TEST_TARGET_RUN_TEST_OPTIMIZING_NO_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700859ART_TEST_TARGET_RUN_TEST_OPTIMIZING_PREBUILD$(2ND_ART_PHONY_TEST_TARGET_SUFFIX)_RULES :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700860ART_TEST_HOST_RUN_TEST_ALL_RULES :=
861ART_TEST_HOST_RUN_TEST_DEFAULT_RULES :=
862ART_TEST_HOST_RUN_TEST_INTERPRETER_RULES :=
863ART_TEST_HOST_RUN_TEST_OPTIMIZING_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700864ART_TEST_HOST_RUN_TEST_RELOCATE_RULES :=
865ART_TEST_HOST_RUN_TEST_DEFAULT_RELOCATE_RULES :=
866ART_TEST_HOST_RUN_TEST_INTERPRETER_RELOCATE_RULES :=
867ART_TEST_HOST_RUN_TEST_OPTIMIZING_RELOCATE_RULES :=
868ART_TEST_HOST_RUN_TEST_NORELOCATE_RULES :=
869ART_TEST_HOST_RUN_TEST_DEFAULT_NORELOCATE_RULES :=
870ART_TEST_HOST_RUN_TEST_INTERPRETER_NORELOCATE_RULES :=
871ART_TEST_HOST_RUN_TEST_OPTIMIZING_NORELOCATE_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700872ART_TEST_HOST_RUN_TEST_NO_PREBUILD_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700873ART_TEST_HOST_RUN_TEST_PREBUILD_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700874ART_TEST_HOST_RUN_TEST_DEFAULT_NO_PREBUILD_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700875ART_TEST_HOST_RUN_TEST_DEFAULT_PREBUILD_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700876ART_TEST_HOST_RUN_TEST_INTERPRETER_NO_PREBUILD_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700877ART_TEST_HOST_RUN_TEST_INTERPRETER_PREBUILD_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700878ART_TEST_HOST_RUN_TEST_OPTIMIZING_NO_PREBUILD_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700879ART_TEST_HOST_RUN_TEST_OPTIMIZING_PREBUILD_RULES :=
Ian Rogers716e4f82014-07-16 11:18:03 -0700880ART_TEST_HOST_RUN_TEST_ALL$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700881ART_TEST_HOST_RUN_TEST_DEFAULT$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
882ART_TEST_HOST_RUN_TEST_INTERPRETER$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
883ART_TEST_HOST_RUN_TEST_OPTIMIZING$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700884ART_TEST_HOST_RUN_TEST_RELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
885ART_TEST_HOST_RUN_TEST_DEFAULT_RELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
886ART_TEST_HOST_RUN_TEST_INTERPRETER_RELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
887ART_TEST_HOST_RUN_TEST_OPTIMIZING_RELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
888ART_TEST_HOST_RUN_TEST_NORELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
889ART_TEST_HOST_RUN_TEST_DEFAULT_NORELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
890ART_TEST_HOST_RUN_TEST_INTERPRETER_NORELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
891ART_TEST_HOST_RUN_TEST_OPTIMIZING_NORELOCATE$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700892ART_TEST_HOST_RUN_TEST_NO_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700893ART_TEST_HOST_RUN_TEST_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700894ART_TEST_HOST_RUN_TEST_DEFAULT_NO_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700895ART_TEST_HOST_RUN_TEST_DEFAULT_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700896ART_TEST_HOST_RUN_TEST_INTERPRETER_NO_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700897ART_TEST_HOST_RUN_TEST_INTERPRETER_PREBUILD$(ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Ian Rogers716e4f82014-07-16 11:18:03 -0700898ART_TEST_HOST_RUN_TEST_ALL$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Ian Rogersafd9acc2014-06-17 08:21:54 -0700899ART_TEST_HOST_RUN_TEST_DEFAULT$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
900ART_TEST_HOST_RUN_TEST_INTERPRETER$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
901ART_TEST_HOST_RUN_TEST_OPTIMIZING$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700902ART_TEST_HOST_RUN_TEST_RELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
903ART_TEST_HOST_RUN_TEST_DEFAULT_RELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
904ART_TEST_HOST_RUN_TEST_INTERPRETER_RELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
905ART_TEST_HOST_RUN_TEST_OPTIMIZING_RELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
906ART_TEST_HOST_RUN_TEST_NORELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
907ART_TEST_HOST_RUN_TEST_DEFAULT_NORELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
908ART_TEST_HOST_RUN_TEST_INTERPRETER_NORELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
909ART_TEST_HOST_RUN_TEST_OPTIMIZING_NORELOCATE$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700910ART_TEST_HOST_RUN_TEST_NO_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700911ART_TEST_HOST_RUN_TEST_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700912ART_TEST_HOST_RUN_TEST_DEFAULT_NO_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700913ART_TEST_HOST_RUN_TEST_DEFAULT_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700914ART_TEST_HOST_RUN_TEST_INTERPRETER_NO_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700915ART_TEST_HOST_RUN_TEST_INTERPRETER_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Light9d722532014-07-22 18:07:12 -0700916ART_TEST_HOST_RUN_TEST_OPTIMIZING_NO_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=
Alex Lighta59dd802014-07-02 16:28:08 -0700917ART_TEST_HOST_RUN_TEST_OPTIMIZING_PREBUILD$(2ND_ART_PHONY_TEST_HOST_SUFFIX)_RULES :=