Fixed floating point comparison handlers for FCOM ST(i) and FCOMP ST(i) instructions

This commit is contained in:
bird_egop
2025-04-18 01:25:34 +03:00
parent 84d5652a62
commit 2a8cf9534e
6 changed files with 47 additions and 57 deletions
@@ -35,7 +35,8 @@ public class FcomFloat32Handler : InstructionHandler
byte modRm = Decoder.PeakByte();
byte reg = (byte)((modRm >> 3) & 0x7);
return reg == 2;
// special handling of modRM for D8 D0+i FCOM ST(i)
return reg == 2 && modRm is < 0xD0 or > 0xD7;
}
/// <summary>