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 10 pull requests #74243

Closed
wants to merge 27 commits into from

Commits on Jun 25, 2020

  1. Modify type names on MSVC to make tuples .natvis compatible.

    - Mangles (T0, T1) as tuple<T0, T1>, possibly unblocking rust-lang#70052 "Update hashbrown to 0.8.0"
    - Prettifies Rust tuples similar to VS2017's std::tuple
    - Improves debuginfo test coverage
    MaulingMonkey committed Jun 25, 2020
    Configuration menu
    Copy the full SHA
    f8eb81b View commit details
    Browse the repository at this point in the history
  2. debuginfo: Define int/float types in terms of MSVC-recognized types.

    PDB debug information doesn't appear to be emitted for basic types.
    By defining u32 as a typedef for unsigned __int32 when targeting MSVC,
    we allow CDB and other debuggers to recognize "u32" as a type/expression.
    
    This in turn unblocks rust-lang#70052 "Update hashbrown to 0.8.0" by
    allowing $T1 ..= $T3 to resolve, which would otherwise fail to resolve
    when builtin types fail to parse.
    MaulingMonkey committed Jun 25, 2020
    Configuration menu
    Copy the full SHA
    24a728a View commit details
    Browse the repository at this point in the history

Commits on Jul 3, 2020

  1. Add support for storing code model to LLVM module IR

    This patch avoids undefined behavior by linking different object files.
    Also this would it could be propagated properly to LTO.
    
    See https://reviews.llvm.org/D52322 and https://reviews.llvm.org/D52323.
    kubo39 committed Jul 3, 2020
    Configuration menu
    Copy the full SHA
    825eb47 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b99a08a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    4a89c9f View commit details
    Browse the repository at this point in the history

Commits on Jul 4, 2020

  1. Fix for reviews

    kubo39 committed Jul 4, 2020
    Configuration menu
    Copy the full SHA
    67a5e2b View commit details
    Browse the repository at this point in the history

Commits on Jul 5, 2020

  1. Configuration menu
    Copy the full SHA
    5c24a94 View commit details
    Browse the repository at this point in the history

Commits on Jul 8, 2020

  1. Fix cross-compilation of LLVM to aarch64 Windows targets

    When cross-compiling, the LLVM build system recurses to build tools
    that need to run on the host system. However, since we pass cmake defines
    to set the compiler and target, LLVM still compiles these tools for the
    target system, rather than the host. The tools then fail to execute
    during the LLVM build.
    
    This change sets defines for the tools that need to run on the
    host (llvm-nm, llvm-tablegen, and llvm-config), so that the LLVM build
    does not attempt to build them, and instead relies on the tools already built.
    
    If compiling with clang-cl, this change also adds the `--target` option
    to specify the target triple. MSVC compilers do not require this, since there
    is a separate compiler binary for cross-compilation.
    arlosi committed Jul 8, 2020
    Configuration menu
    Copy the full SHA
    59f979f View commit details
    Browse the repository at this point in the history
  2. linker: illumos ld does not support --eh-frame-hdr

    As of rust-lang#73564, the --eh-frame-hdr flag is unconditionally
    passed to linkers on many platforms.  The illumos link editor does not
    currently support this flag.
    
    The linker machinery in the Rust toolchain currently seems to use the
    (potentially cross-compiled) target to choose linker flags, rather than
    looking at what might be running on the build system.  Disabling the
    flag for all illumos/Solaris targets seems like the best we can do for
    now without more serious surgery.
    jclulow committed Jul 8, 2020
    Configuration menu
    Copy the full SHA
    7fb421b View commit details
    Browse the repository at this point in the history

Commits on Jul 9, 2020

  1. Configuration menu
    Copy the full SHA
    520fb92 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    6864546 View commit details
    Browse the repository at this point in the history
  3. Tweak wording

    JohnTitor committed Jul 9, 2020
    Configuration menu
    Copy the full SHA
    a9b6476 View commit details
    Browse the repository at this point in the history

Commits on Jul 10, 2020

  1. Minor refactor for rustc_resolve diagnostics match

    Use `matches!` instead of old `if let`
    pickfire authored Jul 10, 2020
    Configuration menu
    Copy the full SHA
    1fb0ed0 View commit details
    Browse the repository at this point in the history

Commits on Jul 11, 2020

  1. Configuration menu
    Copy the full SHA
    dd872be View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b929f72 View commit details
    Browse the repository at this point in the history
  3. update miri

    RalfJung committed Jul 11, 2020
    Configuration menu
    Copy the full SHA
    6bda2e8 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    f5de23b View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#72920 - oli-obk:const_transmute, r=RalfJung

    Stabilize `transmute` in constants and statics but not const fn
    
    cc rust-lang#53605 (leaving issue open so we can add `transmute` to `const fn` later)
    
    Previous attempt: rust-lang#64011
    
    r? @RalfJung
    
    cc @rust-lang/wg-const-eval
    Manishearth authored Jul 11, 2020
    Configuration menu
    Copy the full SHA
    1f4e578 View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#73715 - MaulingMonkey:pr-natvis-tuples, r=A…

    …manieu
    
    debuginfo:  Mangle tuples to be natvis friendly, typedef basic types
    
    These changes are meant to unblock rust-lang#70052 "Update hashbrown to 0.8.0" by allowing the use of `tuple<u64, u64>` as a .natvis expression in MSVC style debuggers (MSVC, WinDbg, CDB, etc.)
    
    * f8eb81b does the actual mangling of `(u64, u64)` -> `tuple<u64, 64>`
    * 24a728a allows `u64` to resolve (fixing `$T1` / `$T2` when used to visualize `HashMap<u64, u64, ...>`)
    Manishearth authored Jul 11, 2020
    Configuration menu
    Copy the full SHA
    7457f48 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#74002 - kubo39:set-code-model, r=nagisa

    Add support for storing code model to LLVM module IR
    
    This patch avoids undefined behavior by linking different object files.
    Also this would it could be propagated properly to LTO.
    
    See https://reviews.llvm.org/D52322 and https://reviews.llvm.org/D52323.
    Manishearth authored Jul 11, 2020
    Configuration menu
    Copy the full SHA
    03032e8 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#74116 - arlosi:aarch64build, r=pietroalbini

    Fix cross compilation of LLVM to aarch64 Windows targets
    
    When cross-compiling, the LLVM build system recurses to build tools that need to run on the host system. However, since we pass cmake defines to set the compiler and target, LLVM still compiles these tools for the target system, rather than the host. The tools then fail to execute during the LLVM build.
    
    This change sets defines for the tools that need to run on the host (llvm-nm, llvm-tablegen, and llvm-config), so that the LLVM build does not attempt to build them, and instead relies on the tools already built.
    
    If compiling with clang-cl, adds the `--target` option to specify the target triple. MSVC compilers do not require this, since there is a separate compiler binary for each cross-compilation target.
    
    Related issue: rust-lang#72881
    Requires LLVM change: rust-lang/llvm-project#67
    Manishearth authored Jul 11, 2020
    Configuration menu
    Copy the full SHA
    b68d0e6 View commit details
    Browse the repository at this point in the history
  9. Rollup merge of rust-lang#74167 - jclulow:illumos-linker-eh-frame-hdr…

    …-fix, r=petrochenkov
    
    linker: illumos ld does not support --eh-frame-hdr
    
    As of rust-lang#73564, the --eh-frame-hdr flag is unconditionally
    passed to linkers on many platforms.  The illumos link editor does not
    currently support this flag.
    
    The linker machinery in the Rust toolchain currently seems to use the
    (potentially cross-compiled) target to choose linker flags, rather than
    looking at what might be running on the build system.  Disabling the
    flag for all illumos/Solaris targets seems like the best we can do for
    now without more serious surgery.
    Manishearth authored Jul 11, 2020
    Configuration menu
    Copy the full SHA
    22b8ad3 View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#74168 - JohnTitor:help-for-in-band-lifetime…

    …s, r=petrochenkov
    
    Add a help to use `in_band_lifetimes` in nightly
    
    Fixes rust-lang#73775
    Manishearth authored Jul 11, 2020
    Configuration menu
    Copy the full SHA
    dce3fb7 View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#74197 - estebank:self-sugg, r=petrochenkov

    Reword incorrect `self` token suggestion
    Manishearth authored Jul 11, 2020
    Configuration menu
    Copy the full SHA
    1bd03b2 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#74213 - pickfire:patch-1, r=jonas-schievink

    Minor refactor for rustc_resolve diagnostics match
    
    Use `matches!` instead of old `if let`
    Manishearth authored Jul 11, 2020
    Configuration menu
    Copy the full SHA
    2e95d26 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    89c75bd View commit details
    Browse the repository at this point in the history
  14. Rollup merge of rust-lang#74241 - RalfJung:miri, r=RalfJung

    update miri
    
    This incorporates rust-lang/miri#1474. [Last time](rust-lang#74146) that change caused trouble but I fixed xargo since then and [now it should work](rust-lang#74146 (comment)).
    
    Cc @rust-lang/miri r? @ghost
    Manishearth authored Jul 11, 2020
    Configuration menu
    Copy the full SHA
    d6c4c9e View commit details
    Browse the repository at this point in the history