mirror of
https://github.com/FEX-Emu/FEX.git
synced 2026-10-28 08:00:50 +01:00
TestHarnessHelper: Adds support for the new CPU features
This commit is contained in:
2 files changed
+36
No files matched your search
@@ -90,6 +90,10 @@ class HostFeatures(Flag) :
|
||||
FEATURE_AVX_VNNI = (1 << 24)
|
||||
FEATURE_SERIALIZE = (1 << 25)
|
||||
FEATURE_AVX_NE_CONVERT = (1 << 26)
|
||||
FEATURE_AVX_VNNI_INT8 = (1 << 27)
|
||||
FEATURE_AVX_VNNI_INT16 = (1 << 28)
|
||||
FEATURE_AVX_IFMA = (1 << 29)
|
||||
FEATURE_SHA512 = (1 << 30)
|
||||
|
||||
RegStringLookup = {
|
||||
"NONE": Regs.REG_NONE,
|
||||
@@ -179,6 +183,10 @@ HostFeaturesLookup = {
|
||||
"AVX_VNNI" : HostFeatures.FEATURE_AVX_VNNI,
|
||||
"SERIALIZE" : HostFeatures.FEATURE_SERIALIZE,
|
||||
"AVX_NE_CONVERT" : HostFeatures.FEATURE_AVX_NE_CONVERT,
|
||||
"AVX_VNNI_INT8" : HostFeatures.FEATURE_AVX_VNNI_INT8,
|
||||
"AVX_VNNI_INT16" : HostFeatures.FEATURE_AVX_VNNI_INT16,
|
||||
"AVX_IFMA" : HostFeatures.FEATURE_AVX_IFMA,
|
||||
"SHA512" : HostFeatures.FEATURE_SHA512,
|
||||
}
|
||||
|
||||
def parse_hexstring(s):
|
||||
|
||||
@@ -324,6 +324,10 @@ public:
|
||||
FEATURE_AVX_VNNI = (1 << 24),
|
||||
FEATURE_SERIALIZE = (1 << 25),
|
||||
FEATURE_AVX_NE_CONVERT = (1 << 26),
|
||||
FEATURE_AVX_VNNI_INT8 = (1 << 27),
|
||||
FEATURE_AVX_VNNI_INT16 = (1 << 28),
|
||||
FEATURE_AVX_IFMA = (1 << 29),
|
||||
FEATURE_SHA512 = (1 << 30),
|
||||
};
|
||||
|
||||
bool Requires3DNow() const {
|
||||
@@ -407,6 +411,18 @@ public:
|
||||
bool RequiresAVXNEConvert() const {
|
||||
return BaseConfig.OptionHostFeatures & HostFeatures::FEATURE_AVX_NE_CONVERT;
|
||||
}
|
||||
bool RequiresAVXVNNIINT8() const {
|
||||
return BaseConfig.OptionHostFeatures & HostFeatures::FEATURE_AVX_VNNI_INT8;
|
||||
}
|
||||
bool RequiresAVXVNNIINT16() const {
|
||||
return BaseConfig.OptionHostFeatures & HostFeatures::FEATURE_AVX_VNNI_INT16;
|
||||
}
|
||||
bool RequiresAVXIFMA() const {
|
||||
return BaseConfig.OptionHostFeatures & HostFeatures::FEATURE_AVX_IFMA;
|
||||
}
|
||||
bool RequiresSHA512() const {
|
||||
return BaseConfig.OptionHostFeatures & HostFeatures::FEATURE_SHA512;
|
||||
}
|
||||
|
||||
private:
|
||||
FEX_CONFIG_OPT(ConfigDumpGPRs, DUMPGPRS);
|
||||
@@ -623,6 +639,18 @@ public:
|
||||
bool RequiresAVXNEConvert() const {
|
||||
return Config.RequiresAVXNEConvert();
|
||||
}
|
||||
bool RequiresAVXVNNIINT8() const {
|
||||
return Config.RequiresAVXVNNIINT8();
|
||||
}
|
||||
bool RequiresAVXVNNIINT16() const {
|
||||
return Config.RequiresAVXVNNIINT16();
|
||||
}
|
||||
bool RequiresAVXIFMA() const {
|
||||
return Config.RequiresAVXIFMA();
|
||||
}
|
||||
bool RequiresSHA512() const {
|
||||
return Config.RequiresSHA512();
|
||||
}
|
||||
|
||||
private:
|
||||
constexpr static uint64_t STACK_OFFSET = 0xc000'0000;
|
||||
|
||||
Reference in new issue
Block a user