rust-lang / miri

An interpreter for Rust's mid-level intermediate representation
Apache License 2.0
4.14k stars 318 forks source link

Implement LLVM x86 SSE4.2 intrinsics #3622

Closed TDecking closed 2 weeks ago

TDecking commented 1 month ago

SSE4.2 is arguably the least important SIMD extension for the x86 ISA, but it should still be supported for the sake of completeness.

RalfJung commented 1 month ago

@eduardosm you've done all the other x86 intrinsics -- can you help review this one? That would be great. :) (No pressure, and no rush either.)

RalfJung commented 1 month ago

@TDecking Thanks for the PR!

I see you've done a whole lot of back-and-forth with CI. Is running tests locally not working for you? We have instructions for that here. If that does not work, please describe your problem on Zulip; having to wait for CI adds a lot of friction so we should figure out how to get it all running on your machine.

TDecking commented 1 month ago

@eduardosm Thanks for your input. The implementation is fixed and ready.

TDecking commented 1 month ago

@eduardosm Ready.

TDecking commented 1 month ago

@rustbot ready

RalfJung commented 1 month ago

@eduardosm thanks a lot for your help with the initial review here! :yellow_heart:

RalfJung commented 1 month ago

@rustbot author

TDecking commented 1 month ago

@rustbot ready.

@RalfJung I've added some additional test cases, which should cover every possible code path now. I've also improved the documentation, but I'm not certain wether it is sufficient. To what extent may I assume that a maintainer will google the intrinsics when performing a major refactor?

RalfJung commented 3 weeks ago

@rustbot author

TDecking commented 2 weeks ago

@rustbot ready

RalfJung commented 2 weeks ago

I think this is good to go... I can't actually check whether all these intrinsics behave the way they should, but I guess people will complain if they see wrong results. ;)

Please squash the commits.

TDecking commented 2 weeks ago

@RalfJung done.

RalfJung commented 2 weeks ago

Thanks a lot for the PR and for staying with us through all the rounds of review! :-)

@bors r+

bors commented 2 weeks ago

:pushpin: Commit 562b72485989b5595b71005fd2bdd3fe43ff968a has been approved by RalfJung

It is now in the queue for this repository.

bors commented 2 weeks ago

:hourglass: Testing commit 562b72485989b5595b71005fd2bdd3fe43ff968a with merge 54d74712c444ca4090ed20eb3f58f7dbce2b3942...

bors commented 2 weeks ago

:sunny: Test successful - checks-actions Approved by: RalfJung Pushing 54d74712c444ca4090ed20eb3f58f7dbce2b3942 to master...