Skip to content

Update Enzyme to handle LLVM23#159301

Merged
rust-bors[bot] merged 1 commit into
rust-lang:mainfrom
ZuseZ4:enzyme-llvm23
Jul 17, 2026
Merged

Update Enzyme to handle LLVM23#159301
rust-bors[bot] merged 1 commit into
rust-lang:mainfrom
ZuseZ4:enzyme-llvm23

Conversation

@ZuseZ4

@ZuseZ4 ZuseZ4 commented Jul 14, 2026

Copy link
Copy Markdown
Member

Enzyme just gained support for LLVM23, so update it to unblock our LLVM update.
r? nikic

@rustbot rustbot added F-autodiff `#![feature(autodiff)]` S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jul 14, 2026
@rustbot

rustbot commented Jul 14, 2026

Copy link
Copy Markdown
Collaborator

⚠️ Warning ⚠️

@ZuseZ4

ZuseZ4 commented Jul 14, 2026

Copy link
Copy Markdown
Member Author

@bors try jobs=dist-x86_64-linux

@rust-bors

This comment has been minimized.

rust-bors Bot pushed a commit that referenced this pull request Jul 14, 2026
Update Enzyme to handle LLVM23


try-job: dist-x86_64-linux
@rust-bors

rust-bors Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: 8aa8a5c (8aa8a5cb0364999cafbf5ff308c016d318738461)
Base parent: da80ed0 (da80ed0708a09dc096c184345d6eb42cbcd50a1e)

@nikic

nikic commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

I haven't confirmed yet, but I suspect another fix for the last-minute llvm/llvm-project@5d5dd83 change will be needed.

@nikic

nikic commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

Submitted EnzymeAD/Enzyme#2951 for the extra fix.

@nikic

nikic commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

@bors r+

@rust-bors

rust-bors Bot commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

📌 Commit b53cbe1 has been approved by nikic

It is now in the queue for this repository.

@rust-bors rust-bors Bot added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jul 17, 2026
@nikic nikic mentioned this pull request Jul 17, 2026
9 tasks
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jul 17, 2026
Update Enzyme to handle LLVM23

Enzyme just gained support for LLVM23, so update it to unblock our LLVM update.
r? nikic
rust-bors Bot pushed a commit that referenced this pull request Jul 17, 2026
…uwer

Rollup of 16 pull requests

Successful merges:

 - #150732 (Convert `-Ctarget-cpu` into a target-modifier for AVR, AMDGCN and NVPTX )
 - #159301 (Update Enzyme to handle LLVM23)
 - #159365 (fix: point at method call chain when a return-position `impl Trait` assoc type diverges)
 - #159402 (Clarify safety requirements for SIMD shl/shr and masked load/store)
 - #159410 (rustdoc: remove old `--emit` types)
 - #158398 (Comment about empty run_passes, fixup of #158040)
 - #158843 (Fix ICE in `write_interface` when the interface file can't be written)
 - #159302 (Implement `Debug` helpers via `Cell`)
 - #159332 (Honor field-level lint attributes in non_snake_case)
 - #159386 (add a fallback for `fmuladdf*`)
 - #159391 (Update tests for LLVM 23)
 - #159400 (Update books)
 - #159401 (Gate `tests/debuginfo/function-call.rs` on min GDB 15.1)
 - #159404 ([aarch64][win] Pass oversized c-variadic args indirectly on Arm64EC)
 - #159405 (Manually implement Clone for GrowableBitSet)
 - #159415 (rustdoc: rename the doc parts metadata params)
rust-bors Bot pushed a commit that referenced this pull request Jul 17, 2026
…uwer

Rollup of 17 pull requests

Successful merges:

 - #159301 (Update Enzyme to handle LLVM23)
 - #159365 (fix: point at method call chain when a return-position `impl Trait` assoc type diverges)
 - #159402 (Clarify safety requirements for SIMD shl/shr and masked load/store)
 - #159408 (rustc_data_structures: Expand documentation for rustc jobserver APIs)
 - #159410 (rustdoc: remove old `--emit` types)
 - #158398 (Comment about empty run_passes, fixup of #158040)
 - #158843 (Fix ICE in `write_interface` when the interface file can't be written)
 - #159302 (Implement `Debug` helpers via `Cell`)
 - #159332 (Honor field-level lint attributes in non_snake_case)
 - #159340 (Rename `errors.rs` file to `diagnostics.rs` (14/N))
 - #159386 (add a fallback for `fmuladdf*`)
 - #159391 (Update tests for LLVM 23)
 - #159400 (Update books)
 - #159401 (Gate `tests/debuginfo/function-call.rs` on min GDB 15.1)
 - #159404 ([aarch64][win] Pass oversized c-variadic args indirectly on Arm64EC)
 - #159405 (Manually implement Clone for GrowableBitSet)
 - #159415 (rustdoc: rename the doc parts metadata params)
@rust-bors
rust-bors Bot merged commit fbcbc8b into rust-lang:main Jul 17, 2026
13 checks passed
rust-timer added a commit that referenced this pull request Jul 17, 2026
Rollup merge of #159301 - ZuseZ4:enzyme-llvm23, r=nikic

Update Enzyme to handle LLVM23

Enzyme just gained support for LLVM23, so update it to unblock our LLVM update.
r? nikic
@rustbot rustbot added this to the 1.99.0 milestone Jul 17, 2026
Kobzol pushed a commit to Kobzol/rustc_codegen_cranelift that referenced this pull request Jul 23, 2026
…uwer

Rollup of 17 pull requests

Successful merges:

 - rust-lang/rust#159301 (Update Enzyme to handle LLVM23)
 - rust-lang/rust#159365 (fix: point at method call chain when a return-position `impl Trait` assoc type diverges)
 - rust-lang/rust#159402 (Clarify safety requirements for SIMD shl/shr and masked load/store)
 - rust-lang/rust#159408 (rustc_data_structures: Expand documentation for rustc jobserver APIs)
 - rust-lang/rust#159410 (rustdoc: remove old `--emit` types)
 - rust-lang/rust#158398 (Comment about empty run_passes, fixup of rust-lang/rust#158040)
 - rust-lang/rust#158843 (Fix ICE in `write_interface` when the interface file can't be written)
 - rust-lang/rust#159302 (Implement `Debug` helpers via `Cell`)
 - rust-lang/rust#159332 (Honor field-level lint attributes in non_snake_case)
 - rust-lang/rust#159340 (Rename `errors.rs` file to `diagnostics.rs` (14/N))
 - rust-lang/rust#159386 (add a fallback for `fmuladdf*`)
 - rust-lang/rust#159391 (Update tests for LLVM 23)
 - rust-lang/rust#159400 (Update books)
 - rust-lang/rust#159401 (Gate `tests/debuginfo/function-call.rs` on min GDB 15.1)
 - rust-lang/rust#159404 ([aarch64][win] Pass oversized c-variadic args indirectly on Arm64EC)
 - rust-lang/rust#159405 (Manually implement Clone for GrowableBitSet)
 - rust-lang/rust#159415 (rustdoc: rename the doc parts metadata params)
rust-bors Bot pushed a commit that referenced this pull request Jul 24, 2026
Update to LLVM 23



Changes in this PR (apart from the LLVM update):
 * Updated cov-map tests due to minor ordering changes introduced in llvm/llvm-project@5931034. The affected tests are limited to LLVM >= 23 now.
 * Set `LLVM_VERSIONED_DYLIB_NAME_ON_DARWIN=OFF`, which restores the previous unversioned naming of the LLVM dylib on Darwin. I expect we'll want to change this for consistency with Linux, but given the amount of trouble Darwin dylibs have caused in the past, I'm not trying to do it in this PR.
 * Distribute the llvm-project/libc subproject, which is now a build dependency of LLVM.
 * Pull in f128 Windows ABI changes from #158778. These need to land in sync with the LLVM update (as ABI of libcalls is controlled by LLVM, not our ABI lowering).
 * Disable RISCV backend on dist-i686-mingw, because the build OOMs on a large generated file. This is a temporary measure until host tools are removed by rust-lang/compiler-team#1020.
 * The llvm-project fork includes a new downstream patch for mingw: rust-lang/llvm-project@b89cd8e It works around mingw having broken TLS prior to GCC 16. (We're currently on GCC 14.)

Issues:
* [x] llvm/llvm-project#209512
* [x] llvm/llvm-project#209714
* [x] llvm/llvm-project#209718
* [x] rust-lang/stdarch#2190 (synced in #159517)
* [x] llvm/llvm-project#210025
* [x] #159391
* [x] EnzymeAD/Enzyme#2951
* [x] #159301
* [x] llvm/llvm-project#210300
rust-bors Bot pushed a commit that referenced this pull request Jul 24, 2026
Update to LLVM 23



Changes in this PR (apart from the LLVM update):
 * Updated cov-map tests due to minor ordering changes introduced in llvm/llvm-project@5931034. The affected tests are limited to LLVM >= 23 now.
 * Set `LLVM_VERSIONED_DYLIB_NAME_ON_DARWIN=OFF`, which restores the previous unversioned naming of the LLVM dylib on Darwin. I expect we'll want to change this for consistency with Linux, but given the amount of trouble Darwin dylibs have caused in the past, I'm not trying to do it in this PR.
 * Distribute the llvm-project/libc subproject, which is now a build dependency of LLVM.
 * Pull in f128 Windows ABI changes from #158778. These need to land in sync with the LLVM update (as ABI of libcalls is controlled by LLVM, not our ABI lowering).
 * Disable RISCV backend on dist-i686-mingw, because the build OOMs on a large generated file. This is a temporary measure until host tools are removed by rust-lang/compiler-team#1020.
 * The llvm-project fork includes a new downstream patch for mingw: rust-lang/llvm-project@b89cd8e It works around mingw having broken TLS prior to GCC 16. (We're currently on GCC 14.)

Issues:
* [x] llvm/llvm-project#209512
* [x] llvm/llvm-project#209714
* [x] llvm/llvm-project#209718
* [x] rust-lang/stdarch#2190 (synced in #159517)
* [x] llvm/llvm-project#210025
* [x] #159391
* [x] EnzymeAD/Enzyme#2951
* [x] #159301
* [x] llvm/llvm-project#210300
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

F-autodiff `#![feature(autodiff)]` S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants