456625 (ObjIndex)45666B (AddSKingObjs) #33445671A (AddSChamObjs) #334456755 (AddVileObjs) #3344567AD (DRLG_SetMapTrans)456819 (LoadSetMap) #334@squidcc
Trying to fix this file but not having much success due to AddSKingObjs/AddSChamObjs/AddVileObjs loading up their ecx/edx arguments to SetObjMapRange() in the wrong order.
These functions are so basic that there's practically no wiggle room, unless there was another function that wrapped the call to ObjIndex() and it has been optimized away.
The only other explanations seem to be that we're either using the wrong compiler and/or wrong switches.
I did find /G6 (optimize for pentium pro) makes the push/pop instructions get emitted together, but "mov ecx,eax" still appears after them instead of before.
Fixed with #865
@galaxyhaxz Are all functions of this file now exact?
If yes we should remove the links to the issues in @AJenbo's comment and the label from this issue as well. This goes for #289 and #252 as well.
If no, why did we close it? In the past we left cpp-file issues open if there still where minimal differences in one or more of their functions. if this has changed #251 and #274 could be closed as well.
It's exact, the references are kept for historic reference.
It's exact, the references are kept for historic reference.
To clarify, anything that has the [x] box ticked is bin exact.
However, that being said. We should remove the minimal differences label from this issue (to avoid confusion), as it's now bin exact.
thanks for the clarification. the same should be done for #289 and #252, right?
thanks for the clarification. the same should be done for #289 and #252, right?
Done!
I'll take a cup of coffee with a side of laziness. thank you very much ;)
Most helpful comment
Done!