vello_common: Add a fast path in tiling for lines fully contained in the viewport#1635
Merged
Conversation
b0nes164
requested changes
May 10, 2026
Comment on lines
+840
to
+844
| let row_bottom_x = if row_bottom_y == line_bottom_y { | ||
| line_bottom_x | ||
| } else { | ||
| p0_x + (row_bottom_y - p0_y) * x_slope | ||
| }; |
Member
There was a problem hiding this comment.
I believe once you do this you don't need the min/max clamping to catch NaN's anymore, because this will actually quite gracefully catch the perfectly horizontal case? (And since a perfectly horizontal line is always contained to a single row, no other guards are neccessary.)
Can you add a TODO for this?
93ecc2c to
b88a6e6
Compare
705bba6 to
aa80dde
Compare
Member
|
Are the failures on ubuntu flakes? I'm rerunning the jobs. |
90e73b8 to
c0e316e
Compare
b0nes164
approved these changes
May 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Based on #1634.
push_rowis quite expensive, because a lot of logic is needed to account for culling. This PR adds a fast path for the common case where the line is completely contained in the viewport. This gets me to:Tested this against my PDF test suite and also in interactive mode.