Skip to content

Fix allocation and test failure paths flagged by clang-tidy - #1164

Closed
oliverames wants to merge 2 commits into
seedds:mainfrom
oliverames:fix-inherited-renderer-lint
Closed

oliverames wants to merge 2 commits into
seedds:mainfrom
oliverames:fix-inherited-renderer-lint

Conversation

@oliverames

@oliverames oliverames commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

This fixes test failure paths found while investigating the clang-tidy ratchet. A failed pool lookup now stops the fixture before it reads the output, and the storage and sparse fixtures stop on missing Metal resources while recording failure.

Upstream main now includes the renderer allocation checks and RomFS environment fix originally in this PR. The merge uses upstream's allocation helper and baseline without adding allowances. It also includes upstream's modules_in fixture fix for the three errors in the previous Tool tests job.

Validation on merge head 4bb147e6:

  • python3 -m unittest dm.ios.tests.test_xcode_workflow: six tests passed, including the three previously failing derived-profile cases.
  • make -C dm/gfx/tests GAME=010015100B514000 t_cpu_storage t_pool_chunks t_sparse_tiles: all three fixtures compiled, with compiler warnings. They were not run on this head.
  • git diff --cached --check passed before the merge commit. Full clang-tidy and GPU tests were not rerun on this head. The earlier head passed the clang-tidy CI job; its GPU and filesystem results do not establish results for this merge.

@seedds, this is a prerequisite for the Switch 2 games running on iPhone work, including #1140, #1158 and #1160. No allocation-failure injection, phone or GPU runtime validation was performed on this merge. Keeping this draft pending CI and review.

@github-actions github-actions Bot added host The Horizon host: SVCs, services, threads, memory (dm/host) nvn NVN on Metal and its tests (dm/gfx/nvn, dm/gfx/tests) tools Tools and scripts (dm/tools, scripts) labels Nov 4, 2026
@oliverames

Copy link
Copy Markdown
Contributor Author

@seedds, flagging this shared CI prerequisite for the Switch 2 games running on iPhone PRs. Local LLVM 23.1.4 analysis of all 230 sources passes after the allocation/test-guard repairs, with the baseline reduced by one finding and no new allowances; affected GPU and filesystem tests pass. #1140, #1158 and #1160 now include it explicitly so their own changes can be reviewed separately once it lands. This is shared-path correctness/CI work, not a measured DKB performance improvement on iPhone 17 Pro Max; allocation-failure injection and physical-game validation remain unperformed.

@oliverames

Copy link
Copy Markdown
Contributor Author

@seedds Flagging from my open-PR index of my 32 open PRs here: this one stays draft pending CI and review, and it's the prerequisite #1140, #1158 and #1160 are waiting on. The description above is still the full picture, nothing new from me. Happy to rebase, split or retitle whenever review suits.

@oliverames
oliverames marked this pull request as ready for review November 5, 2026 22:15
@oliverames

Copy link
Copy Markdown
Contributor Author

@seedds Marking this ready for review now, so it stops waiting in draft on me. The remaining item from the description is still open: CI and the review itself; this is the prerequisite #1140, #1158 and #1160 sit behind. It can carry on alongside a review instead of ahead of it. The description stays the source of truth; happy to rebase, split or retitle whenever review suits.

@oliverames

Copy link
Copy Markdown
Contributor Author

Closing this PR as superseded: upstream main now incorporates the renderer allocation repairs, t_int_float_view and RomFS environment fixes, and module fixture handling.

@oliverames oliverames closed this Nov 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

host The Horizon host: SVCs, services, threads, memory (dm/host) nvn NVN on Metal and its tests (dm/gfx/nvn, dm/gfx/tests) tools Tools and scripts (dm/tools, scripts)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants