Skip to content
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

fix: alloc-optimisation is only for rust llvm #89591

Merged
merged 1 commit into from
Oct 6, 2021

Conversation

infinity0
Copy link
Contributor

As discussed at the bottom of #83485.

On a separate note I'll take this chance ask, is it worth pulling in that patch (to recognise __rust_dealloc) into Debian's system LLVM? The main factors for us to consider would be (1) is the optimisation significant and (2) is there not any significant negative impact to non-rust packages that use LLVM.

@rust-highfive
Copy link
Collaborator

r? @Mark-Simulacrum

(rust-highfive has picked a reviewer for you, use r? to override)

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Oct 6, 2021
@infinity0
Copy link
Contributor Author

CC @Amanieu

@infinity0
Copy link
Contributor Author

Another related question would be, could it actually just be pushed into upstream LLVM itself, perhaps generalised for them to make the choice of function name configurable.

@Amanieu
Copy link
Member

Amanieu commented Oct 6, 2021

There was a thread on Zulip about upstreaming the LLVM patch for __rust_alloc. A quick skim seems to indicate that it was preferred to add a new generic attribute to LLVM which marks a function as being alloc/free-like.

@Amanieu
Copy link
Member

Amanieu commented Oct 6, 2021

@bors r+ rollup

@bors
Copy link
Contributor

bors commented Oct 6, 2021

📌 Commit b386959 has been approved by Amanieu

@bors bors 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 Oct 6, 2021
bors added a commit to rust-lang-ci/rust that referenced this pull request Oct 6, 2021
…arth

Rollup of 12 pull requests

Successful merges:

 - rust-lang#87601 (Add functions to add unsigned and signed integers)
 - rust-lang#88523 (Expand documentation for `FpCategory`.)
 - rust-lang#89050 (refactor: VecDeques Drain fields to private)
 - rust-lang#89245 (refactor: make VecDeque's IterMut fields module-private, not just crate-private)
 - rust-lang#89324 (Rename `std::thread::available_conccurrency` to `std::thread::available_parallelism`)
 - rust-lang#89329 (print-type-sizes: skip field printing for primitives)
 - rust-lang#89501 (Note specific regions involved in 'borrowed data escapes' error)
 - rust-lang#89506 (librustdoc: Use correct heading levels.)
 - rust-lang#89528 (Fix suggestion to borrow when casting from pointer to reference)
 - rust-lang#89531 (library std, libc dependency update)
 - rust-lang#89588 (Add a test for generic_const_exprs)
 - rust-lang#89591 (fix: alloc-optimisation is only for rust llvm)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit f31c805 into rust-lang:master Oct 6, 2021
@rustbot rustbot added this to the 1.57.0 milestone Oct 6, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
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.

6 participants