114b11b2bSmrg# Test stage 214b11b2bSmrg# 314b11b2bSmrg# This stage executes the test suite for pixman for all architectures in 414b11b2bSmrg# different configurations. Build and test is split, as some architectures can 514b11b2bSmrg# have different QEMU configuration or have multiple supported pixman backends, 614b11b2bSmrg# which are executed as job matrix. 714b11b2bSmrg# 814b11b2bSmrg# Mind that `PIXMAN_ENABLE` variable in matrix runs does nothing, but it looks 914b11b2bSmrg# better in CI to indicate what is actually being tested. 1014b11b2bSmrg# 1114b11b2bSmrg# Some emulated targets are really slow or cannot be run in multithreaded mode 1214b11b2bSmrg# (mipsel, arm-v5). Thus coverage reporting is disabled for them. 1314b11b2bSmrg 1414b11b2bSmrgvariables: 1514b11b2bSmrg # Used in summary stage as well. 1614b11b2bSmrg COVERAGE_BASE_DIR: coverage 1714b11b2bSmrg COVERAGE_OUT: ${COVERAGE_BASE_DIR}/${CI_JOB_ID} 1814b11b2bSmrg TEST_NAME: "" # Allow to specify a set of tests to run with run variables. 1914b11b2bSmrg 2014b11b2bSmrginclude: 2114b11b2bSmrg - local: .gitlab-ci.d/templates/test.yml 2214b11b2bSmrg inputs: 2314b11b2bSmrg target: linux-386 2414b11b2bSmrg toolchain: [gnu] # TODO LLVM issue: https://gitlab.freedesktop.org/pixman/pixman/-/issues/106 2514b11b2bSmrg pixman_disable: 2614b11b2bSmrg - "sse2 ssse3" # Testing "mmx" 2714b11b2bSmrg - "mmx ssse3" # Testing "sse2" 2814b11b2bSmrg - "mmx sse2" # Testing "ssse3" 2914b11b2bSmrg - local: .gitlab-ci.d/templates/test.yml 3014b11b2bSmrg inputs: 3114b11b2bSmrg target: linux-amd64 3214b11b2bSmrg pixman_disable: 3314b11b2bSmrg - "" 3414b11b2bSmrg - "fast" 3514b11b2bSmrg - "wholeops" 3614b11b2bSmrg - local: .gitlab-ci.d/templates/test.yml 3714b11b2bSmrg inputs: 3814b11b2bSmrg target: linux-arm-v5 3914b11b2bSmrg toolchain: [gnu] # TODO: https://gitlab.freedesktop.org/pixman/pixman/-/issues/107 4014b11b2bSmrg pixman_disable: ["arm-neon"] # Test only arm-simd. 4114b11b2bSmrg timeout: 3h 4214b11b2bSmrg test_timeout_multiplier: 40 4314b11b2bSmrg runner_tags: [aarch64] 4414b11b2bSmrg - local: .gitlab-ci.d/templates/test.yml 4514b11b2bSmrg inputs: 4614b11b2bSmrg target: linux-arm-v7 4714b11b2bSmrg runner_tags: [aarch64] 4814b11b2bSmrg - local: .gitlab-ci.d/templates/test.yml 4914b11b2bSmrg inputs: 5014b11b2bSmrg target: linux-arm64-v8 5114b11b2bSmrg runner_tags: [aarch64] 5214b11b2bSmrg - local: .gitlab-ci.d/templates/test.yml 5314b11b2bSmrg inputs: 5414b11b2bSmrg target: linux-mips 5514b11b2bSmrg toolchain: [gnu] # TODO: Add llvm once the build is fixed. 5614b11b2bSmrg qemu_cpu: [74Kf] 5714b11b2bSmrg job_name_prefix: "." 5814b11b2bSmrg job_name_suffix: ":failing" 5914b11b2bSmrg allow_failure: true # Some tests seem to fail. 6014b11b2bSmrg retry: 0 6114b11b2bSmrg - local: .gitlab-ci.d/templates/test.yml 6214b11b2bSmrg inputs: 6314b11b2bSmrg target: linux-mips64le 6414b11b2bSmrg toolchain: [gnu] # TODO: https://gitlab.freedesktop.org/pixman/pixman/-/issues/108 6514b11b2bSmrg qemu_cpu: [Loongson-3A4000] 6614b11b2bSmrg runner_tags: [kvm] 6714b11b2bSmrg - local: .gitlab-ci.d/templates/test.yml 6814b11b2bSmrg inputs: 6914b11b2bSmrg target: linux-mipsel 7014b11b2bSmrg toolchain: [gnu] # TODO: Add llvm once the build is fixed. 7114b11b2bSmrg qemu_cpu: [74Kf] 7214b11b2bSmrg timeout: 2h 7314b11b2bSmrg runner_tags: [kvm] 7414b11b2bSmrg - local: .gitlab-ci.d/templates/test.yml 7514b11b2bSmrg inputs: 7614b11b2bSmrg target: linux-ppc 7714b11b2bSmrg qemu_cpu: [g4] 7814b11b2bSmrg timeout: 2h 7914b11b2bSmrg test_timeout_multiplier: 30 8014b11b2bSmrg - local: .gitlab-ci.d/templates/test.yml 8114b11b2bSmrg inputs: 8214b11b2bSmrg target: linux-ppc64 8314b11b2bSmrg qemu_cpu: [power9] 8414b11b2bSmrg timeout: 2h 8514b11b2bSmrg test_timeout_multiplier: 30 8614b11b2bSmrg - local: .gitlab-ci.d/templates/test.yml 8714b11b2bSmrg inputs: 8814b11b2bSmrg target: linux-ppc64le 8914b11b2bSmrg qemu_cpu: [power10] 9014b11b2bSmrg runner_tags: [kvm] 9114b11b2bSmrg - local: .gitlab-ci.d/templates/test.yml 9214b11b2bSmrg inputs: 9314b11b2bSmrg target: linux-riscv64 9414b11b2bSmrg qemu_cpu: 9514b11b2bSmrg # Test on target without RVV (verify no autovectorization). 9614b11b2bSmrg - rv64,v=false 9714b11b2bSmrg # Test correctness for different VLENs. 9814b11b2bSmrg - rv64,v=true,vext_spec=v1.0,vlen=128,elen=64 9914b11b2bSmrg - rv64,v=true,vext_spec=v1.0,vlen=256,elen=64 10014b11b2bSmrg - rv64,v=true,vext_spec=v1.0,vlen=512,elen=64 10114b11b2bSmrg - rv64,v=true,vext_spec=v1.0,vlen=1024,elen=64 10214b11b2bSmrg runner_tags: [kvm] 10314b11b2bSmrg - local: .gitlab-ci.d/templates/test.yml 10414b11b2bSmrg inputs: 10514b11b2bSmrg target: windows-686 10614b11b2bSmrg pixman_disable: 10714b11b2bSmrg # The same as for linux-386. 10814b11b2bSmrg - "sse2 ssse3" 10914b11b2bSmrg - "mmx ssse3" 11014b11b2bSmrg - "mmx sse2" 11114b11b2bSmrg retry: 2 11214b11b2bSmrg - local: .gitlab-ci.d/templates/test.yml 11314b11b2bSmrg inputs: 11414b11b2bSmrg target: windows-amd64 11514b11b2bSmrg pixman_disable: 11614b11b2bSmrg # The same as for linux-amd64. 11714b11b2bSmrg - "" 11814b11b2bSmrg - "fast" 11914b11b2bSmrg - "wholeops" 12014b11b2bSmrg - local: .gitlab-ci.d/templates/test.yml 12114b11b2bSmrg inputs: 12214b11b2bSmrg target: windows-arm64-v8 12314b11b2bSmrg toolchain: [llvm] 12414b11b2bSmrg runner_tags: [aarch64] 12514b11b2bSmrg retry: 2 126