-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Perf: Consolidate implementation of LeadingZeroCount #22497
Conversation
src/System.Private.CoreLib/shared/System/Buffers/Text/FormattingHelpers.CountDigits.cs
Show resolved
Hide resolved
|
Welcome to the dotnet/coreclr Perf help The following is a list of valid commands on this PR. To invoke a command, comment the indicated phrase on the PR The following commands are valid for all PRs and repositories. Click to expand
The following jobs are launched by default for each PR against dotnet/coreclr:master. Click to expand
The following optional jobs are available in PRs against dotnet/coreclr:master. Click to expand
Have a nice day! |
jkotas
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks
The outerloop builds shouldn't since those are corefx specific, but the concept of everything else is the same. |
|
@dotnet-bot test OSX10.12 x64 Checked Innerloop Build and Test please |
|
@dotnet-bot test OSX10.12 x64 Checked Innerloop Build and Test please |
|
Thanks for the PR here @grant-d. I'm fine with the two nits I had being looked at separately. |
…22497) * Perf: BitOps.LeadingZeroCount * CR fix * CR fixes * Optimization * Revert * Confirmed fix * Simplify * Return int * Fixes * Simplify * CR fixes * CR fixes * Fix unit failure on Linux-musl x64 Debug * CR fixes * CR fixes * Cleanup Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
|
Thanks @tannergooding, @jkotas and @davidfowl |
…22497) * Perf: BitOps.LeadingZeroCount * CR fix * CR fixes * Optimization * Revert * Confirmed fix * Simplify * Return int * Fixes * Simplify * CR fixes * CR fixes * Fix unit failure on Linux-musl x64 Debug * CR fixes * CR fixes * Cleanup Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
…22497) * Perf: BitOps.LeadingZeroCount * CR fix * CR fixes * Optimization * Revert * Confirmed fix * Simplify * Return int * Fixes * Simplify * CR fixes * CR fixes * Fix unit failure on Linux-musl x64 Debug * CR fixes * CR fixes * Cleanup Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
…22497) * Perf: BitOps.LeadingZeroCount * CR fix * CR fixes * Optimization * Revert * Confirmed fix * Simplify * Return int * Fixes * Simplify * CR fixes * CR fixes * Fix unit failure on Linux-musl x64 Debug * CR fixes * CR fixes * Cleanup Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
…22497) * Perf: BitOps.LeadingZeroCount * CR fix * CR fixes * Optimization * Revert * Confirmed fix * Simplify * Return int * Fixes * Simplify * CR fixes * CR fixes * Fix unit failure on Linux-musl x64 Debug * CR fixes * CR fixes * Cleanup Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
…22497) * Perf: BitOps.LeadingZeroCount * CR fix * CR fixes * Optimization * Revert * Confirmed fix * Simplify * Return int * Fixes * Simplify * CR fixes * CR fixes * Fix unit failure on Linux-musl x64 Debug * CR fixes * CR fixes * Cleanup Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
…22497) * Perf: BitOps.LeadingZeroCount * CR fix * CR fixes * Optimization * Revert * Confirmed fix * Simplify * Return int * Fixes * Simplify * CR fixes * CR fixes * Fix unit failure on Linux-musl x64 Debug * CR fixes * CR fixes * Cleanup Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
…22497) * Perf: BitOps.LeadingZeroCount * CR fix * CR fixes * Optimization * Revert * Confirmed fix * Simplify * Return int * Fixes * Simplify * CR fixes * CR fixes * Fix unit failure on Linux-musl x64 Debug * CR fixes * CR fixes * Cleanup Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
…22497) * Perf: BitOps.LeadingZeroCount * CR fix * CR fixes * Optimization * Revert * Confirmed fix * Simplify * Return int * Fixes * Simplify * CR fixes * CR fixes * Fix unit failure on Linux-musl x64 Debug * CR fixes * CR fixes * Cleanup Commit migrated from dotnet/coreclr@eee8c24
Commit migrated from dotnet/coreclr@361e7dc
There are several implementations of
LeadingZeroCountin the stack, with differing or branch-heavy implementations.(IntPtr)was missing, causing some units to fail. Note the idiom used to convert fromlongtoIntPtrinexpensively.BitOpsmethods pass unitscc @tannergooding