Skip to content

Rollup of 9 pull requests #94314

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 25 commits into from
Feb 24, 2022
Merged

Rollup of 9 pull requests #94314

merged 25 commits into from
Feb 24, 2022

Conversation

matthiaskrgr
Copy link
Member

Successful merges:

Failed merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

Mark-Simulacrum and others added 25 commits February 22, 2022 18:05
Rust previously encoded the `char` type as DW_ATE_unsigned_char. The more
appropriate encoding is DW_ATE_UTF.

Clang uses this same debug encoding for char32_t.

This fixes the display of `char` types in Windows debuggers as well as LLDB.
Co-authored-by: Josh Triplett <josh@joshtriplett.org>
Change `char` type in debuginfo to DW_ATE_UTF

Rust previously encoded the `char` type as DW_ATE_unsigned_char. The more appropriate encoding is `DW_ATE_UTF`.

Clang also uses the DW_ATE_UTF for `char32_t` in C++.

This fixes the display of the `char` type in the Windows debuggers. Without this change, the variable did not show in the locals window.
![image](https://user-images.githubusercontent.com/704597/137368067-9b3e4dc8-a075-44ba-a687-bf3810a44e5a.png)

LLDB 13 is also able to display the char value, when before it failed with `need to add support for DW_TAG_base_type 'char' encoded with DW_ATE = 0x8, bit_size = 32`

r? `@wesleywiser`
…elwoerister

Remove unused ordering derivations and bounds for `SimplifiedTypeGen`

This is another small PR clearing the way for work on rust-lang#90317.
Miri: relax fn ptr check

As discussed in rust-lang/unsafe-code-guidelines#72 (comment), the function pointer check done by Miri is currently overeager: contrary to our usual principle of only checking rather uncontroversial validity invariants, we actually check that the pointer points to a real function.

So, this relaxes the check to what the validity invariant probably will be (and what the reference already says it is): the function pointer must be non-null, and that's it.

The check that CTFE does on the final value of a constant is unchanged -- CTFE recurses through references, so it makes some sense to also recurse through function pointers. We might still want to relax this in the future, but that would be a separate change.

r? `@oli-obk`
…lan-DPC

remove feature gate in control_flow examples

Stabilization was done in rust-lang#91091, but the two examples weren't updated accordingly.

Probably too late to put it into stable, but it should be in the next release :)
Cleanup a few Decoder methods

This is just some simple follow up to rust-lang#93839.

r? `@nnethercote`
…atomics, r=petrochenkov

riscv32imc_esp_espidf: set max_atomic_width to 64

For espidf targets without native atomics, there is atomic emulation inside [the newlib component of espidf](https://github.com/espressif/esp-idf/blob/master/components/newlib/stdatomic.c), this has been extended to support emulation up to 64bits therefore we are safe to increase the atomic width for the `riscv32imc_esp_espidf` target.

Closes esp-rs#107

cc: `@ivmarkov`
…=lnicola

⬆️ rust-analyzer

r? `@ghost`
Fix a typo in documentation of `array::IntoIter::new_unchecked`

🌸
@rustbot rustbot added T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. rollup A PR which is a rollup labels Feb 24, 2022
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=9

@bors
Copy link
Collaborator

bors commented Feb 24, 2022

📌 Commit bdcdd1b has been approved by matthiaskrgr

@bors bors added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Feb 24, 2022
@bors
Copy link
Collaborator

bors commented Feb 24, 2022

⌛ Testing commit bdcdd1b with merge 1204400...

@bors
Copy link
Collaborator

bors commented Feb 24, 2022

☀️ Test successful - checks-actions
Approved by: matthiaskrgr
Pushing 1204400 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Feb 24, 2022
@bors bors merged commit 1204400 into rust-lang:master Feb 24, 2022
@rustbot rustbot added this to the 1.61.0 milestone Feb 24, 2022
@rust-highfive
Copy link
Contributor

📣 Toolstate changed by #94314!

Tested on commit 1204400.
Direct link to PR: #94314

💔 miri on windows: test-pass → test-fail (cc @eddyb @RalfJung @oli-obk).
💔 miri on linux: test-pass → test-fail (cc @eddyb @RalfJung @oli-obk).

rust-highfive added a commit to rust-lang-nursery/rust-toolstate that referenced this pull request Feb 24, 2022
Tested on commit rust-lang/rust@1204400.
Direct link to PR: <rust-lang/rust#94314>

💔 miri on windows: test-pass → test-fail (cc @eddyb @RalfJung @oli-obk).
💔 miri on linux: test-pass → test-fail (cc @eddyb @RalfJung @oli-obk).
@rust-timer
Copy link
Collaborator

Finished benchmarking commit (1204400): comparison url.

Summary: This benchmark run shows 4 relevant improvements 🎉 to instruction counts.

  • Average relevant improvement: -0.8%
  • Largest improvement in instruction counts: -0.9% on incr-unchanged builds of externs opt

If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf.

@rustbot label: -perf-regression

@matthiaskrgr matthiaskrgr deleted the rollup-hmed8n7 branch March 11, 2022 15:32
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
merged-by-bors This PR was explicitly merged by bors. rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.