Found another one; differant macroblock, differant rd mode
The arguments being passed
x=63 y=24 pred={x=-64,y=-20} iFcode=2 qpel=0
msvc computes 4128837 (again)
gcc computes 14 (again)
I manually calculate 26 (again)
Call stack is
ModeDecision_BVOP_RD ->
SearchBF_RD (mode is Forward) ->
CheckCandidateRDBF ->
The following line
Code:
rd += BITS_MULT*(d_mv_bits(x, y, data->predMV, data->iFcode, data->qpel^data->qpel_precision)-2);