diff options
-rw-r--r-- | cpukit/include/rtems/score/objectdata.h | 7 | ||||
-rw-r--r-- | cpukit/include/rtems/score/thread.h | 9 | ||||
-rw-r--r-- | testsuites/sptests/sp01/init.c | 3 |
3 files changed, 13 insertions, 6 deletions
diff --git a/cpukit/include/rtems/score/objectdata.h b/cpukit/include/rtems/score/objectdata.h index d624f182f9..dc03f23461 100644 --- a/cpukit/include/rtems/score/objectdata.h +++ b/cpukit/include/rtems/score/objectdata.h @@ -447,9 +447,12 @@ Objects_Information name##_Information = { \ * multiprocessing (RTEMS_MULTIPROCESSING) is enabled. */ #define OBJECTS_INFORMATION_DEFINE( name, api, cls, type, max, nl, ex ) \ -static Objects_Control * \ +static RTEMS_SECTION( ".noinit.rtems.content.local_table" ) \ +Objects_Control * \ name##_Local_table[ _Objects_Maximum_per_allocation( max ) ]; \ -static type name##_Objects[ _Objects_Maximum_per_allocation( max ) ]; \ +static RTEMS_SECTION( ".noinit.rtems.content.objects" ) \ +type \ +name##_Objects[ _Objects_Maximum_per_allocation( max ) ]; \ Objects_Information name##_Information = { \ _Objects_Build_id( api, cls, 1, _Objects_Maximum_per_allocation( max ) ), \ name##_Local_table, \ diff --git a/cpukit/include/rtems/score/thread.h b/cpukit/include/rtems/score/thread.h index dd32b51a5f..2833a81710 100644 --- a/cpukit/include/rtems/score/thread.h +++ b/cpukit/include/rtems/score/thread.h @@ -1145,11 +1145,14 @@ Thread_Information name##_Information = { \ Objects_Control *_Thread_Allocate_unlimited( Objects_Information *information ); #define THREAD_INFORMATION_DEFINE( name, api, cls, max ) \ -static Objects_Control * \ +static RTEMS_SECTION( ".noinit.rtems.content.local_table" ) \ +Objects_Control * \ name##_Local_table[ _Objects_Maximum_per_allocation( max ) ]; \ -static Thread_Configured_control \ +static RTEMS_SECTION( ".noinit.rtems.content.objects" ) \ +Thread_Configured_control \ name##_Objects[ _Objects_Maximum_per_allocation( max ) ]; \ -static Thread_queue_Configured_heads \ +static RTEMS_SECTION( ".noinit.rtems.content.objects" ) \ +Thread_queue_Configured_heads \ name##_Heads[ _Objects_Maximum_per_allocation( max ) ]; \ Thread_Information name##_Information = { \ { \ diff --git a/testsuites/sptests/sp01/init.c b/testsuites/sptests/sp01/init.c index 2384430824..26d715b0ba 100644 --- a/testsuites/sptests/sp01/init.c +++ b/testsuites/sptests/sp01/init.c @@ -35,7 +35,8 @@ const char rtems_test_name[] = "SP 1"; -RTEMS_ALIGNED( RTEMS_TASK_STORAGE_ALIGNMENT ) static char Task_1_storage[ +static RTEMS_NOINIT RTEMS_ALIGNED( RTEMS_TASK_STORAGE_ALIGNMENT ) char +Task_1_storage[ RTEMS_TASK_STORAGE_SIZE( 2 * RTEMS_MINIMUM_STACK_SIZE, RTEMS_FLOATING_POINT ) ]; |