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 6 pull requests #60969

Merged
merged 23 commits into from
May 20, 2019
Merged

Rollup of 6 pull requests #60969

merged 23 commits into from
May 20, 2019

Commits on May 6, 2019

  1. Test interaction of unions with non-zero/niche-filling optimization

    Notably this nails down part of the behavior that MaybeUninit assumes,
    e.g. that a Option<MaybeUninit<&u8>> does not take advantage of non-zero
    optimization, and thus is a safe construct.
    petertodd committed May 6, 2019
    Configuration menu
    Copy the full SHA
    48d1be4 View commit details
    Browse the repository at this point in the history

Commits on May 7, 2019

  1. Configuration menu
    Copy the full SHA
    76c5229 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    aa1db24 View commit details
    Browse the repository at this point in the history

Commits on May 15, 2019

  1. Update lib.rs

    chandde authored May 15, 2019
    Configuration menu
    Copy the full SHA
    b5febe7 View commit details
    Browse the repository at this point in the history

Commits on May 16, 2019

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

Commits on May 18, 2019

  1. Configuration menu
    Copy the full SHA
    70f78b3 View commit details
    Browse the repository at this point in the history
  2. fix line length

    chandde committed May 18, 2019
    Configuration menu
    Copy the full SHA
    759921e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b5d4bd2 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    c78af2b View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    6063777 View commit details
    Browse the repository at this point in the history

Commits on May 19, 2019

  1. Configuration menu
    Copy the full SHA
    a91ad60 View commit details
    Browse the repository at this point in the history
  2. Stop using gensyms in HIR lowering

    These names aren't ever handled by resolve, so there's no reason to
    make them gensyms.
    matthewjasper committed May 19, 2019
    Configuration menu
    Copy the full SHA
    6bb3980 View commit details
    Browse the repository at this point in the history
  3. Fix data types indication

    Fix the data types indication in basic examples of the Trait std::fmt::LowerExp and std::fmt::UpperExp.
    Since there aren’t any type annotation on the let statement using the number 42.0, they are of type f64 according to The Book:
    https://doc.rust-lang.org/book/ch03-02-data-types.html#floating-point-types
    VeryTastyTomato authored May 19, 2019
    Configuration menu
    Copy the full SHA
    a759565 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    8e99c76 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    3f5c743 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    2baab0e View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    ec853ba View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#60590 - petertodd:2018-test-union-nonzero, …

    …r=nikomatsakis,Centril
    
    Test interaction of unions with non-zero/niche-filling optimization
    
    Notably this nails down part of the behavior that MaybeUninit assumes, e.g. that a Option<MaybeUninit<&u8>> does not take advantage of non-zero optimization, and thus is a safe construct.
    
    It also verifies the status quo: that even unions that could theoretically take advantage of niches don't. (relevant: rust-lang#36394)
    Centril authored May 19, 2019
    Configuration menu
    Copy the full SHA
    f9d65c0 View commit details
    Browse the repository at this point in the history
  9. Rollup merge of rust-lang#60745 - wesleywiser:const_prop_into_termina…

    …tors, r=oli-obk
    
    Perform constant propagation into terminators
    
    Perform constant propagation into MIR `Assert` and `SwitchInt` `Terminator`s which in some cases allows them to be removed by the branch simplification pass.
    
    r? @oli-obk
    Centril authored May 19, 2019
    Configuration menu
    Copy the full SHA
    5c84d77 View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#60895 - chandde:master, r=alexcrichton

    Enable thumbv7a-pc-windows-msvc target build end to end in rust/master
    
    With this PR, plus another commit rust-lang/compiler-builtins@cf98161, I'm able to build the target thumbv7a-pc-windows-msvc successfully, and I'm able to use the stage2 artifacts to build arm32 projects. The commit in compiler_builtins is in release 0.1.14, the current cargo.lock in rust master still uses 0.1.12, so I bumped the compiler_builtins version in cargo.lock to 0.1.15
    
    The command I used to build rust
    ```
    c:\python27\python.exe x.py build --host x86_64-pc-windows-msvc --build x86_64-pc-windows-msvc --target thumbv7a-pc-windows-msvc --verbose
    ```
    
    **Changes**
    1. update cargolock to use compiler_builtins 0.1.15
    2. handle libunwind in libtest for thumv7a the same as what we have for aarch64
    3. in llvm codegen add a field in CodegenContext to carry the arch, so later in create_msvc_imps function, the arch can be used to check against "x86", instead of 32 pointer width. Apparently Thumv7a is handled differently than x86.
    
    **Background**
    I'm from Microsoft working on enabling Azure IoTEdge on ARM32 Windows IoTCore, Azure IoTEdge has a component called IoTEdged written in rust as a NT service running on Windows, so we need to enable rust on thumbv7a in order to have full IoTEdge. My colleague had made some heavy lifting and we've been using our private toolchain to build IoTEdged in our devops pipeline, because at that time we cannot build thumbv7a target end to end successfully. This change is a followup to enable the end to end build for thumbv7a-pc-windows-msvc target.
    
    **Next step**
    I'll submit more changes to have this target built nightly in rust/master, to achieve the same availability for aarch64-pc-windows-msvc, indexed here https://rust-lang.github.io/rustup-components-history/aarch64-pc-windows-msvc.html and can be manually installed. **Please do share what takes to make this happen, is there a formal process I need to follow\?**
    Centril authored May 19, 2019
    Configuration menu
    Copy the full SHA
    815d3ba View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#60908 - GuillaumeGomez:errors, r=oli-obk

    Fix lints handling in rustdoc
    
    Part of rust-lang#60664: now lints are handled just like any other lints you would setup in rustc. Still remains to handle `missing code examples` and `missing_docs` as part of the same group.
    
    r? @oli-obk
    Centril authored May 19, 2019
    Configuration menu
    Copy the full SHA
    986aa36 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#60960 - matthewjasper:remove-lowering-gensy…

    …m, r=petrochenkov
    
    Stop using gensyms in HIR lowering
    
    These names aren't ever handled by resolve, so there's no reason to
    make them gensyms.
    
    Diagnostics wanting to behave differently for these variables should
    inspect either the `MatchSource`/`LocalSource` or the `Span`. All
    current diagnostics appear to do this.
    
    r? @petrochenkov
    Centril authored May 19, 2019
    Configuration menu
    Copy the full SHA
    787d49e View commit details
    Browse the repository at this point in the history
  13. Rollup merge of rust-lang#60962 - VeryTastyTomato:patch-1, r=jonas-sc…

    …hievink
    
    Fix data types indication
    
    Fix the data types indication in basic examples of the Trait std::fmt::LowerExp and std::fmt::UpperExp.
    Since there aren’t any type annotation on the let statement using the number 42.0, they are of type f64 according to The Book:
    https://doc.rust-lang.org/book/ch03-02-data-types.html#floating-point-types
    Centril authored May 19, 2019
    Configuration menu
    Copy the full SHA
    614ffe5 View commit details
    Browse the repository at this point in the history