@@ -139,35 +139,65 @@ jobs:
139139 - run : cargo test --target=x86_64-win7-windows-msvc -Z build-std --features=std
140140 - run : cargo test --target=i686-win7-windows-msvc -Z build-std --features=std
141141
142- sanitizer-linux-aarch64 :
143- name : Sanitizer Linux AArch64
144- # MemorySanitizer won't run in QEMU so we can't run it in cross:
145- # https://github.com/llvm/llvm-project/issues/65144
146- runs-on : ubuntu-24.04-arm
147- steps :
148- - uses : actions/checkout@v4
149- - uses : dtolnay/rust-toolchain@master
150- with :
151- toolchain : nightly-2025-06-01
152- components : rust-src
153- - env :
154- RUSTFLAGS : -Dwarnings -Zsanitizer=memory
155- RUSTDOCFLAGS : -Dwarnings -Zsanitizer=memory
156- run : cargo test -Zbuild-std --target=aarch64-unknown-linux-gnu
142+ sanitizer-linux :
143+ name : Sanitizer Linux
144+ runs-on : ${{ matrix.runner }}
145+ strategy :
146+ matrix :
147+ arch : [
148+ " aarch64" ,
149+ " x86_64" ,
150+ ]
151+ include :
152+ # MemorySanitizer won't run in QEMU so we can't run it in cross:
153+ # https://github.com/llvm/llvm-project/issues/65144
154+ - arch : aarch64
155+ runner : ubuntu-24.04-arm
157156
158- sanitizer-linux-x86_64 :
159- name : Sanitizer Linux x86_64
160- runs-on : ubuntu-24.04
157+ - arch : x86_64
158+ runner : ubuntu-24.04
161159 steps :
162160 - uses : actions/checkout@v4
163161 - uses : dtolnay/rust-toolchain@master
164162 with :
165163 toolchain : nightly-2025-06-01
166164 components : rust-src
167- - env :
165+ - name : default configuration
166+ env :
168167 RUSTFLAGS : -Dwarnings -Zsanitizer=memory
169168 RUSTDOCFLAGS : -Dwarnings -Zsanitizer=memory
170- run : cargo test -Zbuild-std --target=x86_64-unknown-linux-gnu
169+ run : cargo test -Zbuild-std --target=${{ matrix.arch }}-unknown-linux-gnu
170+ - name : --cfg getrandom_backend="linux_getrandom"
171+ env :
172+ RUSTFLAGS : --cfg getrandom_backend="linux_getrandom" -Dwarnings -Zsanitizer=memory
173+ RUSTDOCFLAGS : --cfg getrandom_backend="linux_getrandom" -Dwarnings -Zsanitizer=memory
174+ run : cargo test -Zbuild-std --target=${{ matrix.arch }}-unknown-linux-gnu
175+ - name : --cfg getrandom_backend="linux_raw"
176+ env :
177+ RUSTFLAGS : --cfg getrandom_backend="linux_raw" -Dwarnings -Zsanitizer=memory
178+ RUSTDOCFLAGS : --cfg getrandom_backend="linux_raw" -Dwarnings -Zsanitizer=memory
179+ run : cargo test -Zbuild-std --target=${{ matrix.arch }}-unknown-linux-gnu
180+ - name : --cfg getrandom_backend="linux_fallback"
181+ env :
182+ RUSTFLAGS : --cfg getrandom_backend="linux_fallback" -Dwarnings -Zsanitizer=memory
183+ RUSTDOCFLAGS : --cfg getrandom_backend="linux_fallback" -Dwarnings -Zsanitizer=memory
184+ run : cargo test -Zbuild-std --target=${{ matrix.arch }}-unknown-linux-gnu
185+ - if : ${{ matrix.arch == 'x86_64' }}
186+ name : --cfg getrandom_backend="rdrand"
187+ env :
188+ RUSTFLAGS : --cfg getrandom_backend="rdrand" -Dwarnings -Zsanitizer=memory
189+ RUSTDOCFLAGS : --cfg getrandom_backend="rdrand" -Dwarnings -Zsanitizer=memory
190+ run : cargo test -Zbuild-std --target=${{ matrix.arch }}-unknown-linux-gnu
191+ - name : --cfg getrandom_test_linux_fallback
192+ env :
193+ RUSTFLAGS : --cfg getrandom_test_linux_fallback -Dwarnings -Zsanitizer=memory
194+ RUSTDOCFLAGS : --cfg getrandom_test_linux_fallback -Dwarnings -Zsanitizer=memory
195+ run : cargo test -Zbuild-std --target=${{ matrix.arch }}-unknown-linux-gnu
196+ - name : --cfg getrandom_test_linux_without_fallback
197+ env :
198+ RUSTFLAGS : --cfg getrandom_test_linux_without_fallback -Dwarnings -Zsanitizer=memory
199+ RUSTDOCFLAGS : --cfg getrandom_test_linux_without_fallback -Dwarnings -Zsanitizer=memory
200+ run : cargo test -Zbuild-std --target=${{ matrix.arch }}-unknown-linux-gnu
171201
172202 cross :
173203 name : Cross
0 commit comments