Skip to content

feat(libc): _Cnd_init_with_default_name_override (PPSA34015) - #6088

Merged
oneandonlydean merged 1 commit into
boykopovar:mainfrom
notaxeltv:feat/libc-cnd-init-default-name-ppsa34015
Oct 18, 2026
Merged

oneandonlydean merged 1 commit into
boykopovar:mainfrom
notaxeltv:feat/libc-cnd-init-default-name-ppsa34015

Conversation

@notaxeltv

@notaxeltv notaxeltv commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

What

tools/import_audit.py lists absent libc.prx import jBOZAv6CwkM (_Cnd_init_with_default_name_override) for PPSA34015 and PPSA03541. Forwards to _Cnd_init and ignores the debug name, matching Ampr _Cnd_init_with_name.

Tested

Windows 10, WinLibs GCC 15.2.0, guest_libc_cnd_init_default_name passes. tools/check_conventions.py --base upstream/main passes.
PPSA03541 (UFC 5): without this export, app.exe fails at load with FAIL: unresolved ELF import jBOZAv6CwkM from libc.prx / GetLastError: 127. With it, the title loads Engine.Render.Core2.PlatformPs5, creates Vulkan/swapchain, then hits the known Job0 null call (#3123).

Checklist

  • Based on current main; no other open PR implements the same functions
  • One topic per PR; follow-ups go in a new PR
  • No comments in code except technical debt
  • Unimplemented paths throw (NotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file
  • No notes, investigation .md files or images added to the repository (attach them to this PR)
  • New third-party code is a submodule built from source (none)
  • Generic behaviour, not specific to one title
  • Depends on: none
  • Unblocks: PPSA34015, PPSA03541 (absent libc import jBOZAv6CwkM)
  • GPUs tested: n/a
  • AI-assisted: yes

Made with Cursor

Absent PPSA34015 import; forward to _Cnd_init like Ampr's named init.

Co-authored-by: Cursor <cursoragent@cursor.com>
@github-actions

Copy link
Copy Markdown

Progress report (3f0936a → e90616b)

📈 System libraries: 88.7% (+0.01%, +1 implemented functions)

✅ 1 implemented
Library Name
libc _Cnd_init_with_default_name_override_nid_postfix

This was referenced Oct 15, 2026
@github-actions

github-actions Bot commented Oct 15, 2026 •

Copy link
Copy Markdown

Some comparisons could not be completed because a pull request conflicts with the base branch. Review these shared files manually before concluding that there is no overlap.

Pull request Shared files not compared
PR 1835 core/libs/prx/libc/src/Threads.cpp
PR 5021 core/libs/prx/libc/CMakeLists.txt
core/libs/prx/libc/src/Threads.cpp
PR 6044 core/libs/prx/libc/CMakeLists.txt
PR 6222 core/libs/prx/libc/CMakeLists.txt
core/libs/prx/libc/src/Threads.cpp
PR 6334 core/libs/prx/libc/CMakeLists.txt
PR 6879 core/libs/prx/libc/src/Threads.cpp
PR 7084 core/libs/prx/libc/CMakeLists.txt
PR 7201 core/libs/prx/libc/CMakeLists.txt
core/libs/prx/libc/src/Threads.cpp
PR 7447 core/libs/prx/libc/CMakeLists.txt

@coltken95

Copy link
Copy Markdown

Tested on Linux x86-64 (Release build), with e90616b merged into main e16b2bc:

  • With the PR: guest_libc_cnd_init_default_name passes.
  • With main's libc sources (keeping this PR's test and its CMake registration): the test doesn't link (undefined reference to '_Cnd_init_with_default_name_override_nid_postfix').

AI-assisted: yes (Claude Code)

@adriadam10 adriadam10 self-assigned this Oct 16, 2026
@adriadam10

Copy link
Copy Markdown
Collaborator

Checked the NID (jBOZAv6CwkM), the forward to _Cnd_init (null handle still throws), the new test (fails to link without the change, passes with it) and the PR's ctest on Linux; merging once the full Build is green.

@oneandonlydean oneandonlydean self-assigned this Oct 18, 2026
@oneandonlydean
oneandonlydean merged commit 5f37c3e into boykopovar:main Oct 18, 2026
16 checks passed
@oneandonlydean

Copy link
Copy Markdown
Collaborator

Merged while @adriadam10 is away: the review passed and full CI is green on this head.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants