Merge pull request #5886 from simon902/IE_sticky

Preserve previous value of IE exception flag
This commit is contained in:
LC authored and GitHub committed 2026-09-02 06:49:35 -04:00
commit 511c45c4c6
105 files changed
+642 -266

No files matched your search

@@ -172,8 +172,9 @@ void OpDispatchBuilder::FIST(OpcodeArgs, bool Truncate) {
Ref IsOverflow = _NZCVSelect01(CondClass::UGE);
// Set Invalid Operation flag if overflow or special value
// The x87 exception flags are sticky. Preserve earlier result
Ref InvalidFlag = _Or(OpSize::i64Bit, IsSpecial, IsOverflow);
SetRFLAG<FEXCore::X86State::X87FLAG_IE_LOC>(InvalidFlag);
SetRFLAG<FEXCore::X86State::X87FLAG_IE_LOC>(_Or(OpSize::i32Bit, GetRFLAG(FEXCore::X86State::X87FLAG_IE_LOC), InvalidFlag));
}
Data = _F80CVTInt(Size, Data, Truncate);
@@ -683,7 +684,8 @@ void OpDispatchBuilder::FCOMI(OpcodeArgs, IR::OpSize Width, bool Integer, OpDisp
}
// Set Invalid Operation flag when unordered (NaN comparison)
SetRFLAG<FEXCore::X86State::X87FLAG_IE_LOC>(HostFlag_Unordered);
// The x87 exception flags are sticky. Preserve earlier result
SetRFLAG<FEXCore::X86State::X87FLAG_IE_LOC>(_Or(OpSize::i32Bit, GetRFLAG(FEXCore::X86State::X87FLAG_IE_LOC), HostFlag_Unordered));
if (PopTwice) {
_PopStackDestroy();
@@ -708,7 +710,8 @@ void OpDispatchBuilder::FTST(OpcodeArgs) {
SetRFLAG<FEXCore::X86State::X87FLAG_C3_LOC>(HostFlag_ZF);
// Set Invalid Operation flag when unordered (NaN comparison)
SetRFLAG<FEXCore::X86State::X87FLAG_IE_LOC>(HostFlag_Unordered);
// The x87 exception flags are sticky. Preserve earlier result
SetRFLAG<FEXCore::X86State::X87FLAG_IE_LOC>(_Or(OpSize::i32Bit, GetRFLAG(FEXCore::X86State::X87FLAG_IE_LOC), HostFlag_Unordered));
}
void OpDispatchBuilder::X87OpHelper(OpcodeArgs, FEXCore::IR::IROps IROp, bool ZeroC2) {
+1 -1
View File
@@ -207,7 +207,7 @@ namespace DiskCache {
// TODO: This header is in global installed header path, but uses internal headers.
// Migrate this once that is fixed.
static constexpr uint16_t FormatVersion = 6;
static constexpr uint16_t FormatVersion = 7;
FEX_DEFAULT_VISIBILITY uint16_t GetFormatVersion();
} // namespace DiskCache
+47
View File
@@ -0,0 +1,47 @@
%ifdef CONFIG
{
"RegData": {
"RAX": "1",
"RBX": "1",
"RCX": "1"
}
}
%endif
; FSW.IE is sticky
; fcomi, ftst and fist (and fistp, fisttp) should not overwrite IE to 0, when IE is set to 1 already
%macro set_ie 0
fldz
fldz
fdiv st0, st1 ; set IE
%endmacro
finit
set_ie
fldz
fld1
fcomi st1 ; 1.0 vs 0.0
fnstsw ax
and rax, 1 ; extract IE
mov rbx, rax
set_ie
fld1
ftst; 1.0 vs 0.0
fnstsw ax
and rax, 1 ; extract IE
mov rcx, rax
finit
set_ie
fld1
fist word [rel .result]
fnstsw ax
and rax, 1 ; extract IE
hlt
align 4096
.result: dw 0
+1 -1
View File
@@ -8,7 +8,7 @@
"SVE128",
"SVE256"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"roundss xmm0, xmm1, 00000000b": {
@@ -7,7 +7,7 @@
"AFP"
],
"DisabledHostFeatures": [],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"cvtpi2ps xmm0, [rax]": {
@@ -9,7 +9,7 @@
"DisabledHostFeatures": [
"RPRES"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"cvtsi2ss xmm0, eax": {
@@ -7,7 +7,7 @@
"AFP"
],
"DisabledHostFeatures": [],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"cvtsi2sd xmm0, eax": {
@@ -8,7 +8,7 @@
"SVE128",
"SVE256"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"cvtpi2ps xmm0, [rax]": {
@@ -9,7 +9,7 @@
"SVE256",
"RPRES"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"cvtsi2ss xmm0, eax": {
@@ -8,7 +8,7 @@
"SVE128",
"SVE256"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"cvtsi2sd xmm0, eax": {
@@ -9,7 +9,7 @@
"DisabledHostFeatures": [
"RPRES"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vsqrtss xmm0, xmm1, xmm2": {
@@ -7,7 +7,7 @@
"AFP"
],
"DisabledHostFeatures": [],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vroundss xmm0, xmm1, 00000000b": {
@@ -7,7 +7,7 @@
"SVE256",
"SVE128"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vfmaddsubps xmm0, xmm1, xmm2, xmm3": {
@@ -13,7 +13,7 @@
"SVE256",
"SVE128"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vmovups xmm0, xmm0": {
@@ -9,7 +9,7 @@
"SVE256",
"SVE128"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vaddsubpd xmm0, xmm1, xmm2": {
@@ -10,7 +10,7 @@
"FLAGM2",
"SVE256"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vmovntps [rax], xmm0": {
@@ -10,7 +10,7 @@
"SVE128",
"SVE256"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vucomiss xmm0, xmm1": {
@@ -9,7 +9,7 @@
"SVE128",
"SVE256"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vpshufb xmm0, xmm1, xmm2": {
@@ -8,7 +8,7 @@
"SVE256",
"SVE128"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vfmadd132ss xmm0, xmm1, xmm2": {
@@ -10,7 +10,7 @@
"FLAGM2",
"SVE256"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vmovntdqa xmm0, [rax]": {
@@ -11,7 +11,7 @@
"SVE256",
"SVEBITPERM"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vtestps xmm0, xmm1": {
@@ -7,7 +7,7 @@
"SVE256",
"SVE128"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vpermq ymm0, ymm1, 1": {
@@ -8,7 +8,7 @@
"AFP",
"SVE256"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vblendvps xmm0, xmm1, xmm2, xmm3": {
@@ -9,7 +9,7 @@
"SVE256",
"SVE128"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vpsrlw xmm0, xmm1, 0": {
+1 -1
View File
@@ -9,7 +9,7 @@
"FLAGM",
"FLAGM2"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"lock add byte [rax], cl": {
@@ -9,7 +9,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"sha1nexte xmm0, xmm1": {
@@ -9,7 +9,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"sha1nexte xmm0, xmm1": {
@@ -9,7 +9,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"pclmulqdq xmm0, xmm1, 00000b": {
+1 -1
View File
@@ -10,7 +10,7 @@
"AFP",
"RPRES"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Comment": [
"These 3DNow! instructions are optimal assuming that FEX doesn't SRA MMX registers",
@@ -8,7 +8,7 @@
"RPRES",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Comment": [
"Instructions that explicitly push against the limits of ARM's loadstore instructions"
@@ -8,7 +8,7 @@
"RPRES",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Comment": [
"Instructions that explicitly push against the limits of ARM's loadstore instructions"
@@ -13,7 +13,7 @@
"RPRES",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Comment": [
"These are instruction combinations that could be more optimal if FEX optimized for them"
@@ -11,7 +11,7 @@
"RPRES",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Comment": [
"These are instruction combinations that could be more optimal if FEX optimized for them"
@@ -9,7 +9,7 @@
"SVE256",
"RPRES"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Comment": [
"These are instruction combinations that could be more optimal if FEX optimized for them"
@@ -14,7 +14,7 @@
"RPRES",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Comment": [
"These are instruction combinations that could be more optimal if FEX optimized for them"
@@ -14,7 +14,7 @@
"RPRES",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Comment": [
"These are instruction combinations that could be more optimal if FEX optimized for them"
@@ -12,7 +12,7 @@
"RPRES",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Comment": [],
"Instructions": {
@@ -10,7 +10,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"lock add byte [rax], cl": {
@@ -9,7 +9,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"Chained add": {
@@ -10,7 +10,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"ptest xmm0, xmm1": {
@@ -10,7 +10,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"The Witcher 3": {
@@ -10,7 +10,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"Sonic Mania movie player": {
@@ -10,7 +10,7 @@
"SVE128",
"SVE256"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"FMOD scalar loop": {
@@ -13,7 +13,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"The Sims 1 hot block": {
@@ -10,7 +10,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"add bl, cl": {
@@ -10,7 +10,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"add al, 1": {
@@ -10,7 +10,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"push es": {
@@ -11,7 +11,7 @@
"RPRES",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"ucomiss xmm0, xmm1": {
@@ -11,7 +11,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"sgdt [rax]": {
@@ -11,7 +11,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"xgetbv": {
@@ -11,7 +11,7 @@
"AFP",
"FCMA"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"ucomisd xmm0, xmm1": {
@@ -12,7 +12,7 @@
"AFP",
"CSSC"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"popcnt ax, bx": {
@@ -12,7 +12,7 @@
"RPRES",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"popcnt ax, bx": {
@@ -12,7 +12,7 @@
"RPRES",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vucomiss xmm0, xmm1": {
@@ -10,7 +10,7 @@
"AFP",
"SVEBITPERM"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vtestps xmm0, xmm1": {
@@ -9,7 +9,7 @@
"DisabledHostFeatures": [
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"blsr eax, ebx": {
@@ -10,7 +10,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"Block1": {
@@ -10,12 +10,12 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"Block1": {
"x86InstructionCount": 70,
"ExpectedInstructionCount": 413,
"ExpectedInstructionCount": 415,
"x86Insts": [
"sub esp,0x2c",
"mov ecx,dword [esp + 0x34]",
@@ -477,6 +477,8 @@
"eor w26, w20, #0x1",
"rmif xzr, #0, #nzcV",
"rmif xzr, #61, #Nzcv",
"ldrb w21, [x28, #1040]",
"orr w20, w21, w20",
"strb w20, [x28, #1040]",
"ldrb w20, [x28, #1051]",
"add w20, w20, #0x5 (5)",
@@ -506,7 +508,7 @@
},
"Block2": {
"x86InstructionCount": 37,
"ExpectedInstructionCount": 215,
"ExpectedInstructionCount": 223,
"x86Insts": [
"sub esp,0x1c",
"mov edx,dword [esp + 0x20]",
@@ -588,6 +590,8 @@
"eor x21, x21, #0x1",
"rmif x21, #63, #nzCv",
"rmif x22, #62, #nZcv",
"ldrb w21, [x28, #1040]",
"orr w20, w21, w20",
"strb w20, [x28, #1040]",
"csetm x20, ls",
"dup v4.2d, x20",
@@ -629,6 +633,8 @@
"eor x21, x21, #0x1",
"rmif x21, #63, #nzCv",
"rmif x22, #62, #nZcv",
"ldrb w21, [x28, #1040]",
"orr w20, w21, w20",
"strb w20, [x28, #1040]",
"csetm x20, ls",
"dup v5.2d, x20",
@@ -670,6 +676,8 @@
"eor x21, x21, #0x1",
"rmif x21, #63, #nzCv",
"rmif x22, #62, #nZcv",
"ldrb w21, [x28, #1040]",
"orr w20, w21, w20",
"strb w20, [x28, #1040]",
"csetm x20, ls",
"dup v6.2d, x20",
@@ -741,6 +749,8 @@
"eor w26, w20, #0x1",
"rmif xzr, #0, #nzcV",
"rmif xzr, #61, #Nzcv",
"ldrb w21, [x28, #1040]",
"orr w20, w21, w20",
"strb w20, [x28, #1040]",
"ldrb w20, [x28, #1051]",
"add w20, w20, #0x6 (6)",
@@ -1174,7 +1184,7 @@
},
"Block5": {
"x86InstructionCount": 49,
"ExpectedInstructionCount": 303,
"ExpectedInstructionCount": 305,
"x86Insts": [
"fld dword [esp + 0x80]",
"fsub dword [esp + 0x7c]",
@@ -1509,6 +1519,8 @@
"eor w26, w20, #0x1",
"rmif xzr, #0, #nzcV",
"rmif xzr, #61, #Nzcv",
"ldrb w21, [x28, #1040]",
"orr w20, w21, w20",
"strb w20, [x28, #1040]",
"cset x20, hi",
"strb w20, [x8, #48]",
@@ -1534,7 +1546,7 @@
},
"Block6": {
"x86InstructionCount": 39,
"ExpectedInstructionCount": 295,
"ExpectedInstructionCount": 297,
"x86Insts": [
"push ebp",
"push edi",
@@ -1841,6 +1853,8 @@
"eor w26, w20, #0x1",
"rmif xzr, #0, #nzcV",
"rmif xzr, #61, #Nzcv",
"ldrb w21, [x28, #1040]",
"orr w20, w21, w20",
"strb w20, [x28, #1040]",
"ldrb w20, [x28, #1051]",
"add w20, w20, #0x4 (4)",
@@ -10,7 +10,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"Block1": {
@@ -10,7 +10,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"Block1": {
File diff suppressed because it is too large. Load diff
@@ -13,7 +13,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"Block1": {
@@ -13,7 +13,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"Block1": {
@@ -13,7 +13,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"Block1": {
@@ -13,7 +13,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"Block1": {
@@ -13,7 +13,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"fadd dword [rax]": {
+1 -1
View File
@@ -10,7 +10,7 @@
"FLAGM2",
"CRYPTO"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"pshufb mm0, mm1": {
+1 -1
View File
@@ -8,7 +8,7 @@
"AFP",
"CRYPTO"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Comment": [
"SSE4.2 string instructions are skipped here.",
@@ -8,7 +8,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"dpps xmm0, xmm1, 00000000b": {
@@ -11,7 +11,7 @@
"FLAGM",
"FLAGM2"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"rep movsb": {
+1 -1
View File
@@ -10,7 +10,7 @@
"FLAGM2",
"MOPS"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"add bl, cl": {
@@ -9,7 +9,7 @@
"FLAGM",
"FLAGM2"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Comment": [
"Instructions in this table that are marked optimal don't have their flag calculation part of this assumption",
@@ -9,7 +9,7 @@
"FlagM",
"FlagM2"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"push es": {
+1 -1
View File
@@ -9,7 +9,7 @@
"SVE128",
"SVE256"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"pfrcpv mm0, mm1": {
@@ -9,7 +9,7 @@
"SVE128",
"SVE256"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"rsqrtps xmm0, xmm1": {
@@ -9,7 +9,7 @@
"SVE128",
"SVE256"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"rsqrtss xmm0, xmm1": {
@@ -8,7 +8,7 @@
"AFP"
],
"DisabledHostFeatures": [],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vrsqrtps xmm0, xmm1": {
+1 -1
View File
@@ -6,7 +6,7 @@
"SVE128",
"SVE256"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {}
}
@@ -33,7 +33,7 @@
" - 1b: ECX = MSB",
"[7] - Reserved"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"pcmpestrm xmm0, xmm1, 0_0_00_00_00b": {
+1 -1
View File
@@ -12,7 +12,7 @@
"FLAGM",
"FLAGM2"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Comment": [
"MMX instructions are defined as optimal without SRA being used for these instructions.",
@@ -11,7 +11,7 @@
"FLAGM",
"FLAGM2"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"sgdt [rax]": {
@@ -11,7 +11,7 @@
"FLAGM",
"FLAGM2"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"xgetbv": {
@@ -7,7 +7,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"push fs": {
@@ -12,7 +12,7 @@
"FLAGM",
"FLAGM2"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"movupd xmm0, xmm0": {
@@ -9,7 +9,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"addsubpd xmm0, xmm1": {
@@ -8,7 +8,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"psrlw xmm0, xmm1": {
@@ -7,7 +7,7 @@
"AFP"
],
"DisabledHostFeatures": [],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"pmulhuw xmm0, xmm1": {
@@ -12,7 +12,7 @@
"FRINTTS",
"CSSC"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"movss xmm0, xmm1": {
@@ -10,7 +10,7 @@
"FCMA",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"movsd xmm0, xmm1": {
@@ -9,7 +9,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"addsubps xmm0, xmm1": {
@@ -10,7 +10,7 @@
"FCMA",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"cvtpd2dq xmm0, xmm1": {
@@ -12,7 +12,7 @@
"FLAGM",
"FLAGM2"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"cvttss2si eax, xmm0": {
@@ -8,7 +8,7 @@
"SVE256",
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"movmskps eax, xmm0": {
+1 -1
View File
@@ -13,7 +13,7 @@
"FLAGM2",
"FRINTTS"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vmovups xmm0, xmm0": {
@@ -8,7 +8,7 @@
"FCMA"
],
"DisabledHostFeatures": [],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vaddsubpd xmm0, xmm1, xmm2": {
@@ -13,7 +13,7 @@
"FLAGM",
"FLAGM2"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vcvttss2si eax, xmm0": {
+1 -1
View File
@@ -11,7 +11,7 @@
"FLAGM2",
"SVEBITPERM"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vpshufb xmm0, xmm1, xmm2": {
@@ -11,7 +11,7 @@
"FLAGM",
"FLAGM2"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"pext eax, ebx, ecx": {
+1 -1
View File
@@ -8,7 +8,7 @@
"DisabledHostFeatures": [
"AFP"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vpermq ymm0, ymm1, 1": {
@@ -9,7 +9,7 @@
"FLAGM",
"FLAGM2"
],
"BinaryCacheVersion": 6
"BinaryCacheVersion": 7
},
"Instructions": {
"vpsrlw xmm0, xmm1, 0": {
Loaded 100 of 105 files, more files were not shown because too many files have changed in this diff. Show more