use the unstable carryless_mul in the pclmul implementation#4862
use the unstable carryless_mul in the pclmul implementation#4862folkertdev wants to merge 1 commit intorust-lang:masterfrom
carryless_mul in the pclmul implementation#4862Conversation
|
Thank you for contributing to Miri! A reviewer will take a look at your PR, typically within a week or two. |
|
CI uses |
|
It always the current rust nightly bootstrap compiler (the file storing that is here). If the job here fails, that means merging this PR would cause the next sync into the Rust repo to fail. |
|
The rust bootstrap compiler always gets updated around a release, so the next update will be around Feb 27th. It is a fundamental part of the rustc development process that new standard library features can only be used inside rustc/miri after the next bootstrap bump (when nightly becomes beta and then that beta becomes the bootstrap compiler). |
This comment has been minimized.
This comment has been minimized.
5b5c728 to
f4000f0
Compare
|
This PR was rebased onto a different master commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
|
|
||
| let dest = ecx.project_index(&dest, i)?; | ||
| ecx.write_scalar(Scalar::from_u128(result), &dest)?; | ||
| ecx.write_scalar(Scalar::from_u128(left.widening_carryless_mul(right)), &dest)?; |
There was a problem hiding this comment.
Please separately let-bind the result; currently it is easy to miss the main computation among all the other stuff.
Eventually we should be able to use the intrinsics in
stdarchso that miri no longer needs a custom implementation. Unfortunately the required optimizations didn't make it into LLVM 22, so we'll have to wait ~6 months.