@@ -160,27 +160,39 @@ std::string EnvironmentImpl::osVersionImpl()
160160std::string EnvironmentImpl::osArchitectureImpl ()
161161{
162162 SYSTEM_INFO si;
163- GetSystemInfo (&si);
163+ GetNativeSystemInfo (&si);
164164 switch (si.wProcessorArchitecture )
165165 {
166166 case PROCESSOR_ARCHITECTURE_INTEL:
167- return " IA32" ;
167+ return " IA32" s ;
168168 case PROCESSOR_ARCHITECTURE_MIPS:
169- return " MIPS" ;
169+ return " MIPS" s ;
170170 case PROCESSOR_ARCHITECTURE_ALPHA:
171- return " ALPHA" ;
171+ return " ALPHA" s ;
172172 case PROCESSOR_ARCHITECTURE_PPC:
173- return " PPC" ;
173+ return " PPC" s;
174+ case PROCESSOR_ARCHITECTURE_SHX:
175+ return " SHX" s;
176+ case PROCESSOR_ARCHITECTURE_ARM:
177+ return " ARM" s;
174178 case PROCESSOR_ARCHITECTURE_IA64:
175179 return " IA64" ;
176- #ifdef PROCESSOR_ARCHITECTURE_IA32_ON_WIN64
177- case PROCESSOR_ARCHITECTURE_IA32_ON_WIN64:
178- return " IA64/32" ;
179- #endif
180- #ifdef PROCESSOR_ARCHITECTURE_AMD64
180+ case PROCESSOR_ARCHITECTURE_ALPHA64:
181+ return " ALPHA64" s;
182+ case PROCESSOR_ARCHITECTURE_MSIL:
183+ return " MSIL" s;
181184 case PROCESSOR_ARCHITECTURE_AMD64:
182- return " AMD64" ;
183- #endif
185+ return " AMD64" s;
186+ case PROCESSOR_ARCHITECTURE_IA32_ON_WIN64:
187+ return " IA64/32" s;
188+ case PROCESSOR_ARCHITECTURE_NEUTRAL:
189+ return " NEUTRAL" s;
190+ case PROCESSOR_ARCHITECTURE_ARM64:
191+ return " ARM64" s;
192+ case PROCESSOR_ARCHITECTURE_ARM32_ON_WIN64:
193+ return " IA64/ARM" s;
194+ case PROCESSOR_ARCHITECTURE_IA32_ON_ARM64:
195+ return " ARM64/IA32" s;
184196 default :
185197 return " Unknown" ;
186198 }
@@ -262,7 +274,7 @@ void EnvironmentImpl::nodeIdImpl(NodeId& id)
262274unsigned EnvironmentImpl::processorCountImpl ()
263275{
264276 SYSTEM_INFO si;
265- GetSystemInfo (&si);
277+ GetNativeSystemInfo (&si);
266278 return si.dwNumberOfProcessors ;
267279}
268280
0 commit comments