@@ -48,9 +48,6 @@ name: _benchmark
48
48
benchmarks :
49
49
description : " Benchmarks to run (comma-separated; empty runs all benchmarks)"
50
50
type : string
51
- pgo :
52
- description : " Build with PGO"
53
- type : boolean
54
51
force :
55
52
description : " Rerun and replace results if commit already exists"
56
53
type : boolean
@@ -109,13 +106,19 @@ jobs:
109
106
repository : mdboom/pyperformance
110
107
path : pyperformance
111
108
ref : ${{ env.PYPERFORMANCE_HASH }}
109
+ - name : Build with clang
110
+ if : ${{ inputs.clang }}
111
+ run : |
112
+ Write-Error "Using the latest clang compiler on Windows isn't currently supported by bench-runner"
113
+ exit 1
112
114
- name : Build Python
113
115
if : ${{ steps.should_run.outputs.should_run != 'false' }}
114
116
run : |
115
117
cd cpython
116
118
PCbuild\build.bat ($env:BUILD_FLAGS -split ' ') ${{ inputs.pgo == true && '--pgo' || '' }} ${{ inputs.jit == true && '--experimental-jit' || '' }} ${{ inputs.tier2 == true && '--experimental-jit-interpreter' || '' }} ${{ inputs.nogil == true && '--disable-gil' || '' }} -c Release
117
119
# Copy the build products to a place that libraries can find them.
118
120
Copy-Item -Path $env:BUILD_DEST -Destination "libs" -Recurse
121
+ $env:BUILD_DEST\python.exe -VV
119
122
- name : Install pyperformance
120
123
if : ${{ steps.should_run.outputs.should_run != 'false' }}
121
124
run : |
@@ -198,12 +201,19 @@ jobs:
198
201
repository : mdboom/pyperformance
199
202
path : pyperformance
200
203
ref : ${{ env.PYPERFORMANCE_HASH }}
204
+ - name : Build with clang
205
+ if : ${{ inputs.clang }}
206
+ run : |
207
+ echo "CC=`which clang-19`" >> $GITHUB_ENV
208
+ echo "LLVM_AR=`which llvm-ar-19`" >> $GITHUB_ENV
209
+ echo "LLVM_PROFDATA=`which llvm-profdata-19`" >> $GITHUB_ENV
201
210
- name : Build Python
202
211
if : ${{ steps.should_run.outputs.should_run != 'false' }}
203
212
run : |
204
213
cd cpython
205
214
./configure ${{ inputs.pgo == true && '--enable-optimizations --with-lto=yes' || '' }} ${{ inputs.tier2 == true && '--enable-experimental-jit=interpreter' || '' }} ${{ inputs.jit == true && '--enable-experimental-jit=yes' || '' }} ${{ inputs.nogil == true && '--disable-gil' || '' }}
206
215
make ${{ runner.arch == 'ARM64' && '-j' || '-j4' }}
216
+ ./python -VV
207
217
- name : Install pyperformance
208
218
if : ${{ steps.should_run.outputs.should_run != 'false' }}
209
219
run : |
@@ -299,12 +309,20 @@ jobs:
299
309
if : ${{ steps.should_run.outputs.should_run != 'false' }}
300
310
run : |
301
311
echo "PKG_CONFIG_PATH=$(brew --prefix [email protected] )/lib/pkgconfig" >> $GITHUB_ENV
312
+ - name : Build with clang
313
+ if : ${{ inputs.clang }}
314
+ run : |
315
+ echo "PATH=$(brew --prefix llvm)/bin:$PATH" >> $GITHUB_ENV
316
+ echo "CC=$(brew --prefix llvm)/bin/clang" >> $GITHUB_ENV
317
+ echo "LDFLAGS=-L$(brew --prefix llvm)/lib" >> $GITHUB_ENV
318
+ echo "CFLAGS=-I$(brew --prefix llvm)/include" >> $GITHUB_ENV
302
319
- name : Build Python
303
320
if : ${{ steps.should_run.outputs.should_run != 'false' }}
304
321
run : |
305
322
cd cpython
306
323
./configure ${{ inputs.pgo == true && '--enable-optimizations --with-lto=yes' || '' }} ${{ inputs.tier2 == true && '--enable-experimental-jit=interpreter' || '' }} ${{ inputs.jit == true && '--enable-experimental-jit=yes' || '' }} ${{ inputs.nogil == true && '--disable-gil' || '' }}
307
324
make -j4
325
+ ./python.exe -VV
308
326
# On macos ARM64, actions/setup-python isn't available, so we rely on a
309
327
# pre-installed homebrew one, used through a venv
310
328
- name : Install pyperformance
0 commit comments