| target_config = { |
| |
| # Configuration syntax: |
| # |
| # Required keys: (Use one or more of these) |
| # * golem - specify a golem machine-type to build, e.g. android-armv8 |
| # (uses art/tools/golem/build-target.sh) |
| # * make - specify a make target to build, e.g. build-art-host |
| # * run-test - runs the tests in art/test/ directory with testrunner.py, |
| # specify a list of arguments to pass to testrunner.py |
| # |
| # Optional keys: (Use any of these) |
| # * env - Add additional environment variable to the current environment. |
| # |
| # *** IMPORTANT ***: |
| # This configuration is used by the android build server. Targets must not be renamed |
| # or removed. |
| # |
| |
| ########################################## |
| |
| # General ART configurations. |
| # Calls make and testrunner both. |
| |
| 'art-test' : { |
| 'make' : 'test-art-host-gtest', |
| 'run-test' : [], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true' |
| } |
| }, |
| |
| 'art-test-javac' : { |
| 'make' : 'test-art-host-gtest', |
| 'run-test' : [], |
| 'env' : { |
| 'ANDROID_COMPILE_WITH_JACK' : 'false', |
| 'ART_USE_READ_BARRIER' : 'true' |
| } |
| }, |
| |
| # ART run-test configurations |
| # (calls testrunner which builds and then runs the test targets) |
| |
| 'art-ndebug' : { |
| 'run-test' : ['--ndebug'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true' |
| } |
| }, |
| 'art-interpreter' : { |
| 'run-test' : ['--interpreter'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true' |
| } |
| }, |
| 'art-interpreter-access-checks' : { |
| 'run-test' : ['--interp-ac'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true' |
| } |
| }, |
| 'art-jit' : { |
| 'run-test' : ['--jit'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true' |
| } |
| }, |
| 'art-gcstress-gcverify': { |
| 'run-test': ['--gcstress', |
| '--gcverify'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'false', |
| 'ART_DEFAULT_GC_TYPE' : 'SS' |
| } |
| }, |
| 'art-interpreter-gcstress' : { |
| 'run-test' : ['--interpreter', |
| '--gcstress'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'false', |
| 'ART_DEFAULT_GC_TYPE' : 'SS' |
| } |
| }, |
| 'art-optimizing-gcstress' : { |
| 'run-test' : ['--gcstress', |
| '--optimizing'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'false', |
| 'ART_DEFAULT_GC_TYPE' : 'SS' |
| } |
| }, |
| 'art-jit-gcstress' : { |
| 'run-test' : ['--jit', |
| '--gcstress'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'false', |
| 'ART_DEFAULT_GC_TYPE' : 'SS' |
| } |
| }, |
| 'art-read-barrier' : { |
| 'run-test': ['--interpreter', |
| '--optimizing'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true', |
| 'ART_HEAP_POISONING' : 'true' |
| } |
| }, |
| 'art-read-barrier-gcstress' : { |
| 'run-test' : ['--interpreter', |
| '--optimizing', |
| '--gcstress'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true', |
| 'ART_HEAP_POISONING' : 'true' |
| } |
| }, |
| 'art-read-barrier-table-lookup' : { |
| 'run-test' : ['--interpreter', |
| '--optimizing'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true', |
| 'ART_READ_BARRIER_TYPE' : 'TABLELOOKUP', |
| 'ART_HEAP_POISONING' : 'true' |
| } |
| }, |
| 'art-debug-gc' : { |
| 'run-test' : ['--interpreter', |
| '--optimizing'], |
| 'env' : { |
| 'ART_TEST_DEBUG_GC' : 'true', |
| 'ART_USE_READ_BARRIER' : 'false' |
| } |
| }, |
| 'art-ss-gc' : { |
| 'run-test' : ['--interpreter', |
| '--optimizing', |
| '--jit'], |
| 'env' : { |
| 'ART_DEFAULT_GC_TYPE' : 'SS', |
| 'ART_USE_READ_BARRIER' : 'false' |
| } |
| }, |
| 'art-gss-gc' : { |
| 'run-test' : ['--interpreter', |
| '--optimizing', |
| '--jit'], |
| 'env' : { |
| 'ART_DEFAULT_GC_TYPE' : 'GSS', |
| 'ART_USE_READ_BARRIER' : 'false' |
| } |
| }, |
| 'art-ss-gc-tlab' : { |
| 'run-test' : ['--interpreter', |
| '--optimizing', |
| '--jit'], |
| 'env' : { |
| 'ART_DEFAULT_GC_TYPE' : 'SS', |
| 'ART_USE_TLAB' : 'true', |
| 'ART_USE_READ_BARRIER' : 'false' |
| } |
| }, |
| 'art-gss-gc-tlab' : { |
| 'run-test' : ['--interpreter', |
| '--optimizing', |
| '--jit'], |
| 'env' : { |
| 'ART_DEFAULT_GC_TYPE' : 'GSS', |
| 'ART_USE_TLAB' : 'true', |
| 'ART_USE_READ_BARRIER' : 'false' |
| } |
| }, |
| 'art-tracing' : { |
| 'run-test' : ['--trace'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true' |
| } |
| }, |
| 'art-interpreter-tracing' : { |
| 'run-test' : ['--interpreter', |
| '--trace'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true', |
| } |
| }, |
| 'art-forcecopy' : { |
| 'run-test' : ['--forcecopy'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true', |
| } |
| }, |
| 'art-no-prebuild' : { |
| 'run-test' : ['--no-prebuild'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true', |
| } |
| }, |
| 'art-no-image' : { |
| 'run-test' : ['--no-image'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true', |
| } |
| }, |
| 'art-interpreter-no-image' : { |
| 'run-test' : ['--interpreter', |
| '--no-image'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true', |
| } |
| }, |
| 'art-relocate-no-patchoat' : { |
| 'run-test' : ['--relocate-npatchoat'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true', |
| } |
| }, |
| 'art-no-dex2oat' : { |
| 'run-test' : ['--no-dex2oat'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true', |
| } |
| }, |
| 'art-heap-poisoning' : { |
| 'run-test' : ['--interpreter', |
| '--optimizing'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'false', |
| 'ART_HEAP_POISONING' : 'true' |
| } |
| }, |
| 'art-preopt' : { |
| # This test configuration is intended to be representative of the case |
| # of preopted apps, which are precompiled compiled pic against an |
| # unrelocated image, then used with a relocated image. |
| 'run-test' : ['--pictest', |
| '--prebuild', |
| '--relocate', |
| '--jit'], |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true' |
| } |
| }, |
| |
| # ART gtest configurations |
| # (calls make 'target' which builds and then runs the gtests). |
| |
| 'art-gtest' : { |
| 'make' : 'test-art-host-gtest', |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true' |
| } |
| }, |
| 'art-gtest-read-barrier': { |
| 'make' : 'test-art-host-gtest', |
| 'env' : { |
| 'ART_USE_READ_BARRIER' : 'true', |
| 'ART_HEAP_POISONING' : 'true' |
| } |
| }, |
| 'art-gtest-read-barrier-table-lookup': { |
| 'make' : 'test-art-host-gtest', |
| 'env': { |
| 'ART_USE_READ_BARRIER' : 'true', |
| 'ART_READ_BARRIER_TYPE' : 'TABLELOOKUP', |
| 'ART_HEAP_POISONING' : 'true' |
| } |
| }, |
| 'art-gtest-ss-gc': { |
| 'make' : 'test-art-host-gtest', |
| 'env': { |
| 'ART_DEFAULT_GC_TYPE' : 'SS', |
| 'ART_USE_READ_BARRIER' : 'false' |
| } |
| }, |
| 'art-gtest-gss-gc': { |
| 'make' : 'test-art-host-gtest', |
| 'env' : { |
| 'ART_DEFAULT_GC_TYPE' : 'GSS', |
| 'ART_USE_READ_BARRIER' : 'false' |
| } |
| }, |
| 'art-gtest-ss-gc-tlab': { |
| 'make' : 'test-art-host-gtest', |
| 'env': { |
| 'ART_DEFAULT_GC_TYPE' : 'SS', |
| 'ART_USE_TLAB' : 'true', |
| 'ART_USE_READ_BARRIER' : 'false', |
| } |
| }, |
| 'art-gtest-gss-gc-tlab': { |
| 'make' : 'test-art-host-gtest', |
| 'env': { |
| 'ART_DEFAULT_GC_TYPE' : 'GSS', |
| 'ART_USE_TLAB' : 'true', |
| 'ART_USE_READ_BARRIER' : 'false' |
| } |
| }, |
| 'art-gtest-debug-gc' : { |
| 'make' : 'test-art-host-gtest', |
| 'env' : { |
| 'ART_TEST_DEBUG_GC' : 'true', |
| 'ART_USE_READ_BARRIER' : 'false' |
| } |
| }, |
| 'art-gtest-valgrind32': { |
| # Disabled: x86 valgrind does not understand SSE4.x |
| # 'make' : 'valgrind-test-art-host32', |
| 'env': { |
| 'ART_USE_READ_BARRIER' : 'false' |
| } |
| }, |
| 'art-gtest-valgrind64': { |
| 'make' : 'valgrind-test-art-host64', |
| 'env': { |
| 'ART_USE_READ_BARRIER' : 'false' |
| } |
| }, |
| 'art-gtest-heap-poisoning': { |
| 'make' : 'valgrind-test-art-host64', |
| 'env' : { |
| 'ART_HEAP_POISONING' : 'true', |
| 'ART_USE_READ_BARRIER' : 'false' |
| } |
| }, |
| |
| # ASAN (host) configurations. |
| |
| # These configurations need detect_leaks=0 to work in non-setup environments like build bots, |
| # as our build tools leak. b/37751350 |
| |
| 'art-gtest-asan': { |
| 'make' : 'test-art-host-gtest', |
| 'env': { |
| 'SANITIZE_HOST' : 'address', |
| 'ASAN_OPTIONS' : 'detect_leaks=0' |
| } |
| }, |
| 'art-asan': { |
| 'run-test' : ['--interpreter', |
| '--optimizing', |
| '--jit'], |
| 'env': { |
| 'SANITIZE_HOST' : 'address', |
| 'ASAN_OPTIONS' : 'detect_leaks=0' |
| } |
| }, |
| |
| # ART Golem build targets used by go/lem (continuous ART benchmarking), |
| # (art-opt-cc is used by default since it mimics the default preopt config), |
| # |
| # calls golem/build-target.sh which builds a golem tarball of the target name, |
| # e.g. 'golem: android-armv7' produces an 'android-armv7.tar.gz' upon success. |
| |
| 'art-golem-android-armv7': { |
| 'golem' : 'android-armv7' |
| }, |
| 'art-golem-android-armv8': { |
| 'golem' : 'android-armv8' |
| }, |
| 'art-golem-linux-armv7': { |
| 'golem' : 'linux-armv7' |
| }, |
| 'art-golem-linux-armv8': { |
| 'golem' : 'linux-armv8' |
| }, |
| 'art-golem-linux-ia32': { |
| 'golem' : 'linux-ia32' |
| }, |
| 'art-golem-linux-x64': { |
| 'golem' : 'linux-x64' |
| }, |
| } |