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-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': {
'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'
}
},
# 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'
},
}