Improve IndexOfAnyValues throughput for needles with 0 #84184
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.

Increases
IndexOfAnythroughput by 25-40% for values that contain a 0.Instead of doing "is ascii" detection at the end as a secondary step to rule out false positives, we can effectively merge it into the "pack sources" step in a cheaper way.
Codegen difference: https://www.diffchecker.com/DVRMVOkA
The main loop with AVX2

This should help with Regex after #83992, and with ASP.NET's header validation.