From 8e4e10ee0b1d0a794e9389435450e1e43425508b Mon Sep 17 00:00:00 2001 From: Abe Kohandel Date: Tue, 9 Sep 2025 05:36:06 +0000 Subject: [PATCH] Run aarch32 test in CI Add building and testing of the aarch32 implementation to CI Signed-off-by: Abe Kohandel --- .github/workflows/build.yml | 9 ++++++++- tests/test_runner_wrapper.sh | 3 +-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b643d03..2f9d626 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -20,6 +20,7 @@ jobs: strategy: matrix: target: + - "thumbv7em-none-eabi" - "aarch64-unknown-none-softfloat" - "riscv64gc-unknown-none-elf" - "x86_64-unknown-linux-gnu" @@ -52,6 +53,7 @@ jobs: strategy: matrix: target: + - "thumbv7em-none-eabi" - "aarch64-unknown-none-softfloat" - "riscv64gc-unknown-none-elf" @@ -68,7 +70,12 @@ jobs: - name: Install QEMU run: | sudo apt update - sudo apt install qemu-system + sudo apt install --no-install-recommends qemu-system + + - name: Run tests AARCH32 + if: matrix.target == 'thumbv7em-none-eabi' + run: | + RUSTFLAGS="-D warnings -C link-arg=-Ttests/armv7m_mps2an500/link.ld" cargo test --target ${{ matrix.target }} --release - name: Run tests AARCH64 if: matrix.target == 'aarch64-unknown-none-softfloat' diff --git a/tests/test_runner_wrapper.sh b/tests/test_runner_wrapper.sh index 3b2a18e..63160bb 100755 --- a/tests/test_runner_wrapper.sh +++ b/tests/test_runner_wrapper.sh @@ -4,8 +4,7 @@ TIMEOUT="timeout 10" if [[ $1 == *"aarch64"* ]]; then $TIMEOUT qemu-system-aarch64 -M raspi3b -display none -semihosting -kernel $1 elif [[ $1 == *"thumbv7em"* ]]; then - arm-none-eabi-objcopy -O binary $1 /tmp/qemu_exit_armv7em.bin - qemu-system-arm -m 16M -nographic -M mps2-an500 -cpu cortex-m7 -serial mon:stdio -semihosting -kernel /tmp/qemu_exit_armv7em.bin + qemu-system-arm -m 16M -nographic -M mps2-an500 -cpu cortex-m7 -serial mon:stdio -semihosting -kernel $1 elif [[ $1 == *"riscv64"* ]]; then $TIMEOUT qemu-system-riscv64 -M virt -bios tests/riscv64_virt/fw_jump.elf -display none -kernel $1 fi