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 5 pull requests #70141

Closed
wants to merge 28 commits into from
Closed

Commits on Mar 11, 2020

  1. Compute the correct layout for variants of uninhabited enums and read…

    …d a long lost assertion
    
    This reverts part of commit 9712fa4.
    oli-obk committed Mar 11, 2020
    Configuration menu
    Copy the full SHA
    cdc7304 View commit details
    Browse the repository at this point in the history
  2. Comment nits

    Co-Authored-By: Ralf Jung <post@ralfj.de>
    oli-obk and RalfJung authored Mar 11, 2020
    Configuration menu
    Copy the full SHA
    ec88ffa View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    74608c7 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    24dc2cb View commit details
    Browse the repository at this point in the history

Commits on Mar 12, 2020

  1. codegen/mir: support polymorphic InstanceDefs

    This commit modifies the use of `subst_and_normalize_erasing_regions` on
    parts of the MIR bodies returned from `instance_mir`, so that
    `InstanceDef::CloneShim` and `InstanceDef::DropGlue` (where there is a
    type) do not perform substitutions. This avoids double substitutions and
    enables polymorphic `InstanceDef`s.
    
    Signed-off-by: David Wood <david@davidtw.co>
    davidtwco committed Mar 12, 2020
    Configuration menu
    Copy the full SHA
    bee1513 View commit details
    Browse the repository at this point in the history

Commits on Mar 16, 2020

  1. Configuration menu
    Copy the full SHA
    0bf5cae View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    fc82376 View commit details
    Browse the repository at this point in the history
  3. Inline QueryAccessor::query.

    cjgillot committed Mar 16, 2020
    Configuration menu
    Copy the full SHA
    cf238fd View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    1249032 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    b089433 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    486a082 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    a0f57e2 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    fa02dca View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    a18aa81 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    d125bbb View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    fa0794d View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    5dc7c2e View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    7d84f4f View commit details
    Browse the repository at this point in the history
  14. Simplify type aliases.

    cjgillot committed Mar 16, 2020
    Configuration menu
    Copy the full SHA
    7309b3c View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    3abd475 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    5557407 View commit details
    Browse the repository at this point in the history

Commits on Mar 17, 2020

  1. Make stuff private.

    cjgillot committed Mar 17, 2020
    Configuration menu
    Copy the full SHA
    8aa1328 View commit details
    Browse the repository at this point in the history

Commits on Mar 18, 2020

  1. Fix abort-on-eprintln during process shutdown

    This commit fixes an issue where if `eprintln!` is used in a TLS
    destructor it can accidentally cause the process to abort. TLS
    destructors are executed after `main` returns on the main thread, and at
    this point we've also deinitialized global `Lazy` values like those
    which store the `Stderr` and `Stdout` internals. This means that despite
    handling TLS not being accessible in `eprintln!`, we will fail due to
    not being able to call `stderr()`. This means that we'll double-panic
    quickly because panicking also attempt to write to stderr.
    
    The fix here is to reimplement the global stderr handle to avoid the
    need for destruction. This avoids the need for `Lazy` as well as the
    hidden panic inside of the `stderr` function.
    
    Overall this should improve the robustness of printing errors and/or
    panics in weird situations, since the `stderr` accessor should be
    infallible in more situations.
    alexcrichton committed Mar 18, 2020
    Configuration menu
    Copy the full SHA
    2c22da0 View commit details
    Browse the repository at this point in the history

Commits on Mar 19, 2020

  1. Rollup merge of rust-lang#69768 - oli-obk:union_field_ice, r=eddyb,Ra…

    …lfJung
    
    Compute the correct layout for variants of uninhabited enums
    
    r? @eddyb
    cc @RalfJung
    
    fixes rust-lang#69191
    cc rust-lang#69763
    Centril authored Mar 19, 2020
    Configuration menu
    Copy the full SHA
    46d8095 View commit details
    Browse the repository at this point in the history
  2. Rollup merge of rust-lang#69910 - cjgillot:polym, r=Zoxc

    Avoid query type in generics
    
    There are at the moment roughly 170 queries in librustc.
    The way ty::query is structured, a lot of code is duplicated for each query.
    I suspect this to be responsible for a part of librustc'c compile time.
    
    This PR reduces the amount of code generic on the query,
    replacing it by code generic on the key-value types.
    
    This is split out of rust-lang#69808,
    and should not contain the perf regression.
    
    cc rust-lang#65031
    Centril authored Mar 19, 2020
    Configuration menu
    Copy the full SHA
    50656db View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#69935 - davidtwco:issue-69925, r=eddyb

    codegen/mir: support polymorphic `InstanceDef`s
    
    cc rust-lang#69925
    
    This PR modifies the use of `subst_and_normalize_erasing_regions` on parts of the MIR bodies returned from `instance_mir`, so that `InstanceDef::CloneShim` and `InstanceDef::DropGlue` (where there is a type) do not perform substitutions. This avoids double substitutions and enables polymorphic `InstanceDef`s.
    
    r? @eddyb
    cc @nikomatsakis
    Centril authored Mar 19, 2020
    Configuration menu
    Copy the full SHA
    dc46a7f View commit details
    Browse the repository at this point in the history
  4. Rollup merge of rust-lang#69940 - tmiasko:llvm-api, r=hanna-kruppe

    librustc_codegen_llvm: Replace deprecated API usage
    Centril authored Mar 19, 2020
    Configuration menu
    Copy the full SHA
    b09b114 View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#69955 - alexcrichton:stderr-infallible, r=s…

    …fackler
    
    Fix abort-on-eprintln during process shutdown
    
    This commit fixes an issue where if `eprintln!` is used in a TLS
    destructor it can accidentally cause the process to abort. TLS
    destructors are executed after `main` returns on the main thread, and at
    this point we've also deinitialized global `Lazy` values like those
    which store the `Stderr` and `Stdout` internals. This means that despite
    handling TLS not being accessible in `eprintln!`, we will fail due to
    not being able to call `stderr()`. This means that we'll double-panic
    quickly because panicking also attempt to write to stderr.
    
    The fix here is to reimplement the global stderr handle to avoid the
    need for destruction. This avoids the need for `Lazy` as well as the
    hidden panic inside of the `stderr` function.
    
    Overall this should improve the robustness of printing errors and/or
    panics in weird situations, since the `stderr` accessor should be
    infallible in more situations.
    Centril authored Mar 19, 2020
    Configuration menu
    Copy the full SHA
    cb8af5e View commit details
    Browse the repository at this point in the history