Skip to content

Add more expressive ZMIJ_AMD64_LEVEL variable. - #160

Open
TobiSchluter wants to merge 1 commit into
vitaut:mainfrom
TobiSchluter:reorganize_levels
Open

TobiSchluter wants to merge 1 commit into
vitaut:mainfrom
TobiSchluter:reorganize_levels

Conversation

@TobiSchluter

@TobiSchluter TobiSchluter commented Sep 17, 2026

Copy link
Copy Markdown
Contributor

Allows to encode more than just SSE2, SSE4.1. Mainly for the benefit of itoa which brings AVX2 variants.

This is mainly driven by @vitaut's question here #156 (comment) If the user can input random combinations of x64 features it becomes unwieldy to check every site against all possibilities.

I kept the SSE and SSE4_1 macros as backwards-compatible user-interface. They are also still used in the tests.

Built and tested across the levels, also inspected that the various combinations come out correctly.

ps I was missing a few checks in the first commit. I think it's not worth identifying the exact combinations of flags that will work with the code and only require those features, instead the code now hews closely to the microarchitecture level definitions.

Allows to encode more than just SSE2, SSE4.1. Mainly for the benefit of itoa which brings AVX2 variants.
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.

1 participant