Skip to content

circt: Add version 1.157.0 - #2593

Open
luhenry wants to merge 2 commits into
mainfrom
circt
Open

luhenry wants to merge 2 commits into
mainfrom
circt

Conversation

@luhenry

@luhenry luhenry commented Oct 2, 2026 •

Copy link
Copy Markdown
Member

Compiles LLVM, MLIR and CIRCT from the pinned llvm submodule into the CIRCT Python bindings (nanobind). Upstream publishes no riscv64 wheel.

Mirrors upstream's uploadWheels.yml.

Differs from upstream

  • Installs lld in the image so upstream's setup.py takes its own -DLLVM_USE_LINKER=lld path instead of linking LLVM/MLIR/CIRCT with ld.bfd.
  • CMAKE_BUILD_PARALLEL_LEVEL=3 instead of ninja's default (6 on the 4-core runners): the first run lost both runners about 7h in, which no other package hit in the preceding two weeks, so it exhausted the runner's 15GB.

Matrix: cp313, cp314 - upstream's own set; each leg is a full LLVM/MLIR/CIRCT build.

Testing

  • Upstream ships wheels untested; runs upstream's integration_test/Bindings/Python lit suite against the installed wheel instead.
  • FileCheck from the image's llvm package; upstream uses its build tree's.

License: Wheel bundles LLVM/MLIR (Apache-2.0 WITH LLVM-exception), nanobind (BSD-3-Clause) and robin-map (MIT); upstream ships no licence text for them, so the build adds it.

Build the CIRCT Python bindings (llvm/circt lib/Bindings/Python) for
riscv64. Mirrors upstream's uploadWheels.yml: cibuildwheel over
lib/Bindings/Python with the build frontend, one job per interpreter
(cp313, cp314), each compiling LLVM/MLIR/CIRCT from the llvm submodule.

Runs upstream's integration_test/Bindings/Python lit suite against the
installed wheel, and stages the LLVM, nanobind and robin-map licences
that upstream's wheel omits.
luhenry added a commit that referenced this pull request Oct 2, 2026
@github-actions

github-actions Bot commented Oct 2, 2026 •

Copy link
Copy Markdown
Contributor
PR Preview Action v1.8.1

QR code for preview link

🚀 View preview at
https://riseproject-dev.github.io/python-wheels/pr-preview/pr-2593/

Built to branch gh-pages at 2026-10-09 22:54 UTC.
Preview will be ready when the GitHub Pages deployment is complete.

Both build legs of the first run died about 7h in, on two different
runners within four minutes of each other, with "The self-hosted runner
lost communication with the server" and no log. No other package lost a
runner that way in the preceding two weeks, so the build itself
exhausted the runner's 15GB.

Upstream's setup.py runs `cmake --build .` (ninja's default -j6 on the
4-core runners) and only passes -DLLVM_USE_LINKER=lld when lld is on
PATH, so on manylinux every LLVM/MLIR/CIRCT link went through ld.bfd.
Install lld so setup.py takes its own lld path, and cap the build with
CMAKE_BUILD_PARALLEL_LEVEL=3.
@luhenry
luhenry marked this pull request as ready for review October 10, 2026 20:40

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant