Work on weak order (#2979)

* JAUSectionHeap OK

* Slightly improve d_camera weak func order (12 -> 10)

* Minor d_a_alink fixes

* weak_order_diff.py: Change to take source file as cli argument instead of .o file

For cli autocompletion to work.

* Reorganize J3D structs (no change in weak order)
This commit is contained in:
LagoLunatic
2025-12-21 07:13:21 -05:00
committed by GitHub
parent 1f9b56cc65
commit 4e7c478259
15 changed files with 332 additions and 342 deletions
-10
View File
@@ -2019,13 +2019,3 @@ void J3DTexGenBlockPatched::calcPostTexMtxWithoutViewMtx(f32 const (*param_0)[4]
}
}
}
void J3DTevBlock::diffTevReg() {}
void J3DTevBlock::diffTevStageIndirect() {}
void J3DTevBlock::diffTevStage() {}
void J3DTevBlock::diffTexCoordScale() {}
void J3DTevBlock::diffTexNo() {}
-1
View File
@@ -53,7 +53,6 @@ namespace {
}
return field_0x8[short_id];
}
virtual ~TStreamDataMgr() {}
bool isValid() { return field_0x4; }
@@ -16,10 +16,10 @@ template<size_t N> class __bitset_base {
public:
__bitset_base();
bool test(size_t pos) const;
bool any() const;
void set(size_t pos, bool val);
void reset(size_t pos);
bool test(size_t pos) const;
bool any() const;
private:
size_t data[N];
};
+7 -7
View File
@@ -115,9 +115,9 @@ static cXyz l_wolfBaseAnime(1.0f, 88.63934f, -28.497932f);
static cXyz l_wolfRopeBaseAnime(0.115164f, 68.336296f, -7.667817f);
static u8 const lit_3757[12] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
static void dummy_lit_3757() {
Vec temp = { 0.0f, 0.0f, 0.0f };
}
#include "d/actor/d_a_alink_HIO_data.inc"
@@ -1191,8 +1191,6 @@ daAlink_FaceTexData const daAlink_c::m_faceTexDataTable[] = {
0x040D, 0x03A7,
};
static const Vec lit_5908 = { 0.0f, 0.0f, 0.0f };
#include "d/actor/d_a_alink_link.inc"
#include "d/actor/d_a_alink_cut.inc"
@@ -1685,9 +1683,11 @@ static dJntColData_c l_wolfJntColData[] = {
#include "d/actor/d_a_alink_swindow.inc"
daAlinkHIO_c::daAlinkHIO_c() {}
// TODO: These ctors and dtors below might need to go in a new .inc file that gets included right
// after d_a_alink_swindow.inc to slightly improve function order?
// Making them weak functions in a header doesn't seem to work at least.
// TODO: these dtors are probably supposed to be weak functions from the header
daAlinkHIO_c::daAlinkHIO_c() {}
daAlinkHIO_wolf_c::~daAlinkHIO_wolf_c() {}
+1 -1
View File
@@ -68,7 +68,7 @@ s16 daAlink_c::checkBodyAngleX(s16 param_0) {
return param_0;
}
Vec sp2C = lit_5908;
Vec sp2C = { 0.0f, 0.0f, 0.0f };
sp2C.y = 0.5f * field_0x598;
cXyz sp20;
-5
View File
@@ -6979,11 +6979,6 @@ BOOL daAlink_c::setWolfEnemyHangBitePos(fopEn_enemy_c* i_enemy) {
return 0;
}
/* #pragma push
#pragma force_active on
static u8 lit_50952[12];
#pragma pop */
static cXyz l_wolfBiteHitMarkScale(0.5f, 0.5f, 0.5f);
void daAlink_c::setWolfBiteDamage(fopEn_enemy_c* i_enemy) {