Repository navigation
test(vk): guard report-word allocations and captured-copy offsets - #1136
Closed
pablitorockz wants to merge 2 commits into
Closed
pablitorockz wants to merge 2 commits into
pablitorockz wants to merge 2 commits into
Conversation
record_answers now reads the thread-local answers_in during pipeline preparation. The extracted fixture omitted that input and no longer compiled. Declare it in the fixture and exercise supplied answer metadata, its literal variant hash and the empty-vector case. Retain the existing canonical and strict live-binding checks in every environment configuration. Assisted-by: OpenAI Codex Co-Authored-By: Codex <noreply@openai.com>
The report-word fixture checked set semantics but still passed when repeated known words allocated scratch for a full merge. Count real allocations only around that path and require the known words to remain unchanged. The capture fixture exercised append_capture_copy directly, leaving the clipping and offsets in mirror_sync untested. Compile the actual caller block and check hand-derived source/destination ranges for clipped pages, separate capture buffers, gaps and a contiguous run. Keep the existing helper cases. Assisted-by: OpenAI Codex 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.
The existing memory fixtures can pass while a known-only report-word merge allocates scratch, or while
mirror_syncsupplies an incorrect source offset to the correctly tested copy helper. These cases protect the already-integrated memory optimizations against regressions.mirror_sync, then check hand-derived offsets and sizes for a pool with partial edge pages, interleaved capture buffers, gaps and a contiguous run. Retain the helper's existing byte-equivalence and overflow checks.This tests-only branch also carries the identical answer-domain fixture correction proposed in #1009, so it can run independently against
mainat8b2e1d3b895a5f890dcb886d904b62d6b38df2c7. That fixture declares the upstreamanswers_ininput and checks supplied metadata, its variant hash and the empty-vector case.Validation on Fedora 44 with Clang 23 and libstdc++ 16:
main.python -I -B tests/run_all.py --jobs 2): 124 passed, 0 failed, 10 skipped. Five skips needspirv-val; the other five require the game, a Windows Vulkan device or Windows structured exceptions.git diff --checkpasses. Only three test files are changed.The existing source-regressions runner discovers these fixtures automatically. The new cases compile and execute production functions/expressions without a game dump or GPU. This change adds regression coverage; it does not report a new runtime-performance gain. Windows execution remains for CI.