From cd5fd85730e5c6cacf169cd8a005e129c8ef1200 Mon Sep 17 00:00:00 2001 From: Stephen Clark Date: Thu, 18 Mar 2021 12:01:27 -0500 Subject: stackchk: Fixed 32bit pointers Using 32bit types like uint32_t for pointers creates issues on 64 bit architectures like AArch64. Replaced occurrences of these with uintptr_t, which will work for both 32 and 64 bit architectures. --- cpukit/libmisc/stackchk/check.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cpukit/libmisc/stackchk/check.c b/cpukit/libmisc/stackchk/check.c index ab08155c92..a2b63345d9 100644 --- a/cpukit/libmisc/stackchk/check.c +++ b/cpukit/libmisc/stackchk/check.c @@ -447,12 +447,13 @@ static bool Stack_check_Dump_threads_usage( { char name[ 22 ]; const rtems_printer *printer; + uintptr_t sp = _CPU_Context_Get_SP( &the_thread->Registers ); printer = arg; _Thread_Get_name( the_thread, name, sizeof( name ) ); Stack_check_Dump_stack_usage( &the_thread->Start.Initial_stack, - (void *) _CPU_Context_Get_SP( &the_thread->Registers ), + (void *) sp, name, the_thread->Object.id, printer -- cgit v1.2.3