Skip to content

Commit 8453063

Browse files
committed
support optionally building AMD64 with tailcalling
1 parent 0ece9ab commit 8453063

File tree

2 files changed

+10
-5
lines changed

2 files changed

+10
-5
lines changed

windows-release/azure-pipelines.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,10 @@ parameters:
4242
displayName: "Signature description"
4343
type: string
4444
default: '(default)'
45+
- name: DoTailcalling
46+
displayName: "Build AMD64 with tailcalling support (3.15 and later)"
47+
type: boolean
48+
default: false
4549
- name: DoJIT
4650
displayName: "Build the JIT compiler (3.14 and later)"
4751
type: boolean
@@ -161,7 +165,7 @@ stages:
161165
- stage: Build
162166
displayName: Build binaries
163167
pool:
164-
vmImage: ${{ parameters.vmImage }}
168+
vmImage: ${{ if eq(parameters.DoTailcalling, 'true') }} 'windows-2025-vs2026' ${{ else }} ${{ parameters.vmImage }}
165169
jobs:
166170
- template: start-arm64vm.yml
167171
parameters:

windows-release/stage-build.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ parameters:
44
DoPGOARM64: true
55
DoFreethreaded: false
66
ToBeSigned: false
7+
DoTailcalling: false
78
ExtraOptions: ''
89
ExtraOptionsFreethreaded: '--disable-gil'
910

@@ -71,7 +72,7 @@ jobs:
7172
Platform: x64
7273
Configuration: Release
7374
_HostPython: .\python
74-
ExtraOptions: ${{ parameters.ExtraOptions }}
75+
ExtraOptions: ${{ parameters.ExtraOptions }}${{ if eq(parameters.DoTailcalling, 'true') }} ' --tail-call-interp'
7576
${{ if eq(parameters.ToBeSigned, 'true') }}:
7677
Artifact: unsigned_amd64
7778
${{ else }}:
@@ -131,7 +132,7 @@ jobs:
131132
Platform: x64
132133
Configuration: Release
133134
_HostPython: .\python
134-
ExtraOptions: ${{ parameters.ExtraOptionsFreethreaded }}
135+
ExtraOptions: ${{ parameters.ExtraOptionsFreethreaded }}${{ if eq(parameters.DoTailcalling, 'true') }} ' --tail-call-interp'
135136
${{ if eq(parameters.ToBeSigned, 'true') }}:
136137
Artifact: unsigned_amd64_t
137138
${{ else }}:
@@ -185,7 +186,7 @@ jobs:
185186
Platform: x64
186187
_HostPython: .\python
187188
PythonExePattern: python.exe
188-
ExtraOptions: ${{ parameters.ExtraOptions }}
189+
ExtraOptions: ${{ parameters.ExtraOptions }}${{ if eq(parameters.DoTailcalling, 'true') }} ' --tail-call-interp'
189190
${{ if eq(parameters.ToBeSigned, 'true') }}:
190191
Artifact: unsigned_amd64
191192
${{ else }}:
@@ -197,7 +198,7 @@ jobs:
197198
Platform: x64
198199
_HostPython: .\python
199200
PythonExePattern: python3*t.exe
200-
ExtraOptions: ${{ parameters.ExtraOptionsFreethreaded }}
201+
ExtraOptions: ${{ parameters.ExtraOptionsFreethreaded }}${{ if eq(parameters.DoTailcalling, 'true') }} ' --tail-call-interp'
201202
${{ if eq(parameters.ToBeSigned, 'true') }}:
202203
Artifact: unsigned_amd64_t
203204
${{ else }}:

0 commit comments

Comments
 (0)