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 7 pull requests #108070

Merged
merged 24 commits into from
Feb 15, 2023
Merged

Rollup of 7 pull requests #108070

merged 24 commits into from
Feb 15, 2023

Commits on Jan 17, 2023

  1. rework min_choice algorithm of member constraints

    See the inline comments for the description of the new algorithm.
    aliemjay committed Jan 17, 2023
    Configuration menu
    Copy the full SHA
    837c1af View commit details
    Browse the repository at this point in the history

Commits on Jan 21, 2023

  1. Remove some superfluous type parameters from layout.rs.

    Specifically remove V, which can always be VariantIdx, and F, which can
    always be Layout.
    mikebenfield committed Jan 21, 2023
    Configuration menu
    Copy the full SHA
    8df27d0 View commit details
    Browse the repository at this point in the history

Commits on Feb 6, 2023

  1. Remove redundant test.

    cjgillot committed Feb 6, 2023
    Configuration menu
    Copy the full SHA
    0d59b8c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    cd3649b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    9a6c04f View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    c48756c View commit details
    Browse the repository at this point in the history
  5. Improve value_analysis API.

    cjgillot committed Feb 6, 2023
    Configuration menu
    Copy the full SHA
    9af191f View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    67a8c16 View commit details
    Browse the repository at this point in the history
  7. Rename assign_idx methods.

    cjgillot committed Feb 6, 2023
    Configuration menu
    Copy the full SHA
    df889c9 View commit details
    Browse the repository at this point in the history

Commits on Feb 12, 2023

  1. Configuration menu
    Copy the full SHA
    903ca87 View commit details
    Browse the repository at this point in the history
  2. Enable #[thread_local] on armv6k-nintendo-3ds

    Since libctru 2.1.2 was released
    (https://github.com/devkitPro/libctru/releases/tag/v2.1.2) we should be
    able to use real #[thread_local] without corruption issues on the 3DS
    target.
    ian-h-chamberlain committed Feb 12, 2023
    Configuration menu
    Copy the full SHA
    e723e43 View commit details
    Browse the repository at this point in the history

Commits on Feb 13, 2023

  1. Typo.

    cjgillot committed Feb 13, 2023
    Configuration menu
    Copy the full SHA
    09797a4 View commit details
    Browse the repository at this point in the history

Commits on Feb 14, 2023

  1. Configuration menu
    Copy the full SHA
    43a5cc3 View commit details
    Browse the repository at this point in the history
  2. Remove BoxedResolver

    oli-obk committed Feb 14, 2023
    Configuration menu
    Copy the full SHA
    21f4c07 View commit details
    Browse the repository at this point in the history
  3. Inline the expansion query

    oli-obk committed Feb 14, 2023
    Configuration menu
    Copy the full SHA
    d156638 View commit details
    Browse the repository at this point in the history
  4. Simplify expansion logic

    oli-obk committed Feb 14, 2023
    Configuration menu
    Copy the full SHA
    241c6a4 View commit details
    Browse the repository at this point in the history
  5. Revert to using RtlGenRandom

    This is required due to `BCryptGenRandom` failing to load the necessary dll on some systems.
    ChrisDenton committed Feb 14, 2023
    Configuration menu
    Copy the full SHA
    dfd0afb View commit details
    Browse the repository at this point in the history

Commits on Feb 15, 2023

  1. Rollup merge of rust-lang#105300 - aliemjay:member-lower, r=oli-obk

    rework min_choice algorithm of member constraints
    
    See [this comment](rust-lang#105300 (comment)) for the description of the new algorithm.
    
    Fixes rust-lang#63033
    Fixes rust-lang#104639
    
    This uses a more general algorithm than rust-lang#89056 that doesn't treat `'static` as a special case. It thus accepts more code. For example:
    ```rust
    async fn test2<'s>(_: &'s u8, _: &'_ &'s u8, _: &'_ &'s u8) {}
    ```
    I claim it's more correct as well because it fixes rust-lang#104639.
    
    cc ``@nikomatsakis`` ``@lqd`` ``@tmandry`` ``@eholk`` ``@chenyukang`` ``@oli-obk``
    
    r? types
    Dylan-DPC committed Feb 15, 2023
    Configuration menu
    Copy the full SHA
    83f10ea View commit details
    Browse the repository at this point in the history
  2. Rollup merge of rust-lang#107163 - mikebenfield:parameters-pr, r=TaKO8Ki

    Remove some superfluous type parameters from layout.rs.
    
    Specifically remove V, which can always be VariantIdx, and F, which can always be Layout.
    Dylan-DPC committed Feb 15, 2023
    Configuration menu
    Copy the full SHA
    9800dbe View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#107173 - clubby789:suggest-array-length, r=…

    …compiler-errors
    
    Suggest the correct array length on mismatch
    
    Fixes rust-lang#107156
    
    I wasn't able to find a way to get the `Span` for the actual array size unfortunately, so this suggestion can't be applied automatically.
    
    ``@rustbot`` label +A-diagnostics
    Dylan-DPC committed Feb 15, 2023
    Configuration menu
    Copy the full SHA
    a110cf5 View commit details
    Browse the repository at this point in the history
  4. Rollup merge of rust-lang#107411 - cjgillot:dataflow-discriminant, r=…

    …oli-obk
    
    Handle discriminant in DataflowConstProp
    
    cc ``@jachris``
    r? ``@JakobDegen``
    
    This PR attempts to extend the DataflowConstProp pass to handle propagation of discriminants. We handle this by adding 2 new variants to `TrackElem`: `TrackElem::Variant` for enum variants and `TrackElem::Discriminant` for the enum discriminant pseudo-place.
    
    The difficulty is that the enum discriminant and enum variants may alias each another. This is the issue of the `Option<NonZeroUsize>` test, which is the equivalent of rust-lang/unsafe-code-guidelines#84 with a direct write.
    
    To handle that, we generalize the flood process to flood all the potentially aliasing places. In particular:
    - any write to `(PLACE as Variant)`, either direct or through a projection, floods `(PLACE as OtherVariant)` for all other variants and `discriminant(PLACE)`;
    - `SetDiscriminant(PLACE)` floods `(PLACE as Variant)` for each variant.
    
    This implies that flooding is not hierarchical any more, and that an assignment to a non-tracked place may need to flood a tracked place. This is handled by `for_each_aliasing_place` which generalizes `preorder_invoke`.
    
    As we deaggregate enums by putting `SetDiscriminant` last, this allows to propagate the value of the discriminant.
    
    This refactor will allow to make rust-lang#107009 able to handle discriminants too.
    Dylan-DPC committed Feb 15, 2023
    Configuration menu
    Copy the full SHA
    c78e3c7 View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#107968 - ian-h-chamberlain:feature/3ds-enab…

    …le-thread-local, r=Nilstrieb
    
    Enable `#[thread_local]` on armv6k-nintendo-3ds
    
    Since [libctru 2.1.2](https://github.com/devkitPro/libctru/releases/tag/v2.1.2)  was released we should now be able to use real `#[thread_local]` without corruption issues on the 3DS target.
    
    CC `@Meziu` `@AzureMarker` `@Techie-Pi`
    rust3ds/ctru-rs#91 (comment)
    Dylan-DPC committed Feb 15, 2023
    Configuration menu
    Copy the full SHA
    587e3df View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#108032 - oli-obk:un📦ing_resolver, r=petroch…

    …enkov
    
    Un📦ing the Resolver
    
    r? `@petrochenkov`
    
    pulled out of rust-lang#105462
    Dylan-DPC committed Feb 15, 2023
    Configuration menu
    Copy the full SHA
    504225c View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#108060 - ChrisDenton:rtlgenrandom, r=thomcc

    Revert to using `RtlGenRandom` as a fallback
    
    This is required due to `BCryptGenRandom` failing to load a dll it depends on.
    
    Fixes rust-lang#108059
    Dylan-DPC committed Feb 15, 2023
    Configuration menu
    Copy the full SHA
    ef6de70 View commit details
    Browse the repository at this point in the history