Skip to content

Commit 264adc1

Browse files
Consolidate JIT one off jobs
1 parent e95dde9 commit 264adc1

File tree

1 file changed

+26
-47
lines changed

1 file changed

+26
-47
lines changed

.github/workflows/jit.yml

Lines changed: 26 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -113,66 +113,45 @@ jobs:
113113
make all --jobs 4
114114
./python -m test --multiprocess 0 --timeout 4500 --verbose2 --verbose3
115115
116-
jit-with-disabled-gil:
117-
name: Free-Threaded (Debug)
116+
jit-linux-extras:
117+
name: ${{ matrix.name }}
118118
needs: interpreter
119119
runs-on: ubuntu-24.04
120120
timeout-minutes: 90
121+
strategy:
122+
fail-fast: false
123+
matrix:
124+
include:
125+
- name: Free-Threaded (Debug)
126+
configure_flags: --enable-experimental-jit --with-pydebug --disable-gil
127+
test_env: ""
128+
continue_on_error: true
129+
- name: JIT without optimizations (Debug)
130+
configure_flags: --enable-experimental-jit --with-pydebug
131+
test_env: "PYTHON_UOPS_OPTIMIZE=0"
132+
continue_on_error: false
133+
- name: JIT with tail calling interpreter
134+
configure_flags: --enable-experimental-jit --with-tail-call-interp --with-pydebug
135+
use_clang: true
136+
test_env: ""
137+
continue_on_error: false
121138
steps:
122139
- uses: actions/checkout@v6
123140
with:
124141
persist-credentials: false
125142
- uses: actions/setup-python@v6
126143
with:
127144
python-version: '3.11'
128-
- name: Build with JIT enabled and GIL disabled
145+
- name: Build
129146
run: |
130147
sudo bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)" ./llvm.sh ${{ env.LLVM_VERSION }}
131148
export PATH="$(llvm-config-${{ env.LLVM_VERSION }} --bindir):$PATH"
132-
./configure --enable-experimental-jit --with-pydebug --disable-gil
149+
if [ "${{ matrix.use_clang }}" = "true" ]; then
150+
export CC=clang-${{ env.LLVM_VERSION }}
151+
fi
152+
./configure ${{ matrix.configure_flags }}
133153
make all --jobs 4
134154
- name: Run tests
135155
run: |
136-
./python -m test --multiprocess 0 --timeout 4500 --verbose2 --verbose3
137-
continue-on-error: true
138-
139-
no-opt-jit:
140-
name: JIT without optimizations (Debug)
141-
needs: interpreter
142-
runs-on: ubuntu-24.04
143-
timeout-minutes: 90
144-
steps:
145-
- uses: actions/checkout@v6
146-
with:
147-
persist-credentials: false
148-
- uses: actions/setup-python@v6
149-
with:
150-
python-version: '3.11'
151-
- name: Build with JIT
152-
run: |
153-
sudo bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)" ./llvm.sh ${{ env.LLVM_VERSION }}
154-
export PATH="$(llvm-config-${{ env.LLVM_VERSION }} --bindir):$PATH"
155-
./configure --enable-experimental-jit --with-pydebug
156-
make all --jobs 4
157-
- name: Run tests without optimizations
158-
run: |
159-
PYTHON_UOPS_OPTIMIZE=0 ./python -m test --multiprocess 0 --timeout 4500 --verbose2 --verbose3
160-
161-
tail-call-jit:
162-
name: JIT with tail calling interpreter
163-
needs: interpreter
164-
runs-on: ubuntu-24.04
165-
timeout-minutes: 90
166-
steps:
167-
- uses: actions/checkout@v6
168-
with:
169-
persist-credentials: false
170-
- uses: actions/setup-python@v6
171-
with:
172-
python-version: '3.11'
173-
- name: Build with JIT and tailcall
174-
run: |
175-
sudo bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)" ./llvm.sh ${{ env.LLVM_VERSION }}
176-
export PATH="$(llvm-config-${{ env.LLVM_VERSION }} --bindir):$PATH"
177-
CC=clang-${{ env.LLVM_VERSION }} ./configure --enable-experimental-jit --with-tail-call-interp --with-pydebug
178-
make all --jobs 4
156+
${{ matrix.test_env }} ./python -m test --multiprocess 0 --timeout 4500 --verbose2 --verbose3
157+
continue-on-error: ${{ matrix.continue_on_error }}

0 commit comments

Comments
 (0)