diff options
-rw-r--r-- | .github/workflows/ports_unix.yml | 14 | ||||
-rwxr-xr-x | tools/ci.sh | 19 |
2 files changed, 33 insertions, 0 deletions
diff --git a/.github/workflows/ports_unix.yml b/.github/workflows/ports_unix.yml index 77d0b29ca..eeae895f6 100644 --- a/.github/workflows/ports_unix.yml +++ b/.github/workflows/ports_unix.yml @@ -217,6 +217,20 @@ jobs: if: failure() run: tests/run-tests.py --print-failures + repr_b: + runs-on: ubuntu-22.04 # use 22.04 to get libffi-dev:i386 + steps: + - uses: actions/checkout@v5 + - name: Install packages + run: source tools/ci.sh && ci_unix_32bit_setup + - name: Build + run: source tools/ci.sh && ci_unix_repr_b_build + - name: Run main test suite + run: source tools/ci.sh && ci_unix_repr_b_run_tests + - name: Print failures + if: failure() + run: tests/run-tests.py --print-failures + macos: runs-on: macos-latest steps: diff --git a/tools/ci.sh b/tools/ci.sh index 6ecf8cc67..f55b004c4 100755 --- a/tools/ci.sh +++ b/tools/ci.sh @@ -556,6 +556,14 @@ CI_UNIX_OPTS_SANITIZE_UNDEFINED=( LDFLAGS_EXTRA="-fsanitize=undefined -fno-sanitize=nonnull-attribute" ) +CI_UNIX_OPTS_REPR_B=( + VARIANT=standard + CFLAGS_EXTRA="-DMICROPY_OBJ_REPR=MICROPY_OBJ_REPR_B -DMICROPY_PY_UCTYPES=0 -Dmp_int_t=int32_t -Dmp_uint_t=uint32_t" + MICROPY_FORCE_32BIT=1 + RUN_TESTS_MPY_CROSS_FLAGS="--mpy-cross-flags=\"-march=x86 -msmall-int-bits=30\"" + +) + function ci_unix_build_helper { make ${MAKEOPTS} -C mpy-cross make ${MAKEOPTS} -C ports/unix "$@" submodules @@ -898,6 +906,17 @@ function ci_unix_qemu_riscv64_run_tests { (cd tests && MICROPY_MICROPYTHON=../ports/unix/build-coverage/micropython MICROPY_TEST_TIMEOUT=180 ./run-tests.py --exclude 'thread/stress_recurse.py|thread/thread_gc1.py') } +function ci_unix_repr_b_build { + ci_unix_build_helper "${CI_UNIX_OPTS_REPR_B[@]}" + ci_unix_build_ffi_lib_helper gcc -m32 +} + +function ci_unix_repr_b_run_tests { + # ci_unix_run_tests_full_no_native_helper is not used due to + # https://github.com/micropython/micropython/issues/18105 + ci_unix_run_tests_helper "${CI_UNIX_OPTS_REPR_B[@]}" +} + ######################################################################################## # ports/windows |