Skip to content

3.14.0b3 JIT build fails with KeyError: 'R_X86_64_GOTPCREL' #135690

Open
@zanieb

Description

@zanieb

Bug description:

The python-build-standalone experimental JIT build fails on 3.14.0b3 with:

cpython-3.14>     | Traceback (most recent call last):
cpython-3.14>     |   File "/build/Python-3.14.0b3/Tools/jit/_targets.py", line 165, in _compile
cpython-3.14>     |     return await self._parse(o)
cpython-3.14>     |            ^^^^^^^^^^^^^^^^^^^^
cpython-3.14>     |   File "/build/Python-3.14.0b3/Tools/jit/_targets.py", line 106, in _parse
cpython-3.14>     |     self._handle_section(wrapped_section["Section"], group)
cpython-3.14>     |     ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
cpython-3.14>     |   File "/build/Python-3.14.0b3/Tools/jit/_targets.py", line 352, in _handle_section
cpython-3.14>     |     hole = self._handle_relocation(base, relocation, stencil.body)
cpython-3.14>     |   File "/build/Python-3.14.0b3/Tools/jit/_targets.py", line 416, in _handle_relocation
cpython-3.14>     |     return _stencils.Hole(offset, kind, value, symbol, addend)
cpython-3.14>     |            ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
cpython-3.14>     |   File "<string>", line 9, in __init__
cpython-3.14>     |   File "/build/Python-3.14.0b3/Tools/jit/_stencils.py", line 141, in __post_init__
cpython-3.14>     |     self.func = _PATCH_FUNCS[self.kind]
cpython-3.14>     |                 ~~~~~~~~~~~~^^^^^^^^^^^
cpython-3.14>     | KeyError: 'R_X86_64_GOTPCREL'

ref https://github.com/astral-sh/python-build-standalone/actions/runs/15737844881/job/44355511468?pr=663

I'm sort of confused that it's new? #130097 looks relevant but has been around for a bit. 3.14.0b2 works.

We use LLVM v20.1.4

CPython versions tested on:

3.14

Operating systems tested on:

Linux

Metadata

Metadata

Assignees

Labels

3.14bugs and security fixesinterpreter-core(Objects, Python, Grammar, and Parser dirs)topic-JITtype-bugAn unexpected behavior, bug, or error

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions