Skip to content

decomp: speedup nextPos()#19324

Merged
AskAlexSharov merged 5 commits intomainfrom
alex/comp_nextPos2_34
Feb 20, 2026
Merged

decomp: speedup nextPos()#19324
AskAlexSharov merged 5 commits intomainfrom
alex/comp_nextPos2_34

Conversation

@AskAlexSharov
Copy link
Collaborator

@AskAlexSharov AskAlexSharov commented Feb 19, 2026

  • split nextPos(clear bool) to nextPosClear() and nextPos() - for better for inlining
  • added new pre-computed field getter.posMask
  • added new u64 typed field getter.dataLen to avoid type-casting in .HasNext() (most called method)

@AskAlexSharov AskAlexSharov merged commit cd61e31 into main Feb 20, 2026
25 of 26 checks passed
@AskAlexSharov AskAlexSharov deleted the alex/comp_nextPos2_34 branch February 20, 2026 07:43
AskAlexSharov added a commit that referenced this pull request Feb 25, 2026
based on #19324 

- split `nextPos()` to `nextPosSubtable()` and `nextPos()` to make
`nextPos()` inlinable. it also reduced amount of loops. also
`nextPosSubtable` called rare.
- added pre-computed `posTable.mask` field
- joinded 2 slices into 1 struct: `posEntry`

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
sudeepdino008 pushed a commit that referenced this pull request Mar 4, 2026
based on #19324 

- split `nextPos()` to `nextPosSubtable()` and `nextPos()` to make
`nextPos()` inlinable. it also reduced amount of loops. also
`nextPosSubtable` called rare.
- added pre-computed `posTable.mask` field
- joinded 2 slices into 1 struct: `posEntry`

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
sudeepdino008 pushed a commit that referenced this pull request Mar 4, 2026
based on #19324 

- split `nextPos()` to `nextPosSubtable()` and `nextPos()` to make
`nextPos()` inlinable. it also reduced amount of loops. also
`nextPosSubtable` called rare.
- added pre-computed `posTable.mask` field
- joinded 2 slices into 1 struct: `posEntry`

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
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