-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Rolling up PRs in the queue #22520
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
Rolling up PRs in the queue #22520
Conversation
No need to create a bunch of blocks and a stack allocated temporary just to build a simple loop.
In trans_slice_vec we currently use arrayalloca, which gives us a pointer to the element type with enough memory allocated for the requested number of elements. This works, but everywhere else we use the [n x T] type for fixed size arrays and so we have to bitcast the pointer here. Let's directly use the proper type for the allocation and remove some code duplication along the way.
… that reference `Self`. Fixes rust-lang#18956.
Casting the pointer to an integer requires a ptrtoint, while casting 0 to a pointer is directly folded to a `null` value.
The data pointer used in the slice is never null, using assume() to tell LLVM about it gets rid of various unneeded null checks when iterating over the slice. Since the snapshot compiler is still using an older LLVM version, omit the call in stage0, because compile times explode otherwise. Benchmarks from rust-lang#18193 ```` running 5 tests test _range ... bench: 33329 ns/iter (+/- 417) test assembly ... bench: 33299 ns/iter (+/- 58) test enumerate ... bench: 33318 ns/iter (+/- 83) test iter ... bench: 33311 ns/iter (+/- 130) test position ... bench: 33300 ns/iter (+/- 47) test result: ok. 0 passed; 0 failed; 0 ignored; 5 measured ```` Fixes rust-lang#18193
* cast 3-valued `core::cmp::Ordering` to `i32`, not `int`. * use `isize`/`usize` in the impl macros.
* Use `i32` (`u32`) in doc examples, not `int` (`u32`). * Switch impl macros to use `isize`/`usize` rather than `int`/`uint`.
…usize`. Likewise, `fn offset` takes an `isize`.
into variance inference; fix various bugs in variance inference so that it considers the correct set of constraints; modify infer to consider the results of variance inference for type arguments.
variance or an associated type.
…nd ownership, and also follows the API of `NonZero` a bit more closely. More to do here I think (including perhaps a new name).
@bors: r+ 8cd10ce p=100 |
⌛ Testing commit 8cd10ce with merge e9128cb... |
💔 Test failed - auto-mac-64-nopt-t |
|
💔 Test failed - auto-mac-32-opt |
@bors: r+ 9887263 p=100 |
⌛ Testing commit 9887263 with merge bd829d3... |
💔 Test failed - auto-mac-32-opt |
Seems to be the hash table thing again cc @gankro I'll be able to have a closer look in a couple of hours, got class. |
Poked at it, not really sure what it is. I'll need to dig up a 32bit system to really look at it. |
🙀 You have the wrong number! Please try again with |
💔 Test failed - auto-win-32-opt |
I moved this to #22541 (You can push to the rollup branch on my fork to continue it) |
No description provided.