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

Rollup of 15 pull requests #76964

Merged
merged 36 commits into from
Sep 20, 2020
Merged

Rollup of 15 pull requests #76964

merged 36 commits into from
Sep 20, 2020

Commits on Sep 15, 2020

  1. Configuration menu
    Copy the full SHA
    176956c View commit details
    Browse the repository at this point in the history
  2. Extract some intrinsics out of rustc_codegen_llvm

    A significant amount of intrinsics do not actually need backend-specific
    behaviors to be implemented, instead relying on methods already in
    rustc_codegen_ssa. So, extract those methods out to rustc_codegen_ssa,
    so that each backend doesn't need to reimplement the same code.
    khyperia committed Sep 15, 2020
    Configuration menu
    Copy the full SHA
    21b0c12 View commit details
    Browse the repository at this point in the history

Commits on Sep 16, 2020

  1. Don't generate bootstrap usage unless it's needed

    Previously, `x.py` would unconditionally run `x.py build` to get the
    help message. After rust-lang#76165,
    when checking the CI stage was moved into `Config`, that would cause an
    assertion failure (but only only in CI!):
    
    ```
    thread 'main' panicked at 'assertion failed: `(left == right)`
      left: `1`,
     right: `2`', src/bootstrap/config.rs:619:49
    ```
    
    This changes bootstrap to only generate a help message when it needs
    to (when someone passes `--help`).
    jyn514 committed Sep 16, 2020
    Configuration menu
    Copy the full SHA
    c35ce3f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    94dae60 View commit details
    Browse the repository at this point in the history

Commits on Sep 17, 2020

  1. Fix wording in mir doc

    pickfire committed Sep 17, 2020
    Configuration menu
    Copy the full SHA
    b7c8bea View commit details
    Browse the repository at this point in the history
  2. Don't compile regex at every function call.

    Use `SyncOnceCell` to only compile it once.
    I believe this still adds some kind of locking mechanism?
    hbina committed Sep 17, 2020
    Configuration menu
    Copy the full SHA
    f4a7149 View commit details
    Browse the repository at this point in the history
  3. Remove intrinsics::arith_offset use from libarena

    The use of arith_offset was added in 803e9ae
    before the stable wrapper of the intrinsic was available.
    
    https://doc.rust-lang.org/stable/std/intrinsics/fn.arith_offset.html
    est31 committed Sep 17, 2020
    Configuration menu
    Copy the full SHA
    b479139 View commit details
    Browse the repository at this point in the history
  4. Replace const_generics feature gate with min_const_generics

    The latter is on the path to stabilization.
    est31 committed Sep 17, 2020
    Configuration menu
    Copy the full SHA
    4fe6ca3 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    ebdea01 View commit details
    Browse the repository at this point in the history
  6. fix array_windows docs

    lcnr committed Sep 17, 2020
    Configuration menu
    Copy the full SHA
    5f58e00 View commit details
    Browse the repository at this point in the history
  7. use strip_prefix over starts_with and manual slicing based on pattern…

    … length (clippy::manual_strip)
    matthiaskrgr committed Sep 17, 2020
    Configuration menu
    Copy the full SHA
    012974d View commit details
    Browse the repository at this point in the history
  8. docs array -> slice

    Co-authored-by: est31 <[email protected]>
    lcnr and est31 committed Sep 17, 2020
    Configuration menu
    Copy the full SHA
    764d307 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    1dd3df6 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    76ec3f8 View commit details
    Browse the repository at this point in the history
  11. Use intra-doc links

    denisvasilik committed Sep 17, 2020
    Configuration menu
    Copy the full SHA
    8e9ad31 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    3323a26 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    878dfa6 View commit details
    Browse the repository at this point in the history

Commits on Sep 18, 2020

  1. Apply suggestions from code review

    Co-authored-by: Joshua Nelson <[email protected]>
    poliorcetics and Joshua Nelson committed Sep 18, 2020
    Configuration menu
    Copy the full SHA
    4c92b3d View commit details
    Browse the repository at this point in the history
  2. support panic=abort in Miri

    RalfJung committed Sep 18, 2020
    Configuration menu
    Copy the full SHA
    0810c3e View commit details
    Browse the repository at this point in the history

Commits on Sep 20, 2020

  1. Configuration menu
    Copy the full SHA
    3435683 View commit details
    Browse the repository at this point in the history
  2. array pattern

    lcnr committed Sep 20, 2020
    Configuration menu
    Copy the full SHA
    bfb221b View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#76722 - ssomers:btree_send_sync, r=Mark-Sim…

    …ulacrum
    
    Test and fix Send and Sync traits of BTreeMap artefacts
    
    Fixes rust-lang#76686.
    
    I'm not quite sure what all this implies. E.g. comparing with the definitions for `NodeRef` in node.rs,  maybe an extra bound `T: 'a` is useful for something. The test compiles on stable/beta (apart from `drain_filter`) so I bet `Sync` is equally desirable.
    
    r? @Mark-Simulacrum
    RalfJung committed Sep 20, 2020
    Configuration menu
    Copy the full SHA
    f5e19a3 View commit details
    Browse the repository at this point in the history
  4. Rollup merge of rust-lang#76766 - khyperia:generic_intrinsics, r=eddyb

    Extract some intrinsics out of rustc_codegen_llvm
    
    A significant amount of intrinsics do not actually need backend-specific behaviors to be implemented, instead relying on methods already in rustc_codegen_ssa. So, extract those methods out to rustc_codegen_ssa, so that each backend doesn't need to reimplement the same code.
    
    Almost everything should be a pretty direct translation. A notable not-direct-translation is `add_with_overflow` and friends being changed to `bx.checked_binop`, but it's pretty simple.
    
    I could have been a lot more aggressive here and pulled out way more methods, and add a few new methods in the rustc_codegen_ssa "API". However, because this is my second rustc PR, I thought that moving those to a follow-up PR and doing more incremental changes here would be better (and I guess ask if this work is even desired in the first place). I'm hoping to eventually remove the mess of intrinsic handling in the backend entirely, which would be hecking fantastic ✨
    RalfJung committed Sep 20, 2020
    Configuration menu
    Copy the full SHA
    2911b8c View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#76800 - jyn514:usage, r=Mark-Simulacrum

    Don't generate bootstrap usage unless it's needed
    
    Previously, `x.py` would unconditionally run `x.py build` to get the
    help message. After rust-lang#76165,
    when checking the CI stage was moved into `Config`, that would cause an
    assertion failure (but only only in CI!):
    
    ```
    thread 'main' panicked at 'assertion failed: `(left == right)`
      left: `1`,
     right: `2`', src/bootstrap/config.rs:619:49
    ```
    
    This changes bootstrap to only generate a help message when it needs
    to (when someone passes `--help`).
    
    r? @Mark-Simulacrum
    This should fix the CI failures in rust-lang#76797 and rust-lang#75991.
    RalfJung committed Sep 20, 2020
    Configuration menu
    Copy the full SHA
    b603143 View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#76809 - matthiaskrgr:simplify_cond, r=varkor

    simplfy condition in ItemLowerer::with_trait_impl_ref()
    RalfJung committed Sep 20, 2020
    Configuration menu
    Copy the full SHA
    9b9192a View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#76815 - pickfire:patch-6, r=jonas-schievink

    Fix wording in mir doc
    RalfJung committed Sep 20, 2020
    Configuration menu
    Copy the full SHA
    c12feb3 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#76818 - hbina:dont_compile_regex_all_the_ti…

    …me, r=ecstatic-morse
    
    Don't compile regex at every function call.
    
    Use `SyncOnceCell` to only compile it once.
    I believe this still adds some kind of locking mechanism?
    
    Related issue: rust-lang#76817
    RalfJung committed Sep 20, 2020
    Configuration menu
    Copy the full SHA
    3268e33 View commit details
    Browse the repository at this point in the history
  9. Rollup merge of rust-lang#76821 - est31:remove_redundant_nightly_feat…

    …ures, r=oli-obk,Mark-Simulacrum
    
    Remove redundant nightly features
    
    Removes a bunch of redundant/outdated nightly features. The first commit removes a `core_intrinsics` use for which a stable wrapper has been provided since. The second commit replaces the `const_generics` feature with `min_const_generics` which might get stabilized this year. The third commit is the result of a trial/error run of removing every single feature and then adding it back if compile failed. A bunch of unused features are the result that the third commit removes.
    RalfJung committed Sep 20, 2020
    Configuration menu
    Copy the full SHA
    4322e1b View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#76823 - RalfJung:black-box-warn, r=joshtrip…

    …lett
    
    black_box: silence unused_mut warning when building with cfg(miri)
    RalfJung committed Sep 20, 2020
    Configuration menu
    Copy the full SHA
    df4e4ef View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#76825 - lcnr:array-windows-apply, r=varkor

    use `array_windows` instead of `windows` in the compiler
    
    I do think these changes are beautiful, but do have to admit that using type inference for the window length
    can easily be confusing. This seems like a general issue with const generics, where inferring constants adds an additional
    complexity which users have to learn and keep in mind.
    RalfJung committed Sep 20, 2020
    Configuration menu
    Copy the full SHA
    50d56bc View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#76827 - lcnr:array_windows-docs, r=jonas-sc…

    …hievink
    
    fix array_windows docs
    
    r? @Dylan-DPC
    RalfJung committed Sep 20, 2020
    Configuration menu
    Copy the full SHA
    c124d43 View commit details
    Browse the repository at this point in the history
  13. Rollup merge of rust-lang#76828 - matthiaskrgr:clippy_manual_strip, r…

    …=lcnr
    
    use strip_prefix over starts_with and manual slicing based on pattern length (clippy::manual_strip)
    RalfJung committed Sep 20, 2020
    Configuration menu
    Copy the full SHA
    bfa1904 View commit details
    Browse the repository at this point in the history
  14. Rollup merge of rust-lang#76840 - poliorcetics:intra-doc-core-sync-an…

    …d-future, r=jyn514
    
    Move to intra doc links in core/src/future
    
    Helps with rust-lang#75080.
    
    @rustbot modify labels: T-doc A-intra-doc-links
    
    r? @jyn514
    RalfJung committed Sep 20, 2020
    Configuration menu
    Copy the full SHA
    a815184 View commit details
    Browse the repository at this point in the history
  15. Rollup merge of rust-lang#76845 - Amjad50:fix-intra-docs-links, r=jyn514

    Use intra docs links in core::{ascii, option, str, pattern, hash::map}
    
    Partial fix for rust-lang#75080
    
    @rustbot modify labels: T-doc A-intra-doc-links
    
    r? @jyn514
    RalfJung committed Sep 20, 2020
    Configuration menu
    Copy the full SHA
    6d0890e View commit details
    Browse the repository at this point in the history
  16. Rollup merge of rust-lang#76853 - denisvasilik:intra-doc-links-core-w…

    …ake, r=jyn514
    
    Use intra-doc links in library/core/src/task/wake.rs
    
    Helps with rust-lang#75080.
    
    @rustbot modify labels: T-doc, A-intra-doc-links
    RalfJung committed Sep 20, 2020
    Configuration menu
    Copy the full SHA
    70f55a7 View commit details
    Browse the repository at this point in the history
  17. Rollup merge of rust-lang#76871 - RalfJung:miri-panic-abort, r=dtolnay

    support panic=abort in Miri
    
    This is needed for rust-lang/miri#1058 on Windows: we cannot run the inline-assembly versions of `abort`, so fall back to the intrinsic (which Miri supports).
    RalfJung committed Sep 20, 2020
    Configuration menu
    Copy the full SHA
    e5be14c View commit details
    Browse the repository at this point in the history