Test other GetInfo() overload too
@@ -207,6 +207,8 @@ namespace Iced.UnitTests.Intel.InstructionInfoTests {
var info2 = new InstructionInfoFactory().GetInfo(instr);
CheckEqual(ref info, ref info2, hasRegs2: true, hasMem2: true);
+ info2 = new InstructionInfoFactory().GetInfo(instr, InstructionInfoOptions.None);
+ CheckEqual(ref info, ref info2, hasRegs2: true, hasMem2: true);
info2 = new InstructionInfoFactory().GetInfo(instr, InstructionInfoOptions.NoMemoryUsage);
CheckEqual(ref info, ref info2, hasRegs2: true, hasMem2: false);
info2 = new InstructionInfoFactory().GetInfo(instr, InstructionInfoOptions.NoRegisterUsage);
@@ -214,6 +216,15 @@ namespace Iced.UnitTests.Intel.InstructionInfoTests {
info2 = new InstructionInfoFactory().GetInfo(instr, InstructionInfoOptions.NoRegisterUsage | InstructionInfoOptions.NoMemoryUsage);
CheckEqual(ref info, ref info2, hasRegs2: false, hasMem2: false);
+ info2 = instr.GetInfo(InstructionInfoOptions.None);
+ CheckEqual(ref info, ref info2, hasRegs2: true, hasMem2: true);
+ info2 = instr.GetInfo(InstructionInfoOptions.NoMemoryUsage);
+ CheckEqual(ref info, ref info2, hasRegs2: true, hasMem2: false);
+ info2 = instr.GetInfo(InstructionInfoOptions.NoRegisterUsage);
+ CheckEqual(ref info, ref info2, hasRegs2: false, hasMem2: true);
+ info2 = instr.GetInfo(InstructionInfoOptions.NoRegisterUsage | InstructionInfoOptions.NoMemoryUsage);
+ CheckEqual(ref info, ref info2, hasRegs2: false, hasMem2: false);
+
Assert.Equal(info.Encoding, instr.Code.Encoding());
var cf = instr.Code.CpuidFeatures();
if (cf.Length == 1 && cf[0] == CpuidFeature.AVX && instr.Op1Kind == OpKind.Register && (code == Code.VEX_Vbroadcastss_xmm_xmmm32 || code == Code.VEX_Vbroadcastss_ymm_xmmm32 || code == Code.VEX_Vbroadcastsd_ymm_xmmm64))
