03-test.yml revision 14b11b2b
1# Test stage 2# 3# This stage executes the test suite for pixman for all architectures in 4# different configurations. Build and test is split, as some architectures can 5# have different QEMU configuration or have multiple supported pixman backends, 6# which are executed as job matrix. 7# 8# Mind that `PIXMAN_ENABLE` variable in matrix runs does nothing, but it looks 9# better in CI to indicate what is actually being tested. 10# 11# Some emulated targets are really slow or cannot be run in multithreaded mode 12# (mipsel, arm-v5). Thus coverage reporting is disabled for them. 13 14variables: 15 # Used in summary stage as well. 16 COVERAGE_BASE_DIR: coverage 17 COVERAGE_OUT: ${COVERAGE_BASE_DIR}/${CI_JOB_ID} 18 TEST_NAME: "" # Allow to specify a set of tests to run with run variables. 19 20include: 21 - local: .gitlab-ci.d/templates/test.yml 22 inputs: 23 target: linux-386 24 toolchain: [gnu] # TODO LLVM issue: https://gitlab.freedesktop.org/pixman/pixman/-/issues/106 25 pixman_disable: 26 - "sse2 ssse3" # Testing "mmx" 27 - "mmx ssse3" # Testing "sse2" 28 - "mmx sse2" # Testing "ssse3" 29 - local: .gitlab-ci.d/templates/test.yml 30 inputs: 31 target: linux-amd64 32 pixman_disable: 33 - "" 34 - "fast" 35 - "wholeops" 36 - local: .gitlab-ci.d/templates/test.yml 37 inputs: 38 target: linux-arm-v5 39 toolchain: [gnu] # TODO: https://gitlab.freedesktop.org/pixman/pixman/-/issues/107 40 pixman_disable: ["arm-neon"] # Test only arm-simd. 41 timeout: 3h 42 test_timeout_multiplier: 40 43 runner_tags: [aarch64] 44 - local: .gitlab-ci.d/templates/test.yml 45 inputs: 46 target: linux-arm-v7 47 runner_tags: [aarch64] 48 - local: .gitlab-ci.d/templates/test.yml 49 inputs: 50 target: linux-arm64-v8 51 runner_tags: [aarch64] 52 - local: .gitlab-ci.d/templates/test.yml 53 inputs: 54 target: linux-mips 55 toolchain: [gnu] # TODO: Add llvm once the build is fixed. 56 qemu_cpu: [74Kf] 57 job_name_prefix: "." 58 job_name_suffix: ":failing" 59 allow_failure: true # Some tests seem to fail. 60 retry: 0 61 - local: .gitlab-ci.d/templates/test.yml 62 inputs: 63 target: linux-mips64le 64 toolchain: [gnu] # TODO: https://gitlab.freedesktop.org/pixman/pixman/-/issues/108 65 qemu_cpu: [Loongson-3A4000] 66 runner_tags: [kvm] 67 - local: .gitlab-ci.d/templates/test.yml 68 inputs: 69 target: linux-mipsel 70 toolchain: [gnu] # TODO: Add llvm once the build is fixed. 71 qemu_cpu: [74Kf] 72 timeout: 2h 73 runner_tags: [kvm] 74 - local: .gitlab-ci.d/templates/test.yml 75 inputs: 76 target: linux-ppc 77 qemu_cpu: [g4] 78 timeout: 2h 79 test_timeout_multiplier: 30 80 - local: .gitlab-ci.d/templates/test.yml 81 inputs: 82 target: linux-ppc64 83 qemu_cpu: [power9] 84 timeout: 2h 85 test_timeout_multiplier: 30 86 - local: .gitlab-ci.d/templates/test.yml 87 inputs: 88 target: linux-ppc64le 89 qemu_cpu: [power10] 90 runner_tags: [kvm] 91 - local: .gitlab-ci.d/templates/test.yml 92 inputs: 93 target: linux-riscv64 94 qemu_cpu: 95 # Test on target without RVV (verify no autovectorization). 96 - rv64,v=false 97 # Test correctness for different VLENs. 98 - rv64,v=true,vext_spec=v1.0,vlen=128,elen=64 99 - rv64,v=true,vext_spec=v1.0,vlen=256,elen=64 100 - rv64,v=true,vext_spec=v1.0,vlen=512,elen=64 101 - rv64,v=true,vext_spec=v1.0,vlen=1024,elen=64 102 runner_tags: [kvm] 103 - local: .gitlab-ci.d/templates/test.yml 104 inputs: 105 target: windows-686 106 pixman_disable: 107 # The same as for linux-386. 108 - "sse2 ssse3" 109 - "mmx ssse3" 110 - "mmx sse2" 111 retry: 2 112 - local: .gitlab-ci.d/templates/test.yml 113 inputs: 114 target: windows-amd64 115 pixman_disable: 116 # The same as for linux-amd64. 117 - "" 118 - "fast" 119 - "wholeops" 120 - local: .gitlab-ci.d/templates/test.yml 121 inputs: 122 target: windows-arm64-v8 123 toolchain: [llvm] 124 runner_tags: [aarch64] 125 retry: 2 126