310 lines
		
	
	
		
			9.8 KiB
		
	
	
	
		
			Python
		
	
	
	
			
		
		
	
	
			310 lines
		
	
	
		
			9.8 KiB
		
	
	
	
		
			Python
		
	
	
	
| 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' : []
 | |
|     },
 | |
| 
 | |
|     'art-test-javac' : {
 | |
|         'run-test' : ['--jvm']
 | |
|     },
 | |
| 
 | |
|     # ART run-test configurations
 | |
|     # (calls testrunner which builds and then runs the test targets)
 | |
| 
 | |
|     'art-ndebug' : {
 | |
|         'run-test' : ['--ndebug']
 | |
|     },
 | |
|     'art-interpreter' : {
 | |
|         'run-test' : ['--interpreter']
 | |
|     },
 | |
|     'art-interpreter-cxx' : {
 | |
|         'run-test' : ['--interpreter'],
 | |
|         'env' : {
 | |
|             'ART_USE_CXX_INTERPRETER' : 'true'
 | |
|         }
 | |
|     },
 | |
|     'art-interpreter-access-checks' : {
 | |
|         'run-test' : ['--interp-ac']
 | |
|     },
 | |
|     'art-jit' : {
 | |
|         'run-test' : ['--jit', '--debuggable', '--ndebuggable']
 | |
|     },
 | |
|     'art-jit-on-first-use' : {
 | |
|         'run-test' : ['--jit-on-first-use']
 | |
|     },
 | |
|     'art-pictest' : {
 | |
|         # Deprecated config: All AOT-compiled code is PIC now.
 | |
|         'run-test' : ['--optimizing']
 | |
|     },
 | |
|     'art-gcstress-gcverify': {
 | |
|         # Do not exercise '--interpreter', '--optimizing', nor '--jit' in this
 | |
|         # configuration, as they are covered by the
 | |
|         # 'art-interpreter-gcstress-gcverify',
 | |
|         # 'art-optimizing-gcstress-gcverify' and 'art-jit-gcstress-gcverify'
 | |
|         # configurations below.
 | |
|         'run-test': ['--interp-ac',
 | |
|                      '--speed-profile',
 | |
|                      '--gcstress',
 | |
|                      '--gcverify']
 | |
|     },
 | |
|     'art-interpreter-gcstress-gcverify' : {
 | |
|         'run-test' : ['--interpreter',
 | |
|                       '--gcstress',
 | |
|                       '--gcverify']
 | |
|     },
 | |
|     'art-optimizing-gcstress-gcverify' : {
 | |
|         'run-test' : ['--optimizing',
 | |
|                       '--gcstress',
 | |
|                       '--gcverify']
 | |
|     },
 | |
|     'art-jit-gcstress-gcverify' : {
 | |
|         'run-test' : ['--jit',
 | |
|                       '--gcstress',
 | |
|                       '--gcverify']
 | |
|     },
 | |
|     'art-jit-on-first-use-gcstress' : {
 | |
|         'run-test' : ['--jit-on-first-use',
 | |
|                       '--gcstress']
 | |
|     },
 | |
|     'art-read-barrier-heap-poisoning' : {
 | |
|         'run-test': ['--interpreter',
 | |
|                      '--optimizing'],
 | |
|         'env' : {
 | |
|             'ART_HEAP_POISONING' : 'true'
 | |
|         }
 | |
|     },
 | |
|     'art-read-barrier-table-lookup' : {
 | |
|         'run-test' : ['--interpreter',
 | |
|                       '--optimizing'],
 | |
|         'env' : {
 | |
|             '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'
 | |
|         }
 | |
|     },
 | |
|     # TODO: Consider removing this configuration when it is no longer used by
 | |
|     # any continuous testing target (b/62611253), as the SS collector overlaps
 | |
|     # with the CC collector, since both move objects.
 | |
|     'art-ss-gc' : {
 | |
|         'run-test' : ['--interpreter',
 | |
|                       '--optimizing',
 | |
|                       '--jit'],
 | |
|         'env' : {
 | |
|             'ART_DEFAULT_GC_TYPE' : 'SS',
 | |
|             'ART_USE_READ_BARRIER' : 'false'
 | |
|         }
 | |
|     },
 | |
|     # TODO: Consider removing this configuration when it is no longer used by
 | |
|     # any continuous testing target (b/62611253), as the SS collector overlaps
 | |
|     # with the CC collector, since both move objects.
 | |
|     '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-tracing' : {
 | |
|         'run-test' : ['--trace']
 | |
|     },
 | |
|     'art-interpreter-tracing' : {
 | |
|         'run-test' : ['--interpreter',
 | |
|                       '--trace']
 | |
|     },
 | |
|     'art-forcecopy' : {
 | |
|         'run-test' : ['--forcecopy']
 | |
|     },
 | |
|     'art-no-prebuild' : {
 | |
|         'run-test' : ['--no-prebuild']
 | |
|     },
 | |
|     'art-no-image' : {
 | |
|         'run-test' : ['--no-image']
 | |
|     },
 | |
|     'art-interpreter-no-image' : {
 | |
|         'run-test' : ['--interpreter',
 | |
|                       '--no-image']
 | |
|     },
 | |
|     'art-heap-poisoning' : {
 | |
|         'run-test' : ['--interpreter',
 | |
|                       '--optimizing',
 | |
|                       '--cdex-none'],
 | |
|         'env' : {
 | |
|             'ART_USE_READ_BARRIER' : 'false',
 | |
|             'ART_HEAP_POISONING' : 'true',
 | |
|             # Disable compact dex to get coverage of standard dex file usage.
 | |
|             'ART_DEFAULT_COMPACT_DEX_LEVEL' : 'none'
 | |
|         }
 | |
|     },
 | |
|     'art-preopt' : {
 | |
|         # This test configuration is intended to be representative of the case
 | |
|         # of preopted apps, which are precompiled against an
 | |
|         # unrelocated image, then used with a relocated image.
 | |
|         'run-test' : ['--prebuild',
 | |
|                       '--relocate',
 | |
|                       '--jit']
 | |
|     },
 | |
| 
 | |
|     # ART gtest configurations
 | |
|     # (calls make 'target' which builds and then runs the gtests).
 | |
| 
 | |
|     'art-gtest' : {
 | |
|         'make' :  'test-art-host-gtest'
 | |
|     },
 | |
|     'art-gtest-read-barrier': {
 | |
|         'make' :  'test-art-host-gtest',
 | |
|         'env' : {
 | |
|             'ART_HEAP_POISONING' : 'true'
 | |
|         }
 | |
|     },
 | |
|     'art-gtest-read-barrier-table-lookup': {
 | |
|         'make' :  'test-art-host-gtest',
 | |
|         'env': {
 | |
|             'ART_READ_BARRIER_TYPE' : 'TABLELOOKUP',
 | |
|             'ART_HEAP_POISONING' : 'true'
 | |
|         }
 | |
|     },
 | |
|     # TODO: Consider removing this configuration when it is no longer used by
 | |
|     # any continuous testing target (b/62611253), as the SS collector overlaps
 | |
|     # with the CC collector, since both move objects.
 | |
|     'art-gtest-ss-gc': {
 | |
|         'make' :  'test-art-host-gtest',
 | |
|         'env': {
 | |
|             'ART_DEFAULT_GC_TYPE' : 'SS',
 | |
|             'ART_USE_READ_BARRIER' : 'false',
 | |
|             # Disable compact dex to get coverage of standard dex file usage.
 | |
|             'ART_DEFAULT_COMPACT_DEX_LEVEL' : 'none'
 | |
|         }
 | |
|     },
 | |
|     # TODO: Consider removing this configuration when it is no longer used by
 | |
|     # any continuous testing target (b/62611253), as the SS collector overlaps
 | |
|     # with the CC collector, since both move objects.
 | |
|     '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-debug-gc' : {
 | |
|         'make' :  'test-art-host-gtest',
 | |
|         'env' : {
 | |
|             'ART_TEST_DEBUG_GC' : 'true',
 | |
|             'ART_USE_READ_BARRIER' : 'false'
 | |
|         }
 | |
|     },
 | |
|     'art-generational-cc': {
 | |
|         'make' : 'test-art-host-gtest',
 | |
|         'run-test' : [],
 | |
|         'env' : {
 | |
|             'ART_USE_GENERATIONAL_CC' : 'true'
 | |
|         }
 | |
|     },
 | |
| 
 | |
|     # 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',
 | |
|                       '--interp-ac',
 | |
|                       '--optimizing',
 | |
|                       '--jit',
 | |
|                       '--speed-profile'],
 | |
|         'env': {
 | |
|             'SANITIZE_HOST' : 'address',
 | |
|             'ASAN_OPTIONS' : 'detect_leaks=0'
 | |
|         }
 | |
|     },
 | |
|     'art-gtest-heap-poisoning': {
 | |
|         'make' : 'test-art-host-gtest',
 | |
|         'env' : {
 | |
|             'ART_HEAP_POISONING' : 'true',
 | |
|             'ART_USE_READ_BARRIER' : 'false',
 | |
|             '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'
 | |
|     },
 | |
|     'art-linux-bionic-x64': {
 | |
|         'build': '{ANDROID_BUILD_TOP}/art/tools/build_linux_bionic_tests.sh {MAKE_OPTIONS}',
 | |
|         'run-test': ['--run-test-option=--bionic',
 | |
|                      '--host',
 | |
|                      '--64',
 | |
|                      '--no-build-dependencies'],
 | |
|     },
 | |
|     'art-linux-bionic-x64-zipapex': {
 | |
|         'build': '{ANDROID_BUILD_TOP}/art/tools/build_linux_bionic_tests.sh {MAKE_OPTIONS} com.android.art.host',
 | |
|         'run-test': ['--run-test-option=--bionic',
 | |
|                      "--runtime-zipapex={SOONG_OUT_DIR}/host/linux_bionic-x86/apex/com.android.art.host.zipapex",
 | |
|                      '--host',
 | |
|                      '--64',
 | |
|                      '--no-build-dependencies'],
 | |
|     },
 | |
| }
 |