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 20 pull requests #49317

Closed
wants to merge 83 commits into from
Closed

Commits on Mar 16, 2018

  1. Add OnDrop

    Zoxc committed Mar 16, 2018
    Configuration menu
    Copy the full SHA
    683ad94 View commit details
    Browse the repository at this point in the history
  2. Replace Rc with Lrc

    Zoxc committed Mar 16, 2018
    Configuration menu
    Copy the full SHA
    3b43dcb View commit details
    Browse the repository at this point in the history
  3. Always print aborting due to n previous error(s) and only print it …

    …once for multi-threaded code
    Zoxc committed Mar 16, 2018
    Configuration menu
    Copy the full SHA
    910bf84 View commit details
    Browse the repository at this point in the history
  4. Update tests

    Zoxc committed Mar 16, 2018
    Configuration menu
    Copy the full SHA
    b1d872b View commit details
    Browse the repository at this point in the history

Commits on Mar 17, 2018

  1. rustbuild: Tweak where timing information goes

    This commit tweaks where timing and step information is printed out as part of
    the build, ensuring that we do it as close to the location where work happens as
    possible. In rustbuild various functions may perform long blocking work as
    dependencies are assembled, so if we print out timing information early on we
    may accidentally time more than just the step we were intending to time!
    alexcrichton committed Mar 17, 2018
    Configuration menu
    Copy the full SHA
    6fd4d67 View commit details
    Browse the repository at this point in the history
  2. Stabilise FromUtf8Error::as_bytes

    varkor committed Mar 17, 2018
    Configuration menu
    Copy the full SHA
    b57ea56 View commit details
    Browse the repository at this point in the history
  3. Add a -Z flag for LLVM align attributes on arguments

    LLVM seems to still put the assume calls in when inlining, so this probably isn't in a place where it can be turned on by default, but it's interesting to experiment with.
    
    For example, this makes `swap::<u64x8>` be 8x `vmovaps	ymm` instead of 16x `vmovups	xmm`, on my cpu.
    scottmcm committed Mar 17, 2018
    Configuration menu
    Copy the full SHA
    b498192 View commit details
    Browse the repository at this point in the history

Commits on Mar 18, 2018

  1. add simd_select intrinsic

    gnzlbg committed Mar 18, 2018
    Configuration menu
    Copy the full SHA
    9a44448 View commit details
    Browse the repository at this point in the history
  2. add codegen test

    gnzlbg committed Mar 18, 2018
    Configuration menu
    Copy the full SHA
    cca2604 View commit details
    Browse the repository at this point in the history

Commits on Mar 19, 2018

  1. Configuration menu
    Copy the full SHA
    c5c650d View commit details
    Browse the repository at this point in the history
  2. Stabilize termination_trait

    This stabilizes `main` with non-() return types; see rust-lang#48453.
    tmandry committed Mar 19, 2018
    Configuration menu
    Copy the full SHA
    97b3bf9 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e5a55e7 View commit details
    Browse the repository at this point in the history

Commits on Mar 20, 2018

  1. Configuration menu
    Copy the full SHA
    be29e52 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5ccf3ff View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    4eff4d9 View commit details
    Browse the repository at this point in the history
  4. Stabilize i128_type

    mark-i-m committed Mar 20, 2018
    Configuration menu
    Copy the full SHA
    1ef6948 View commit details
    Browse the repository at this point in the history
  5. Update nightly book

    mark-i-m committed Mar 20, 2018
    Configuration menu
    Copy the full SHA
    0fe791c View commit details
    Browse the repository at this point in the history
  6. Stabilize i128 feature too

    mark-i-m committed Mar 20, 2018
    Configuration menu
    Copy the full SHA
    b5e991e View commit details
    Browse the repository at this point in the history
  7. Rename unstable-book chapter

    mark-i-m committed Mar 20, 2018
    Configuration menu
    Copy the full SHA
    b7bec01 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    e4457b3 View commit details
    Browse the repository at this point in the history
  9. remove unneeded import

    mark-i-m committed Mar 20, 2018
    Configuration menu
    Copy the full SHA
    8a334c9 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    1197f9a View commit details
    Browse the repository at this point in the history
  11. Fix a few more

    mark-i-m committed Mar 20, 2018
    Configuration menu
    Copy the full SHA
    0027e98 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    bca8eeb View commit details
    Browse the repository at this point in the history
  13. update test

    mark-i-m committed Mar 20, 2018
    Configuration menu
    Copy the full SHA
    a347bb3 View commit details
    Browse the repository at this point in the history
  14. Fix e0658 ui test

    mark-i-m committed Mar 20, 2018
    Configuration menu
    Copy the full SHA
    cf41fde View commit details
    Browse the repository at this point in the history
  15. Remove library feature test

    mark-i-m committed Mar 20, 2018
    Configuration menu
    Copy the full SHA
    116dd62 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    53405ec View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    72334fe View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    57896ab View commit details
    Browse the repository at this point in the history

Commits on Mar 21, 2018

  1. did i get it right now?

    mark-i-m committed Mar 21, 2018
    Configuration menu
    Copy the full SHA
    ac33ec7 View commit details
    Browse the repository at this point in the history
  2. Revert "Stabilize termination_trait in 1.25, not 1.26"

    This reverts commit e5a55e7.
    tmandry committed Mar 21, 2018
    Configuration menu
    Copy the full SHA
    1937661 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    94bdeb6 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2cdc7af View commit details
    Browse the repository at this point in the history
  5. Bump racer and home

    This removes 10 dependencies from the build 🎉
    Eijebong committed Mar 21, 2018
    Configuration menu
    Copy the full SHA
    06f8103 View commit details
    Browse the repository at this point in the history
  6. Cargo fmt libtest

    topecongiro committed Mar 21, 2018
    Configuration menu
    Copy the full SHA
    75dcc61 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    b6934c9 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    178652a View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    1392179 View commit details
    Browse the repository at this point in the history
  10. implement minmax intrinsics

    gnzlbg committed Mar 21, 2018
    Configuration menu
    Copy the full SHA
    f6a35aa View commit details
    Browse the repository at this point in the history

Commits on Mar 22, 2018

  1. Fixed clockwise/counter-clockwise in atan2 documentation in f32 and f64

    and included that it returns radians
    Tacklebox committed Mar 22, 2018
    Configuration menu
    Copy the full SHA
    c116b0e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2b13d95 View commit details
    Browse the repository at this point in the history
  3. add tests

    gnzlbg committed Mar 22, 2018
    Configuration menu
    Copy the full SHA
    ecafa7b View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a1a3bf2 View commit details
    Browse the repository at this point in the history
  5. require llvm 6

    gnzlbg committed Mar 22, 2018
    Configuration menu
    Copy the full SHA
    88268d7 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    9839e5f View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    0118a65 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    9fa14e4 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    d87b403 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    1b0e9f5 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    73fa6d5 View commit details
    Browse the repository at this point in the history

Commits on Mar 23, 2018

  1. Allow installing rustfmt without config.extended

    This assertion was preventing `./x.py install rustfmt` if attempted
    without an "extended" build configuration, but it actually builds and
    installs just fine.
    cuviper committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    86f7d89 View commit details
    Browse the repository at this point in the history
  2. ci: Don't use Travis caches for docker images

    This commit moves away from caching on Travis to our own caching on S3 for
    caching docker layers between builds. Unfortunately the Travis caches have over
    time had a few critical pain points:
    
    * Caches are only updated for successful builds, meaning that if a build times
      out or fails in a different location the sucessfully-created docker images
      isn't always cached. While this makes sense as a general rule of caches it
      hurts our use cases.
    
    * Caches are per-branch and builder which means that we don't have a separate
      cache on each release channel. All our merges go through the `auto` branch
      which means that they're all sharing the same cache, even those for merging to
      master/beta. This means that PRs which switch between master/beta will keep
      rebuilting and having cache misses.
    
    * Caches have historically been invaliated somewhat regularly a little more
      aggressively than we'd want (I think).
    
    * We don't always need to update the contents of the cache if the Docker image
      didn't change at all, and saving off the docker layers can sometimes be quite
      expensive.
    
    For all these reasons this commit drops the usage of Travis's built-in caching
    support. Instead our own caching is used by storing blobs to S3. Normally this
    would be a very risky endeavour but we're basically priming a cache for a cache
    (docker) so if we get this wrong the failure mode is longer builds, not stale
    caches. We'll notice that pretty quickly and hopefully fix it!
    
    The logic here is inserted directly into the `src/ci/docker/run.sh` script to
    download an image based on a shasum of the `Dockerfile` and other assorted files.
    This blob, if found, is loaded into docker and we record what layers were
    inserted. After docker finishes the build (hopefully quickly with lots of cache
    hits) we then see the sha of the final image. If it's one of the layers we
    loaded then there's no need to update the cache. Otherwise we upload our layers
    to the global cache, possibly overwriting what we previously just downloaded.
    
    This is hopefully a step towards mitigating rust-lang#49278 although it doesn't
    completely fix it as it means we'll still probably have to retry builds that
    bust the cache.
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    a09e9e9 View commit details
    Browse the repository at this point in the history
  3. Vec<_> -> IndexVec<Local, _>

    oli-obk committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    bf8e4f2 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    b18b776 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    4ea4dd2 View commit details
    Browse the repository at this point in the history
  6. Simplify local accessors

    oli-obk committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    f9019ae View commit details
    Browse the repository at this point in the history
  7. Fix IE11 search

    GuillaumeGomez committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    90588a9 View commit details
    Browse the repository at this point in the history
  8. Remove getopts leftover from tree

    This was attempted but left incomplete in PR rust-lang#42664, where only the toml
    file was removed.
    Mark-Simulacrum committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    700fd5a View commit details
    Browse the repository at this point in the history
  9. Rollup merge of rust-lang#48482 - davidtwco:issue-47184, r=nikomatsakis

    NLL should identify and respect the lifetime annotations that the user wrote
    
    Part of rust-lang#47184.
    
    r? @nikomatsakis
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    8921c16 View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#49046 - Zoxc:error-summary, r=michaelwoerister

    Always print `aborting due to n previous error(s)`
    
    r? @michaelwoerister
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    19f8431 View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#49089 - alexcrichton:fix-timings, r=Mark-Si…

    …mulacrum
    
    rustbuild: Tweak where timing information goes
    
    This commit tweaks where timing and step information is printed out as part of
    the build, ensuring that we do it as close to the location where work happens as
    possible. In rustbuild various functions may perform long blocking work as
    dependencies are assembled, so if we print out timing information early on we
    may accidentally time more than just the step we were intending to time!
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    d17afd1 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#49101 - mark-i-m:stabilize_i128, r=nagisa

    Stabilize 128-bit integers 🎉
    
    cc rust-lang#35118
    
    EDIT: This should be merged only after the following have been merged:
    - [x] rust-lang/compiler-builtins#236
    - [x] rust-lang/book#1230
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    20b5bf6 View commit details
    Browse the repository at this point in the history
  13. Rollup merge of rust-lang#49121 - varkor:stabilise-from_utf8_error_as…

    …_bytes, r=bluss
    
    Stabilise FromUtf8Error::as_bytes
    
    Closes rust-lang#40895.
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    59b5887 View commit details
    Browse the repository at this point in the history
  14. Rollup merge of rust-lang#49122 - scottmcm:z-align-attr, r=cramertj

    Add a -Z flag for LLVM align attributes on arguments
    
    LLVM seems to still put the assume calls in when inlining, so this probably isn't in a place where it can be turned on by default, but it's interesting to experiment with.
    
    For example, this makes `mem::swap::<u64x8>` be 8x `vmovaps	ymm` instead of 16x `vmovups	xmm`, on my cpu.
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    4a3b5f7 View commit details
    Browse the repository at this point in the history
  15. Rollup merge of rust-lang#49141 - gnzlbg:simd_select, r=alexcrichton

    adds simd_select intrinsic
    
    The select SIMD intrinsic is used to select elements from two SIMD vectors using a mask:
    
    ```rust
    let mask = b8x4::new(true, false, false, true);
    let a = f32x4::new(1., 2., 3., 4.);
    let b = f32x4::new(5., 6., 7., 8.);
    assert_eq!(simd_select(mask, a, b), f32x4::new(1., 6., 7., 4.));
    ```
    
    The number of lanes between the mask and the vectors must match, but the vector width of the mask does not need to match that of the vectors. The mask is required to be a vector of signed integers.
    
    Note: this intrinsic will be exposed via `std::simd`'s vector masks - users are not expected to use it directly.
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    9b0a43e View commit details
    Browse the repository at this point in the history
  16. Rollup merge of rust-lang#49193 - davidtwco:issue-29893, r=alexcrichton

    Host compiler documentation
    
    Fixes rust-lang#29893. Rust Central Station PR: rust-lang/rust-central-station#40
    
    r? @alexcrichton
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    6986057 View commit details
    Browse the repository at this point in the history
  17. Rollup merge of rust-lang#49194 - Zoxc:unsafe-generator, r=cramertj

    Make resuming generators unsafe instead of the creation of immovable generators
    
    cc @withoutboats
    
    Fixes rust-lang#47787
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    23ce530 View commit details
    Browse the repository at this point in the history
  18. Rollup merge of rust-lang#49203 - Eijebong:lets-cleanup-dependencies,…

    … r=Mark-Simulacrum
    
    Bump racer and home
    
    This removes 10 dependencies from the build 🎉
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    7fbc373 View commit details
    Browse the repository at this point in the history
  19. Rollup merge of rust-lang#49235 - topecongiro:run-rustfmt/libtest, r=nrc

    Cargo fmt libtest
    
    r? @nrc
    
    Using `rustfmt 0.4.1- (87180d9 2018-03-16)` (`rustfmt --version` is a bit broken).
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    414e1d8 View commit details
    Browse the repository at this point in the history
  20. Rollup merge of rust-lang#49249 - gnzlbg:simd_minmax, r=alexcrichton

    implement minmax intrinsics
    
    This adds the `simd_{fmin,fmax}` intrinsics, which do a vertical (lane-wise) `min`/`max` for floating point vectors that's equivalent to Rust's `min`/`max` for `f32`/`f64`.
    
    It might make sense to make `{f32,f64}::{min,max}` use the `minnum` and `minmax` intrinsics as well.
    
    ---
    
    ~~HELP: I need some help with these. Either I should go to sleep or there must be something that I must be missing. AFAICT I am calling the `maxnum` builder correctly, yet rustc/LLVM seem to insert a call to `llvm.minnum` there instead...~~ EDIT: Rust's LLVM version is too old :/
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    913adba View commit details
    Browse the repository at this point in the history
  21. Rollup merge of rust-lang#49254 - Tacklebox:atan2_doc, r=QuietMisdreavus

    Fixed clockwise/counter-clockwise in atan2 documentation in f32 and f64 and included that it returns radians
    
    None
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    8a1731a View commit details
    Browse the repository at this point in the history
  22. Rollup merge of rust-lang#49273 - michaelwoerister:fix-extern-proc-ma…

    …cro-defkey, r=eddyb
    
    Fix DefKey lookup for proc-macro crates.
    
    Add a special case for proc-macro crates for `def_key()` in the metadata decoder (like we already have for many other methods in there). In the long run, it would be preferable to get rid of the need for special casing proc-macro crates (see rust-lang#49271).
    
    Fixes rust-lang#48739 (though I wasn't able to come up with a regression test, unfortunately)
    
    r? @eddyb
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    cd9fb22 View commit details
    Browse the repository at this point in the history
  23. Rollup merge of rust-lang#49274 - oli-obk:slow_miri, r=michaelwoerist…

    …er,eddyb
    
    Remove slow HashSet during miri stack frame creation
    
    fixes rust-lang#49237
    
    probably has a major impact on rust-lang#48846
    
    r? @michaelwoerister
    
    cc @eddyb I know you kept telling me to use vectors instead of hash containers... Now I know why.
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    f0ea0c7 View commit details
    Browse the repository at this point in the history
  24. Rollup merge of rust-lang#49284 - alexcrichton:use-our-own-cache, r=k…

    …ennytm
    
    ci: Don't use Travis caches for docker images
    
    This commit moves away from caching on Travis to our own caching on S3 for
    caching docker layers between builds. Unfortunately the Travis caches have over
    time had a few critical pain points:
    
    * Caches are only updated for successful builds, meaning that if a build times
      out or fails in a different location the sucessfully-created docker images
      isn't always cached. While this makes sense as a general rule of caches it
      hurts our use cases.
    
    * Caches are per-branch and builder which means that we don't have a separate
      cache on each release channel. All our merges go through the `auto` branch
      which means that they're all sharing the same cache, even those for merging to
      master/beta. This means that PRs which switch between master/beta will keep
      rebuilting and having cache misses.
    
    * Caches have historically been invaliated somewhat regularly a little more
      aggressively than we'd want (I think).
    
    * We don't always need to update the contents of the cache if the Docker image
      didn't change at all, and saving off the docker layers can sometimes be quite
      expensive.
    
    For all these reasons this commit drops the usage of Travis's built-in caching
    support. Instead our own caching is used by storing blobs to S3. Normally this
    would be a very risky endeavour but we're basically priming a cache for a cache
    (docker) so if we get this wrong the failure mode is longer builds, not stale
    caches. We'll notice that pretty quickly and hopefully fix it!
    
    The logic here is inserted directly into the `src/ci/docker/run.sh` script to
    download an image based on a shasum of the `Dockerfile` and other assorted files.
    This blob, if found, is loaded into docker and we record what layers were
    inserted. After docker finishes the build (hopefully quickly with lots of cache
    hits) we then see the sha of the final image. If it's one of the layers we
    loaded then there's no need to update the cache. Otherwise we upload our layers
    to the global cache, possibly overwriting what we previously just downloaded.
    
    This is hopefully a step towards mitigating rust-lang#49278 although it doesn't
    completely fix it as it means we'll still probably have to retry builds that
    bust the cache.
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    8c653a7 View commit details
    Browse the repository at this point in the history
  25. Rollup merge of rust-lang#49290 - cuviper:unextended-dist-rustfmt, r=…

    …nikomatsakis
    
    Allow installing rustfmt without config.extended
    
    This assertion was preventing `./x.py install rustfmt` if attempted
    without an "extended" build configuration, but it actually builds and
    installs just fine.
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    6c73231 View commit details
    Browse the repository at this point in the history
  26. Rollup merge of rust-lang#49311 - SimonSapin:bootstrap-vs-rustflags-t…

    …he-return, r=Mark-Simulacrum
    
    Use the same RUSTFLAGS for building and testing `bootstrap`
    
    This avoids recompiling the whole dependency graph twice for every `./x.py test` run.
    
    Fixes rust-lang#49215
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    0615e6b View commit details
    Browse the repository at this point in the history
  27. Configuration menu
    Copy the full SHA
    8cb9b83 View commit details
    Browse the repository at this point in the history
  28. Rollup merge of rust-lang#49314 - Mark-Simulacrum:remove-getopts, r=a…

    …lexcrichton
    
    Remove getopts leftover from tree
    
    This was attempted but left incomplete in PR rust-lang#42664, where only the toml
    file was removed.
    
    cc @alexcrichton
    alexcrichton committed Mar 23, 2018
    Configuration menu
    Copy the full SHA
    b928781 View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    ba92a7b View commit details
    Browse the repository at this point in the history

Commits on Mar 24, 2018

  1. Configuration menu
    Copy the full SHA
    bbdb20a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    455e542 View commit details
    Browse the repository at this point in the history
  3. More test fixes

    alexcrichton committed Mar 24, 2018
    Configuration menu
    Copy the full SHA
    fc23686 View commit details
    Browse the repository at this point in the history