Skip to content

Further build time reductions - #318

Merged
Shnatsel merged 4 commits into
linebender:mainfrom
Shnatsel:more-build-time-cuts
Aug 7, 2026
Merged

Further build time reductions#318
Shnatsel merged 4 commits into
linebender:mainfrom
Shnatsel:more-build-time-cuts

Conversation

@Shnatsel

@Shnatsel Shnatsel commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Stacked on top of #317

In total this brings down x86 build time on my machine from 3s to 2.2s, on par with wide. This method has hit diminishing returns, but with #316 we can beat wide on build time.

Best reviewed commit by commit. Each one explains what it does and what the effects are.

The first commit fulfills #113

…ver and over.

The generated assembly before and after is identical. Build time drops from 3s to 2.5s, generated LoC from 108k to 85k, generated metadata size from 21MB to 17MB.

Fulfills issue 113
…ough the `u8x*` type implementations instead of duplicating the impl for every type. This is a byte-level op anyway.

Reduces build time from 2.55s to 2.35s, generated LoC from 85k to 78k, metadata size from 17MB to just under 16MB.

Assembly is identical before and after for all x86 targets.
…ands reversed.

This correctly handles various float edge cases, including -0 == +0, infinities and NaNs. Add tests explicitly testing NaNs for edge cases.

Removes 3,300 lines from the generated code, drops build time from 2.3s to 2.2s.
@Shnatsel
Shnatsel force-pushed the more-build-time-cuts branch from 951baf2 to 03eebdb Compare August 7, 2026 18:13

@LaurenzV LaurenzV left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice!

@Shnatsel
Shnatsel enabled auto-merge August 7, 2026 18:16
@Shnatsel
Shnatsel added this pull request to the merge queue Aug 7, 2026
Merged via the queue into linebender:main with commit b3f666b Aug 7, 2026
22 checks passed
@Shnatsel
Shnatsel deleted the more-build-time-cuts branch August 7, 2026 18:24
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