From 225e3881be48c743e6cbf88bc6c5748d1eecc3d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Sim=C3=B5es?= Date: Thu, 20 Jun 2019 22:48:26 +0100 Subject: [PATCH] Update Runtime.Native assembly and implementation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Following nanoframework/nf-interpreter#1379. - Add code to fill in the new functions to retrieve Platform and TargetName from NFReleaseInfo struct. Signed-off-by: José Simões --- src/CLR/Runtime.Native/nf_rt_native.cpp | 4 ++-- src/CLR/Runtime.Native/nf_rt_native.h | 2 +- ...tive_nanoFramework_Runtime_Hardware_SystemInfo.cpp | 11 ++++++++--- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/CLR/Runtime.Native/nf_rt_native.cpp b/src/CLR/Runtime.Native/nf_rt_native.cpp index ae21f6ec2f..48d2f65d9d 100644 --- a/src/CLR/Runtime.Native/nf_rt_native.cpp +++ b/src/CLR/Runtime.Native/nf_rt_native.cpp @@ -16,7 +16,7 @@ static const CLR_RT_MethodHandler method_lookup[] = Library_nf_rt_native_nanoFramework_Runtime_Native_SystemInfo::get_Model___STATIC__U1, Library_nf_rt_native_nanoFramework_Runtime_Native_SystemInfo::get_SKU___STATIC__U2, Library_nf_rt_native_nanoFramework_Runtime_Native_SystemInfo::get_TargetName___STATIC__STRING, - Library_nf_rt_native_nanoFramework_Runtime_Native_SystemInfo::get_PlatformName___STATIC__STRING, + Library_nf_rt_native_nanoFramework_Runtime_Native_SystemInfo::get_Platform___STATIC__STRING, NULL, Library_nf_rt_native_nanoFramework_Runtime_Native_SystemInfo::GetNativeFloatingPointSupport___STATIC__U1, NULL, @@ -48,7 +48,7 @@ static const CLR_RT_MethodHandler method_lookup[] = const CLR_RT_NativeAssemblyData g_CLR_AssemblyNative_nanoFramework_Runtime_Native = { "nanoFramework.Runtime.Native", - 0x783D119F, + 0x1639FF83, method_lookup, { 1, 0, 5, 0 } }; diff --git a/src/CLR/Runtime.Native/nf_rt_native.h b/src/CLR/Runtime.Native/nf_rt_native.h index 31a050e116..6ab5d81d63 100644 --- a/src/CLR/Runtime.Native/nf_rt_native.h +++ b/src/CLR/Runtime.Native/nf_rt_native.h @@ -32,7 +32,7 @@ struct Library_nf_rt_native_nanoFramework_Runtime_Native_SystemInfo NANOCLR_NATIVE_DECLARE(get_Model___STATIC__U1); NANOCLR_NATIVE_DECLARE(get_SKU___STATIC__U2); NANOCLR_NATIVE_DECLARE(get_TargetName___STATIC__STRING); - NANOCLR_NATIVE_DECLARE(get_PlatformName___STATIC__STRING); + NANOCLR_NATIVE_DECLARE(get_Platform___STATIC__STRING); NANOCLR_NATIVE_DECLARE(GetNativeFloatingPointSupport___STATIC__U1); //--// diff --git a/src/CLR/Runtime.Native/nf_rt_native_nanoFramework_Runtime_Hardware_SystemInfo.cpp b/src/CLR/Runtime.Native/nf_rt_native_nanoFramework_Runtime_Hardware_SystemInfo.cpp index a54db42ed8..520332336f 100644 --- a/src/CLR/Runtime.Native/nf_rt_native_nanoFramework_Runtime_Hardware_SystemInfo.cpp +++ b/src/CLR/Runtime.Native/nf_rt_native_nanoFramework_Runtime_Hardware_SystemInfo.cpp @@ -108,18 +108,23 @@ HRESULT Library_nf_rt_native_nanoFramework_Runtime_Native_SystemInfo::get_Target Target_GetReleaseInfo( releaseInfo ); - NANOCLR_SET_AND_LEAVE(stack.SetResult_String( (char*)releaseInfo.InfoString )); + NANOCLR_SET_AND_LEAVE(stack.SetResult_String( (char*)releaseInfo.TargetName )); NANOCLR_NOCLEANUP(); } -HRESULT Library_nf_rt_native_nanoFramework_Runtime_Native_SystemInfo::get_PlatformName___STATIC__STRING( CLR_RT_StackFrame& stack ) +HRESULT Library_nf_rt_native_nanoFramework_Runtime_Native_SystemInfo::get_Platform___STATIC__STRING( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_CORE(); NANOCLR_HEADER(); - NANOCLR_SET_AND_LEAVE(stack.NotImplementedStub()); + + NFReleaseInfo releaseInfo; + + Target_GetReleaseInfo( releaseInfo ); + + NANOCLR_SET_AND_LEAVE(stack.SetResult_String( (char*)releaseInfo.PlatformName )); NANOCLR_NOCLEANUP(); }