Skip to content

Add more J3D_ASSERTs#2491

Merged
TakaRikka merged 4 commits intozeldaret:mainfrom
LagoLunatic:j3dassert
Jun 20, 2025
Merged

Add more J3D_ASSERTs#2491
TakaRikka merged 4 commits intozeldaret:mainfrom
LagoLunatic:j3dassert

Conversation

@LagoLunatic
Copy link
Copy Markdown
Contributor

Yesterday cadmic and I discovered that the (void)0; from J3D_ASSERTs ifdefed out for retail inside of inlines affects a number of things, including regalloc throughout the whole function that calls any of these inlines (e.g. dMenu_Collect3D_c::setJ3D), and instruction ordering around the places these inlines get called (e.g. J3DMaterialTable::entryTexMtxAnimator).

There's probably more of these asserts I missed, worth keeping in mind to check for missing debug asserts in the future when working on functions that call J3D inlines.

@decomp-dev
Copy link
Copy Markdown

decomp-dev bot commented Jun 19, 2025

Report for GZ2E01 (0a899a4 - 2dd89d0)

📈 Matched code: 66.09% (+0.01%, +1196 bytes)
📈 Linked code: 27.49% (+0.02%, +2628 bytes)

✅ 2 new matches:
Unit Function Bytes Before After
framework/JSystem/J3DGraphAnimator/J3DMaterialAttach J3DMaterialTable::entryTexMtxAnimator(J3DAnmTextureSRTKey*) +8 98.32% 100.00%
framework/d/d_menu_collect dMenu_Collect3D_c::setJ3D(const char*, const char*, const char*) +5 99.48% 100.00%
📈 1 improvements in unmatched functions:
Unit Function Bytes Before After
framework/d/d_file_select dFile_select3D_c::setJ3D(const char*, const char*, const char*) +4 98.88% 99.40%

@TakaRikka TakaRikka merged commit ac06966 into zeldaret:main Jun 20, 2025
1 check passed
@LagoLunatic LagoLunatic deleted the j3dassert branch August 29, 2025 05:19
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