FileStream executableFile = null;
string appBaseDirectory = AppDomain.CurrentDomain.BaseDirectory;
CPUFeatures cpuFeatures = CPUFeatures.Features;
- if (cpuFeatures.x64)
+ if (cpuFeatures.cpuArch.Equals(CPUFeatures.CPUArch.a64))
+ {
+ if (CheckExecutableFile(ref executableFile, appBaseDirectory, "arm64"))
+ {
+ Trace.Assert(executableFile != null);
+ return executableFile;
+ }
+ }
+ if (cpuFeatures.cpuArch.Equals(CPUFeatures.CPUArch.x64))
{
if (cpuFeatures.hasAVX2 && CheckExecutableFile(ref executableFile, appBaseDirectory, "avx2"))
{
Trace.Assert(executableFile != null);
return executableFile;
}
- else if (CheckExecutableFile(ref executableFile, appBaseDirectory, "x64"))
+ if (CheckExecutableFile(ref executableFile, appBaseDirectory, "x64"))
{
Trace.Assert(executableFile != null);
return executableFile;
Trace.Assert(executableFile != null);
return executableFile;
}
- else if (CheckExecutableFile(ref executableFile, appBaseDirectory, "i686"))
+ if (CheckExecutableFile(ref executableFile, appBaseDirectory, "i686"))
{
Trace.Assert(executableFile != null);
return executableFile;