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

Curve25519: Conservatively force noinline on ADX code paths. #1717

Merged
merged 1 commit into from
Oct 9, 2023

Conversation

briansmith
Copy link
Owner

@briansmith briansmith self-assigned this Oct 9, 2023
@codecov
Copy link

codecov bot commented Oct 9, 2023

Codecov Report

Merging #1717 (2214138) into main (29fb827) will increase coverage by 0.01%.
Report is 1 commits behind head on main.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main    #1717      +/-   ##
==========================================
+ Coverage   96.05%   96.07%   +0.01%     
==========================================
  Files         135      135              
  Lines       20526    20526              
  Branches      217      217              
==========================================
+ Hits        19717    19720       +3     
+ Misses        771      769       -2     
+ Partials       38       37       -1     
Files Coverage Δ
third_party/fiat/curve25519_64_adx.h 100.00% <ø> (ø)

... and 2 files with indirect coverage changes

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@RalfJung
Copy link

RalfJung commented Oct 9, 2023

These functions don't seem to use any SIMD types in their signature so I don't think they are affected by rust-lang/rust#116573. But of course there might be other bugs lurking in target-feature handling...

@briansmith briansmith merged commit 3181d96 into main Oct 9, 2023
134 checks passed
@briansmith briansmith deleted the b/extra-safe branch October 9, 2023 18:52
@briansmith
Copy link
Owner Author

But of course there might be other bugs lurking in target-feature handling...

Exactly. The fact is, we only have two functions that cross a boundary of target-features, and we don't intend them to be inlined, and so it is easy for us to just force the no-inlining than rely on the compiler.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants