[infra] Add configuration for testing SIMARM64 on ARM64.
Bug: https://github.com/dart-lang/sdk/issues/60204 Change-Id: Id49d144bedb7eb2047ee1cc36dd737bff62e808e Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/411840 Reviewed-by: Daco Harkes <dacoharkes@google.com> Reviewed-by: Alexander Markov <alexmarkov@google.com> Commit-Queue: Ryan Macnak <rmacnak@google.com>
This commit is contained in:
committed by
Commit Queue
parent
e1d8b2545e
commit
690b380a6a
@@ -722,6 +722,8 @@ class Architecture extends NamedEnum {
|
||||
// ignore: constant_identifier_names
|
||||
static const simarm_x64 = Architecture._('simarm_x64');
|
||||
static const simarm64 = Architecture._('simarm64');
|
||||
// ignore: constant_identifier_names
|
||||
static const simarm64_arm64 = Architecture._('simarm64_arm64');
|
||||
static const simarm64c = Architecture._('simarm64c');
|
||||
static const riscv32 = Architecture._('riscv32');
|
||||
static const riscv64 = Architecture._('riscv64');
|
||||
@@ -743,6 +745,7 @@ class Architecture extends NamedEnum {
|
||||
simarm,
|
||||
simarm_x64,
|
||||
simarm64,
|
||||
simarm64_arm64,
|
||||
simarm64c,
|
||||
riscv32,
|
||||
riscv64,
|
||||
|
||||
@@ -308,6 +308,8 @@ class QemuConfig {
|
||||
QemuConfig('qemu-arm', ['-L', '/usr/arm-linux-gnueabihf/']),
|
||||
Architecture.arm64:
|
||||
QemuConfig('qemu-aarch64', ['-L', '/usr/aarch64-linux-gnu/']),
|
||||
Architecture.simarm64_arm64:
|
||||
QemuConfig('qemu-aarch64', ['-L', '/usr/aarch64-linux-gnu/']),
|
||||
Architecture.arm64c:
|
||||
QemuConfig('qemu-aarch64', ['-L', '/usr/aarch64-linux-gnu/']),
|
||||
Architecture.riscv32:
|
||||
|
||||
@@ -147,6 +147,9 @@ config("dart_arch_config") {
|
||||
print("Invalid dart_target_arch: $dart_target_arch")
|
||||
assert(false)
|
||||
}
|
||||
if (dart_force_simulator) {
|
||||
defines += [ "USING_SIMULATOR" ]
|
||||
}
|
||||
}
|
||||
|
||||
config("dart_config") {
|
||||
|
||||
@@ -31,6 +31,9 @@ declare_args() {
|
||||
# Available options are: arm, arm64, x64, ia32, riscv32, riscv64.
|
||||
dart_target_arch = target_cpu
|
||||
|
||||
# Force use of the simulator even when the Dart target arch matches the current cpu.
|
||||
dart_force_simulator = false
|
||||
|
||||
# The optimization level to use for debug builds. Defaults to 0 for builds with
|
||||
# code coverage enabled.
|
||||
dart_debug_optimization_level = "2"
|
||||
|
||||
@@ -75,7 +75,7 @@ regress_47594_test: Skip # DynamicLibrary.process() is not available on Windows.
|
||||
function_callbacks_leaf_test: SkipByDesign # Needs access to Dart executable
|
||||
native_assets/*: SkipByDesign # Only intended to run on host oses with AOT binaries available, not available on QEMU.
|
||||
|
||||
[ $simulator ]
|
||||
[ $arch != simarm64_arm64 && $simulator ]
|
||||
*: Skip # FFI not yet supported on the arm simulator.
|
||||
|
||||
[ $compiler != dart2analyzer && $compiler != fasta && $runtime != dart_precompiled && $runtime != vm ]
|
||||
|
||||
@@ -333,7 +333,7 @@
|
||||
"builder-tag": "ffi"
|
||||
}
|
||||
},
|
||||
"vm-(linux|mac|win|android|fuchsia)-(debug|product|release)-(ia32|x64|x64c|arm|arm64|arm64c|simarm|simarm64|simriscv32|simriscv64)": {
|
||||
"vm-(linux|mac|win|android|fuchsia)-(debug|product|release)-(ia32|x64|x64c|arm|arm64|arm64c|simarm|simarm64|simarm64_arm64|simriscv32|simriscv64)": {
|
||||
"options": {}
|
||||
},
|
||||
"vm-checked-(linux|mac|win|fuchsia)-(debug|product|release)-(ia32|x64|x64c|arm64|arm64c|simarm|simarm64|simriscv32|simriscv64)": {
|
||||
@@ -847,6 +847,31 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"builders": [
|
||||
"vm-ffi-mac-debug-simarm64_arm64",
|
||||
"vm-ffi-mac-release-simarm64_arm64"
|
||||
],
|
||||
"meta": {
|
||||
"description": "This configuration is used for running FFI tests"
|
||||
},
|
||||
"steps": [
|
||||
{
|
||||
"name": "build dart",
|
||||
"script": "tools/build.py",
|
||||
"arguments": [
|
||||
"runtime"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "vm ffi tests",
|
||||
"arguments": [
|
||||
"-nvm-${system}-${mode}-${arch}",
|
||||
"ffi"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"builders": [
|
||||
"vm-ffi-qemu-linux-release-arm"
|
||||
|
||||
@@ -205,6 +205,9 @@ def ToGnArgs(args, mode, arch, target_os, sanitizer, verify_sdk_hash,
|
||||
gn_args['host_cpu'] = HostCpuForArch(arch)
|
||||
gn_args['target_cpu'] = TargetCpuForArch(arch)
|
||||
gn_args['dart_target_arch'] = DartTargetCpuForArch(arch)
|
||||
if gn_args['target_cpu'] == gn_args['dart_target_arch'] and arch.startswith(
|
||||
'sim'):
|
||||
gn_args['dart_force_simulator'] = True
|
||||
gn_args['dart_use_compressed_pointers'] = IsCompressedPointerArch(arch)
|
||||
|
||||
# Configure Crashpad library if it is used.
|
||||
|
||||
Reference in New Issue
Block a user