mirror of
https://github.com/FEX-Emu/FEX.git
synced 2025-01-23 23:17:44 +00:00
OpcodeDispatcher: Handle VCVTSD2SI
This commit is contained in:
parent
31e332bd61
commit
3ebe141032
@ -5833,6 +5833,7 @@ void OpDispatchBuilder::InstallHostSpecificOpcodeHandlers() {
|
||||
{OPD(1, 0b10, 0x2C), 1, &OpDispatchBuilder::CVTFPR_To_GPR<4, false>},
|
||||
|
||||
{OPD(1, 0b10, 0x2D), 1, &OpDispatchBuilder::CVTFPR_To_GPR<4, true>},
|
||||
{OPD(1, 0b11, 0x2D), 1, &OpDispatchBuilder::CVTFPR_To_GPR<8, true>},
|
||||
|
||||
{OPD(1, 0b00, 0x2E), 1, &OpDispatchBuilder::UCOMISxOp<4>},
|
||||
{OPD(1, 0b01, 0x2E), 1, &OpDispatchBuilder::UCOMISxOp<8>},
|
||||
|
@ -128,7 +128,7 @@ void InitializeVEXTables() {
|
||||
{OPD(1, 0b11, 0x2C), 1, X86InstInfo{"VCVTTSD2SI", TYPE_UNDEC, FLAGS_NONE, 0, nullptr}},
|
||||
|
||||
{OPD(1, 0b10, 0x2D), 1, X86InstInfo{"VCVTSS2SI", TYPE_INST, FLAGS_MODRM | FLAGS_XMM_FLAGS | FLAGS_SF_DST_GPR, 0, nullptr}},
|
||||
{OPD(1, 0b11, 0x2D), 1, X86InstInfo{"VCVTSD2SI", TYPE_UNDEC, FLAGS_NONE, 0, nullptr}},
|
||||
{OPD(1, 0b11, 0x2D), 1, X86InstInfo{"VCVTSD2SI", TYPE_INST, GenFlagsSameSize(SIZE_64BITDEF) | FLAGS_MODRM | FLAGS_XMM_FLAGS | FLAGS_SF_DST_GPR, 0, nullptr}},
|
||||
|
||||
{OPD(1, 0b00, 0x2E), 1, X86InstInfo{"VUCOMISS", TYPE_INST, GenFlagsSizes(SIZE_128BIT, SIZE_32BIT) | FLAGS_MODRM | FLAGS_XMM_FLAGS, 0, nullptr}},
|
||||
{OPD(1, 0b01, 0x2E), 1, X86InstInfo{"VUCOMISD", TYPE_INST, GenFlagsSizes(SIZE_128BIT, SIZE_64BIT) | FLAGS_MODRM | FLAGS_XMM_FLAGS, 0, nullptr}},
|
||||
|
41
unittests/ASM/VEX/vcvtsd2si.asm
Normal file
41
unittests/ASM/VEX/vcvtsd2si.asm
Normal file
@ -0,0 +1,41 @@
|
||||
%ifdef CONFIG
|
||||
{
|
||||
"HostFeatures": ["AVX"],
|
||||
"RegData": {
|
||||
"RAX": "0x0000000000000001",
|
||||
"RBX": "0x0000000000000002",
|
||||
"RCX": "0x0000000000000003",
|
||||
"RDX": "0x0000000000000004"
|
||||
},
|
||||
"MemoryRegions": {
|
||||
"0x100000000": "4096"
|
||||
}
|
||||
}
|
||||
%endif
|
||||
|
||||
lea rdx, [rel .data]
|
||||
|
||||
vmovapd xmm0, [rdx + 8 * 0]
|
||||
vmovapd xmm1, [rdx + 8 * 2]
|
||||
|
||||
vcvtsd2si eax, xmm0
|
||||
vcvtsd2si rbx, xmm1
|
||||
|
||||
vcvtsd2si ecx, [rdx + 8 * 4]
|
||||
vcvtsd2si rdx, [rdx + 8 * 6]
|
||||
|
||||
hlt
|
||||
|
||||
align 32
|
||||
.data:
|
||||
dq 0x3FF0000000000000
|
||||
dq 0x5152535455565758
|
||||
|
||||
dq 0x4000000000000000
|
||||
dq 0x5152535455565758
|
||||
|
||||
dq 0x4008000000000000
|
||||
dq 0x5152535455565758
|
||||
|
||||
dq 0x4010000000000000
|
||||
dq 0x5152535455565758
|
Loading…
x
Reference in New Issue
Block a user