RSQRTPS and RCPPS are approximations whose low bits differ between Intel and AMD. Intel returns 0x3F7FF000 for 1/sqrt(1.0), and two Newton-Raphson steps on it settle on 0.99999994 instead of 1.0. PPSA21564 renormalises its spring quaternions that way: an identity quaternion keeps w at 0.99999994 with a zero axis, its axis-angle conversion then normalises the zero axis into NaNs, and the NaN bone poses reach keyframed physics bodies. A NaN body later moves to an invalid broadphase cell and the game crashes a few seconds into its hub level. --to-intel now replaces the VEX.128 register forms with an out-of-line stub that computes 1/sqrt(x) with SQRTPS and DIVPS (1/x with DIVPS), keeping the upper half of the destination cleared and the scratch register intact. A site with no room for the jump, including one followed by a branch target or a RIP-relative instruction, keeps the native instruction and is reported as kept instead of failing the relink. |
||
|---|---|---|
| .. | ||
| BUILD.md | ||
| CONVENTIONS.md | ||
| TechnicalDebt.md | ||