Skip to content

Commit 370dbbf

Browse files
committed
ci: Add 32-bit REPR_B build.
This showed up some interesting errors (hopefully all fixed now). Signed-off-by: Jeff Epler <jepler@gmail.com>
1 parent bbaafdf commit 370dbbf

2 files changed

Lines changed: 31 additions & 0 deletions

File tree

.github/workflows/ports_unix.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,20 @@ jobs:
102102
if: failure()
103103
run: tests/run-tests.py --print-failures
104104

105+
coverage_repr_b:
106+
runs-on: ubuntu-22.04 # use 22.04 to get libffi-dev:i386
107+
steps:
108+
- uses: actions/checkout@v4
109+
- name: Install packages
110+
run: source tools/ci.sh && ci_unix_32bit_setup
111+
- name: Build
112+
run: source tools/ci.sh && ci_unix_coverage_repr_b_build
113+
- name: Run main test suite
114+
run: source tools/ci.sh && ci_unix_coverage_repr_b_run_tests
115+
- name: Print failures
116+
if: failure()
117+
run: tests/run-tests.py --print-failures
118+
105119
coverage_32bit:
106120
runs-on: ubuntu-22.04 # use 22.04 to get libffi-dev:i386
107121
steps:

tools/ci.sh

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -543,6 +543,14 @@ CI_UNIX_OPTS_SANITIZE_UNDEFINED=(
543543
LDFLAGS_EXTRA="-fsanitize=undefined -fno-sanitize=nonnull-attribute"
544544
)
545545

546+
CI_UNIX_OPTS_REPR_B=(
547+
VARIANT=coverage
548+
CFLAGS_EXTRA="-DMICROPY_OBJ_REPR=MICROPY_OBJ_REPR_B -Dmp_int_t=int32_t -Dmp_uint_t=uint32_t"
549+
MICROPY_FORCE_32BIT=1
550+
RUN_TESTS_MPY_CROSS_FLAGS="--mpy-cross-flags=\"-march=x86 -msmall-int-bits=29\""
551+
552+
)
553+
546554
function ci_unix_build_helper {
547555
make ${MAKEOPTS} -C mpy-cross
548556
make ${MAKEOPTS} -C ports/unix "$@" submodules
@@ -688,6 +696,15 @@ function ci_unix_32bit_setup {
688696
python3 --version
689697
}
690698

699+
function ci_unix_coverage_repr_b_build {
700+
ci_unix_build_helper "${CI_UNIX_OPTS_REPR_B[@]}"
701+
ci_unix_build_ffi_lib_helper gcc -m32
702+
}
703+
704+
function ci_unix_coverage_repr_b_run_tests {
705+
ci_unix_run_tests_helper "${CI_UNIX_OPTS_REPR_B[@]}"
706+
}
707+
691708
function ci_unix_coverage_32bit_build {
692709
ci_unix_build_helper VARIANT=coverage MICROPY_FORCE_32BIT=1
693710
ci_unix_build_ffi_lib_helper gcc -m32

0 commit comments

Comments
 (0)