Repository navigation
Conversation
Reconstruct fourteen eight-slot and three three-slot lookup variants, preserving probe arithmetic, empty slots and distinct deleted markers. Co-Authored-By: Codex <noreply@openai.com>
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.
Adds matching C for seventeen PAL fixed-size hash-table lookup variants: fourteen eight-slot routines (112 bytes each) and three three-slot routines (128 bytes each), totaling 1,952 bytes. The loops retain key/value offsets
0x08/0x0C, eight-byte entry stride, probe increment0x13D573, early exit on an empty slot, distinct deleted-entry marker addresses, and the original probe limit.Each one-byte deleted marker is defined as zero-initialized C data. Its address and zero-initialization were checked against PAL
.bss; marker identity is preserved separately for every variant. No retail data is included.Validation:
tools/cc.sh: all seventeen functions match their direct PAL catalogue addresses, with only object relocation fields masked.R_MIPS_GPREL16references through the objects'.reginfoGP values and named data symbols. Retail's PAL GP0x002259FFwas derived from startup instructions at0x00157678/0x0015768Cand the move to GP at0x001576A0.otherrows, preserving every previous row. Regenerated reports/README; the US report is semantically unchanged.tools/progress.py --checkandtools/match_map.py --check, plusgit diff --check, pass.The baseline sources passed a full compilation in preceding work; these final new sources were compiled and checked separately. No US retail image is available locally, so global US match/relocation audits were not run. The compiler/assembler pipeline is unchanged. No disassembly, SDK sources or toolchain files are included.
Based directly on upstream main, independently of the other open contributions. PAL increases from 5,138 / 396,888 to 5,155 matched functions / 398,840 bytes. The PAL
0x00509088candidate is excluded because the existing US source already owns that identifier; its map row is unchanged.