Skip to content

Commit

Permalink
[3.x] Improve architectures in OS::has_feature and make it work on MSVC
Browse files Browse the repository at this point in the history
  • Loading branch information
aaronfranke committed Jun 6, 2022
1 parent ef8401e commit 0470392
Showing 1 changed file with 23 additions and 4 deletions.
27 changes: 23 additions & 4 deletions core/os/os.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -668,19 +668,25 @@ bool OS::has_feature(const String &p_feature) {
if (sizeof(void *) == 4 && p_feature == "32") {
return true;
}
#if defined(__x86_64) || defined(__x86_64__) || defined(__amd64__)
#if defined(__x86_64) || defined(__x86_64__) || defined(__amd64__) || defined(_M_X64)
if (p_feature == "x86_64") {
return true;
}
#elif (defined(__i386) || defined(__i386__))
#elif defined(__i386) || defined(__i386__) || defined(_M_IX86)
if (p_feature == "x86_32") {
return true;
}
if (p_feature == "x86") {
return true;
}
#elif defined(__aarch64__)
#elif defined(__aarch64__) || defined(_M_ARM64)
if (p_feature == "arm64") {
return true;
}
#elif defined(__arm__)
#elif defined(__arm__) || defined(_M_ARM)
if (p_feature == "arm32") {
return true;
}
#if defined(__ARM_ARCH_7A__)
if (p_feature == "armv7a" || p_feature == "armv7") {
return true;
Expand Down Expand Up @@ -712,6 +718,19 @@ bool OS::has_feature(const String &p_feature) {
if (p_feature == "ppc") {
return true;
}
#elif defined(__wasm__)
#if defined(__wasm64__)
if (p_feature == "wasm64") {
return true;
}
#elif defined(__wasm32__)
if (p_feature == "wasm32") {
return true;
}
#endif
if (p_feature == "wasm") {
return true;
}
#endif

if (_check_internal_feature_support(p_feature)) {
Expand Down

0 comments on commit 0470392

Please sign in to comment.