0 - x86
1 - x64
2 - ARM
- 3 - ARM64 */
+ 3 - ARM64
+ 4 - WASM */
int32_t SystemNative_GetOSArchitecture()
{
#if defined(TARGET_ARM)
return ARCH_ARM64;
#elif defined(TARGET_AMD64)
return ARCH_X64;
-#elif defined(TARGET_X86) || defined(TARGET_WASM) // TODO: add arch for WASM
+#elif defined(TARGET_X86)
return ARCH_X86;
+#elif defined(TARGET_WASM)
+ return ARCH_WASM;
#else
#error Unidentified Architecture
#endif
0 - x86
1 - x64
2 - ARM
-3 - ARM64 */
+3 - ARM64
+4 - WASM */
int32_t SystemNative_GetProcessArchitecture()
{
#if defined(TARGET_ARM)
return ARCH_ARM64;
#elif defined(TARGET_AMD64)
return ARCH_X64;
-#elif defined(TARGET_X86) || defined(TARGET_WASM) // TODO: add arch for WASM
+#elif defined(TARGET_X86)
return ARCH_X86;
+#elif defined(TARGET_WASM)
+ return ARCH_WASM;
#else
#error Unidentified Architecture
#endif
return Architecture.X64;
case Interop.Sys.ProcessorArchitecture.ARM64:
return Architecture.Arm64;
+ case Interop.Sys.ProcessorArchitecture.WASM:
+ return Architecture.Wasm;
case Interop.Sys.ProcessorArchitecture.x86:
default:
Debug.Assert(arch == Interop.Sys.ProcessorArchitecture.x86, "Unidentified Architecture");
Assert.Equal(osArch, RuntimeInformation.OSArchitecture);
Assert.Equal(processArch, RuntimeInformation.ProcessArchitecture);
}
+
+ [Fact]
+ [PlatformSpecific(TestPlatforms.Browser)]
+ public void VerifyBrowserArchitecture()
+ {
+ Assert.Equal(Architecture.Wasm, RuntimeInformation.OSArchitecture);
+ Assert.Equal(Architecture.Wasm, RuntimeInformation.ProcessArchitecture);
+ }
}
}