2025-04-15 22:45:09 +03:00
|
|
|
# FMUL instruction tests
|
|
|
|
# Format: RawBytes;Instructions
|
|
|
|
RawBytes;Instructions
|
|
|
|
|
|
|
|
# FMUL - Multiply floating point values
|
|
|
|
# ST(0), ST(i) form (D8 C8+i)
|
|
|
|
D8C8;[{ "Type": "Fmul", "Operands": ["ST(0)", "ST(0)"] }]
|
|
|
|
D8C9;[{ "Type": "Fmul", "Operands": ["ST(0)", "ST(1)"] }]
|
|
|
|
D8CA;[{ "Type": "Fmul", "Operands": ["ST(0)", "ST(2)"] }]
|
|
|
|
D8CB;[{ "Type": "Fmul", "Operands": ["ST(0)", "ST(3)"] }]
|
|
|
|
D8CC;[{ "Type": "Fmul", "Operands": ["ST(0)", "ST(4)"] }]
|
|
|
|
D8CD;[{ "Type": "Fmul", "Operands": ["ST(0)", "ST(5)"] }]
|
|
|
|
D8CE;[{ "Type": "Fmul", "Operands": ["ST(0)", "ST(6)"] }]
|
|
|
|
D8CF;[{ "Type": "Fmul", "Operands": ["ST(0)", "ST(7)"] }]
|
|
|
|
|
|
|
|
# ST(i), ST(0) form (DC C8+i)
|
|
|
|
DCC8;[{ "Type": "Fmul", "Operands": ["ST(0)", "ST(0)"] }]
|
|
|
|
DCC9;[{ "Type": "Fmul", "Operands": ["ST(1)", "ST(0)"] }]
|
|
|
|
DCCA;[{ "Type": "Fmul", "Operands": ["ST(2)", "ST(0)"] }]
|
|
|
|
DCCB;[{ "Type": "Fmul", "Operands": ["ST(3)", "ST(0)"] }]
|
|
|
|
DCCC;[{ "Type": "Fmul", "Operands": ["ST(4)", "ST(0)"] }]
|
|
|
|
DCCD;[{ "Type": "Fmul", "Operands": ["ST(5)", "ST(0)"] }]
|
|
|
|
DCCE;[{ "Type": "Fmul", "Operands": ["ST(6)", "ST(0)"] }]
|
|
|
|
DCCF;[{ "Type": "Fmul", "Operands": ["ST(7)", "ST(0)"] }]
|
|
|
|
|
|
|
|
# Memory operands
|
|
|
|
D80C2510000000;[{ "Type": "Fmul", "Operands": ["dword ptr [0x10]"] }]
|
|
|
|
DC0C2510000000;[{ "Type": "Fmul", "Operands": ["qword ptr [0x10]"] }]
|
2025-04-18 12:49:10 +03:00
|
|
|
D808;[{ "Type": "Fmul", "Operands": ["dword ptr [eax]"] }]
|
|
|
|
DC08;[{ "Type": "Fmul", "Operands": ["qword ptr [eax]"] }]
|
2025-04-15 22:45:09 +03:00
|
|
|
|
|
|
|
# FMULP - Multiply floating point values and pop
|
|
|
|
DEC8;[{ "Type": "Fmulp", "Operands": ["ST(0)", "ST(0)"] }]
|
|
|
|
DEC9;[{ "Type": "Fmulp", "Operands": ["ST(1)", "ST(0)"] }]
|
|
|
|
DECA;[{ "Type": "Fmulp", "Operands": ["ST(2)", "ST(0)"] }]
|
|
|
|
DECB;[{ "Type": "Fmulp", "Operands": ["ST(3)", "ST(0)"] }]
|
|
|
|
DECC;[{ "Type": "Fmulp", "Operands": ["ST(4)", "ST(0)"] }]
|
|
|
|
DECD;[{ "Type": "Fmulp", "Operands": ["ST(5)", "ST(0)"] }]
|
|
|
|
DECE;[{ "Type": "Fmulp", "Operands": ["ST(6)", "ST(0)"] }]
|
|
|
|
DECF;[{ "Type": "Fmulp", "Operands": ["ST(7)", "ST(0)"] }]
|
|
|
|
|
|
|
|
# FIMUL - Multiply integer with floating point
|
|
|
|
DA0C2510000000;[{ "Type": "Fimul", "Operands": ["dword ptr [0x10]"] }]
|
|
|
|
DE0C2510000000;[{ "Type": "Fimul", "Operands": ["word ptr [0x10]"] }]
|
2025-04-18 12:49:10 +03:00
|
|
|
DA08;[{ "Type": "Fimul", "Operands": ["dword ptr [eax]"] }]
|
|
|
|
DE08;[{ "Type": "Fimul", "Operands": ["word ptr [eax]"] }]
|