-
Notifications
You must be signed in to change notification settings - Fork 13.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add link attribute for Enzyme's LLVMRust FFI #136374
Conversation
cc @oli-obk I'll look again at the code over the weekend. Maybe it's the query we discussed? |
That enzyme PR had a few perf regressions, I don’t know if it needs more time to iron these issues out. Maybe we should wait a bit and see what happens there to know when to land this one? Apart from that it looks good to me. |
There are some lines which I can just gate against the enzyme cfg - by default we don't build enzyme, so they wouldn't be executed. I just didn't consider them having an impact. Can we bench that before reverting please? I can do that today. |
Oh for sure! If there’s a fix, it would be better than doing a revert. (This PR is a fix for the linkage issue though, let’s keep the perf discussion in #133429) |
r? oli-obk @bors r+ rollup |
…iaskrgr Rollup of 6 pull requests Successful merges: - rust-lang#130514 (Implement MIR lowering for unsafe binders) - rust-lang#135684 (docs: Documented Send and Sync requirements for Mutex + MutexGuard) - rust-lang#136307 (Implement all mix/max functions in a (hopefully) more optimization amendable way) - rust-lang#136360 (Stabilize `once_wait`) - rust-lang#136364 (document that ptr cmp is unsigned) - rust-lang#136374 (Add link attribute for Enzyme's LLVMRust FFI) r? `@ghost` `@rustbot` modify labels: rollup
…iaskrgr Rollup of 6 pull requests Successful merges: - rust-lang#130514 (Implement MIR lowering for unsafe binders) - rust-lang#135684 (docs: Documented Send and Sync requirements for Mutex + MutexGuard) - rust-lang#136307 (Implement all mix/max functions in a (hopefully) more optimization amendable way) - rust-lang#136360 (Stabilize `once_wait`) - rust-lang#136364 (document that ptr cmp is unsigned) - rust-lang#136374 (Add link attribute for Enzyme's LLVMRust FFI) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#136374 - saethlin:enzyme-linkage, r=oli-obk Add link attribute for Enzyme's LLVMRust FFI Since rust-lang#133429 landed, the compiler doesn't build with `-Zcross-crate-inline-threshold=always`. I don't expect anyone else to test or fix issues with that goofy configuration, so I'm fixing it. This PR adds a link attribute just like rust-lang#118142 for all the new LLVMRust functions. They were actually added in rust-lang#130060 but weren't used until just now.
Since #133429 landed, the compiler doesn't build with
-Zcross-crate-inline-threshold=always
. I don't expect anyone else to test or fix issues with that goofy configuration, so I'm fixing it.This PR adds a link attribute just like #118142 for all the new LLVMRust functions. They were actually added in #130060 but weren't used until just now.