summaryrefslogtreecommitdiff
path: root/include/JSystem/J3DGraphBase
diff options
context:
space:
mode:
authorLagoLunatic <LagoLunatic@users.noreply.github.com>2025-01-27 01:01:05 -0500
committerGitHub <noreply@github.com>2025-01-26 22:01:05 -0800
commitbf4053fefa301a307065a07ffc4c3f9f970f2638 (patch)
treeafc005dc11ce0d21654c5023349ab074683a1f30 /include/JSystem/J3DGraphBase
parent5644936254b6617875c5a55caeae3e2526849d5a (diff)
Fix spurious differences when using `ninja diff` (#2294)
* Fix spurious differences when using ninja diff * Fix some clangd errors/warnings
Diffstat (limited to 'include/JSystem/J3DGraphBase')
-rw-r--r--include/JSystem/J3DGraphBase/J3DStruct.h4
-rw-r--r--include/JSystem/J3DGraphBase/J3DTevs.h4
-rw-r--r--include/JSystem/J3DGraphBase/J3DTransform.h12
3 files changed, 18 insertions, 2 deletions
diff --git a/include/JSystem/J3DGraphBase/J3DStruct.h b/include/JSystem/J3DGraphBase/J3DStruct.h
index 80f1cdabe1..29fd75b208 100644
--- a/include/JSystem/J3DGraphBase/J3DStruct.h
+++ b/include/JSystem/J3DGraphBase/J3DStruct.h
@@ -56,18 +56,22 @@ struct J3DTextureSRTInfo {
register const f32* src = &other.mScaleX;
register f32* dst = &mScaleX;
register f32 xy;
+#ifdef __MWERKS__
asm {
psq_l xy, 0(src), 0, 0
psq_st xy, 0(dst), 0, 0
};
+#endif
// Unclear why there's a 4 byte copy here.
*(u32*)&mRotation = *(u32*)&other.mRotation;
src = &other.mTranslationX;
dst = &mTranslationX;
+#ifdef __MWERKS__
asm {
psq_l xy, 0(src), 0, 0
psq_st xy, 0(dst), 0, 0
};
+#endif
}
}; // Size: 0x14
diff --git a/include/JSystem/J3DGraphBase/J3DTevs.h b/include/JSystem/J3DGraphBase/J3DTevs.h
index 136df1f7a5..f25c0a1a11 100644
--- a/include/JSystem/J3DGraphBase/J3DTevs.h
+++ b/include/JSystem/J3DGraphBase/J3DTevs.h
@@ -240,14 +240,14 @@ struct J3DTevOrder : public J3DTevOrderInfo {
};
extern u8 j3dTevSwapTableTable[1024];
-extern u8 const data_804563F8;
+extern u8 const j3dDefaultTevSwapTableID;
/**
* @ingroup jsystem-j3d
*
*/
struct J3DTevSwapModeTable {
- /* 8000E134 */ J3DTevSwapModeTable() { mIdx = data_804563F8; }
+ /* 8000E134 */ J3DTevSwapModeTable() { mIdx = j3dDefaultTevSwapTableID; }
J3DTevSwapModeTable(J3DTevSwapModeTableInfo const& info) {
mIdx = calcTevSwapTableID(info.field_0x0, info.field_0x1, info.field_0x2, info.field_0x3);
}
diff --git a/include/JSystem/J3DGraphBase/J3DTransform.h b/include/JSystem/J3DGraphBase/J3DTransform.h
index 9225c44605..28b79d8a9a 100644
--- a/include/JSystem/J3DGraphBase/J3DTransform.h
+++ b/include/JSystem/J3DGraphBase/J3DTransform.h
@@ -76,6 +76,7 @@ inline void J3DPSMtx33Copy(register Mtx3P src, register Mtx3P dst) {
register f32 fr2;
register f32 fr1;
register f32 fr0;
+#ifdef __MWERKS__
asm {
psq_l fr4, 0(src), 0, 0
psq_l fr3, 8(src), 0, 0
@@ -88,6 +89,7 @@ inline void J3DPSMtx33Copy(register Mtx3P src, register Mtx3P dst) {
psq_st fr1, 0x18(dst), 0, 0
stfs fr0, 0x20(dst)
}
+#endif
}
inline void J3DPSMtx33CopyFrom34(register MtxP src, register Mtx3P dst) {
@@ -97,6 +99,7 @@ inline void J3DPSMtx33CopyFrom34(register MtxP src, register Mtx3P dst) {
register f32 z2;
register f32 x_y3;
register f32 z3;
+#ifdef __MWERKS__
asm {
psq_l x_y1, 0(src), 0, 0
lfs z1, 8(src)
@@ -111,6 +114,7 @@ inline void J3DPSMtx33CopyFrom34(register MtxP src, register Mtx3P dst) {
psq_st x_y3, 24(dst), 0, 0
stfs z3, 0x20(dst)
}
+#endif
}
// regalloc issues
@@ -131,6 +135,7 @@ inline void J3DPSMulMtxVec(register MtxP mtx, register Vec* vec, register Vec* d
register f32 fra2;
register f32 fr01;
register f32 fr00;
+#ifdef __MWERKS__
asm {
psq_l fr00, 0(vec), 0, 0
psq_l fr2, 0(mtx), 0, 0
@@ -153,6 +158,7 @@ inline void J3DPSMulMtxVec(register MtxP mtx, register Vec* vec, register Vec* d
ps_sum0 fra6, fra5, fra6, fra5
psq_st fra6, 8(dst), 1, 0
}
+#endif
}
// regalloc issues
@@ -173,6 +179,7 @@ inline void J3DPSMulMtxVec(register MtxP mtx, register SVec* vec, register SVec*
register f32 fra2;
register f32 fr01;
register f32 fr00;
+#ifdef __MWERKS__
asm {
psq_l fr00, 0(vec), 0, 7
psq_l fr2, 0(mtx), 0, 0
@@ -195,6 +202,7 @@ inline void J3DPSMulMtxVec(register MtxP mtx, register SVec* vec, register SVec*
ps_sum0 fra6, fra5, fra6, fra5
psq_st fra6, 4(dst), 1, 7
}
+#endif
}
// regalloc issues
@@ -213,6 +221,7 @@ inline void J3DPSMulMtxVec(register Mtx3P mtx, register Vec* vec, register Vec*
register f32 fr2;
register f32 fr01;
register f32 fr00;
+#ifdef __MWERKS__
asm {
lis punit, PSMulUnit01@ha
psq_l fr00, 0(vec), 0, 0
@@ -239,6 +248,7 @@ inline void J3DPSMulMtxVec(register Mtx3P mtx, register Vec* vec, register Vec*
ps_sum0 fr6, fr5, fr6, fr5
psq_st fr6, 8(dst), 1, 0
}
+#endif
}
// regalloc issues
@@ -252,6 +262,7 @@ inline void J3DPSMulMtxVec(register Mtx3P mtx, register SVec* vec, register SVec
register f32 fr2;
register f32 fr01;
register f32 fr00;
+#ifdef __MWERKS__
asm {
lis punit, PSMulUnit01@ha
psq_l fr00, 0(vec), 0, 7
@@ -278,6 +289,7 @@ inline void J3DPSMulMtxVec(register Mtx3P mtx, register SVec* vec, register SVec
ps_sum0 fr6, fr5, fr6, fr5
psq_st fr6, 4(dst), 1, 7
}
+#endif
}
#endif /* J3DTRANSFORM_H */