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

Miri subtree update #129410

Merged
merged 13 commits into from
Aug 22, 2024
Merged

Miri subtree update #129410

merged 13 commits into from
Aug 22, 2024

Commits on Aug 20, 2024

  1. Preparing for merge from rustc

    The Miri Cronjob Bot committed Aug 20, 2024
    Configuration menu
    Copy the full SHA
    e5072f0 View commit details
    Browse the repository at this point in the history
  2. Merge from rustc

    The Miri Cronjob Bot committed Aug 20, 2024
    Configuration menu
    Copy the full SHA
    bd9e7af View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    0305cee View commit details
    Browse the repository at this point in the history
  4. readdir_r shim: assume FreeBSD v12+

    needs a libc version bump
    RalfJung committed Aug 20, 2024
    Configuration menu
    Copy the full SHA
    221932f View commit details
    Browse the repository at this point in the history
  5. Auto merge of rust-lang#3748 - RalfJung:freebsd-readdir, r=RalfJung

    readdir_r shim: assume FreeBSD v12+
    
    Blocked on rust-lang/libc#3723 being released and propagating to std.
    bors committed Aug 20, 2024
    Configuration menu
    Copy the full SHA
    e6e294a View commit details
    Browse the repository at this point in the history
  6. Implement SHA256 SIMD intrinsics on x86

    It'd be useful to be able to verify code implementing SHA256 using SIMD
    since such code is a bit more complicated and at some points requires
    use of pointers. Until now `miri` didn't support x86 SHA256 intrinsics.
    This commit implements them.
    Kixunil committed Aug 20, 2024
    Configuration menu
    Copy the full SHA
    728876e View commit details
    Browse the repository at this point in the history
  7. Auto merge of rust-lang#3752 - Kixunil:simd-sha256, r=RalfJung

    Implement SHA256 SIMD intrinsics on x86
    
    Disclaimer: this is my first contribution to `miri`'s code. It's quite possible I'm missing something. This code works but may not be the cleanest/best possible.
    
    It'd be useful to be able to verify code implementing SHA256 using SIMD since such code is a bit more complicated and at some points requires use of pointers. Until now `miri` didn't support x86 SHA256 intrinsics. This commit implements them.
    bors committed Aug 20, 2024
    Configuration menu
    Copy the full SHA
    f203b42 View commit details
    Browse the repository at this point in the history

Commits on Aug 21, 2024

  1. Configuration menu
    Copy the full SHA
    13b02e3 View commit details
    Browse the repository at this point in the history
  2. Auto merge of rust-lang#3831 - RalfJung:zero-sized-protector, r=RalfJung

    borrow tracking: add a test for zero-sized protectors
    bors committed Aug 21, 2024
    Configuration menu
    Copy the full SHA
    41c65e6 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    fbdc191 View commit details
    Browse the repository at this point in the history

Commits on Aug 22, 2024

  1. Auto merge of rust-lang#3832 - RalfJung:epoll-test, r=oli-obk

    epoll test: avoid some subtly dangling pointers
    
    Turns out `let data = MaybeUninit::<u64>::uninit().as_ptr();` is a dangling pointer, the memory gets freed at the end of that line. For these cases we don't care as we don't actually access the pointer, but let's not do such subtle things.
    bors committed Aug 22, 2024
    Configuration menu
    Copy the full SHA
    695a4f9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b5d77d8 View commit details
    Browse the repository at this point in the history
  3. Auto merge of rust-lang#3833 - JoJoDeveloping:tb-fix-stack-overflow, …

    …r=RalfJung
    
    Make Tree Borrows Provenance GC no longer produce stack overflows
    
    Most functions operating on Tree Borrows' trees are carefully written to not cause stack overflows due to too much recursion. The one exception is [`Tree::keep_only_needed`](https://github.com/rust-lang/miri/blob/94f5588fafcc7d59fce60ca8f7af0208e6f618d4/src/borrow_tracker/tree_borrows/tree.rs#L724), which just uses regular recursion.
    This function is part of the provenance GC, so it is called regularly for every allocation in the program.
    
    Tests show that this is a problem in practice. For example, the test `fill::horizontal_line` in crate `tiny-skia` (version 0.11.4) is such a test.
    
    This PR changes this, this test no now longer crashes. Instead, it succeeds (after a _long_ time).
    bors committed Aug 22, 2024
    Configuration menu
    Copy the full SHA
    8b10bda View commit details
    Browse the repository at this point in the history