summaryrefslogtreecommitdiffstats
path: root/cpukit/score
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2020-10-06 07:39:44 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2020-10-10 14:00:37 +0200
commitd7a48e1b259316533a5c775e27934760e1fcd313 (patch)
treeba60f54f4647a8d866395450183ef2551bf9d46d /cpukit/score
parentgrlib: Add and use irqmp_has_timestamp() (diff)
downloadrtems-d7a48e1b259316533a5c775e27934760e1fcd313.tar.bz2
rtems: Improve RTEMS_NO_RETURN attribute
Provide RTEMS_NO_RETURN also in case RTEMS_DEBUG is defined to prevent errors like this: error: no return statement in function returning non-void [-Werror=return-type] Use C11 and C++11 standard means to declare a no-return function. Close #4122.
Diffstat (limited to 'cpukit/score')
-rw-r--r--cpukit/score/cpu/aarch64/include/rtems/score/cpu.h3
-rw-r--r--cpukit/score/cpu/arm/include/rtems/score/cpu.h6
-rw-r--r--cpukit/score/cpu/bfin/include/rtems/score/cpu.h4
-rw-r--r--cpukit/score/cpu/i386/include/rtems/score/cpu.h7
-rw-r--r--cpukit/score/cpu/lm32/include/rtems/score/cpu.h4
-rw-r--r--cpukit/score/cpu/m68k/include/rtems/score/cpu.h4
-rw-r--r--cpukit/score/cpu/mips/include/rtems/score/cpu.h4
-rw-r--r--cpukit/score/cpu/moxie/include/rtems/score/cpu.h4
-rw-r--r--cpukit/score/cpu/nios2/include/rtems/score/cpu.h7
-rw-r--r--cpukit/score/cpu/no_cpu/include/rtems/score/cpu.h4
-rw-r--r--cpukit/score/cpu/or1k/include/rtems/score/cpu.h4
-rw-r--r--cpukit/score/cpu/powerpc/include/rtems/score/cpu.h4
-rw-r--r--cpukit/score/cpu/riscv/include/rtems/score/cpu.h6
-rw-r--r--cpukit/score/cpu/sh/include/rtems/score/cpu.h4
-rw-r--r--cpukit/score/cpu/sparc/include/rtems/score/cpu.h7
-rw-r--r--cpukit/score/cpu/sparc/include/rtems/score/sparc.h6
-rw-r--r--cpukit/score/cpu/sparc64/include/rtems/score/cpu.h4
-rw-r--r--cpukit/score/cpu/v850/include/rtems/score/cpu.h4
-rw-r--r--cpukit/score/cpu/x86_64/include/rtems/score/cpu.h4
19 files changed, 28 insertions, 62 deletions
diff --git a/cpukit/score/cpu/aarch64/include/rtems/score/cpu.h b/cpukit/score/cpu/aarch64/include/rtems/score/cpu.h
index da2140a2a8..dc94e59831 100644
--- a/cpukit/score/cpu/aarch64/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/aarch64/include/rtems/score/cpu.h
@@ -322,8 +322,7 @@ void _CPU_ISR_install_vector(
*/
void _CPU_Context_switch( Context_Control *run, Context_Control *heir );
-void _CPU_Context_restore( Context_Control *new_context )
- RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Context_restore( Context_Control *new_context );
#ifdef RTEMS_SMP
uint32_t _CPU_SMP_Initialize( void );
diff --git a/cpukit/score/cpu/arm/include/rtems/score/cpu.h b/cpukit/score/cpu/arm/include/rtems/score/cpu.h
index b90fb1f394..8a8e8cc617 100644
--- a/cpukit/score/cpu/arm/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/arm/include/rtems/score/cpu.h
@@ -456,12 +456,10 @@ void _CPU_ISR_install_vector(
*/
void _CPU_Context_switch( Context_Control *run, Context_Control *heir );
-void _CPU_Context_restore( Context_Control *new_context )
- RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Context_restore( Context_Control *new_context );
#if defined(ARM_MULTILIB_ARCH_V7M)
- void _ARMV7M_Start_multitasking( Context_Control *heir )
- RTEMS_NO_RETURN;
+ RTEMS_NO_RETURN void _ARMV7M_Start_multitasking( Context_Control *heir );
#define _CPU_Start_multitasking _ARMV7M_Start_multitasking
#endif
diff --git a/cpukit/score/cpu/bfin/include/rtems/score/cpu.h b/cpukit/score/cpu/bfin/include/rtems/score/cpu.h
index 3b0f0bece3..44be6d7d54 100644
--- a/cpukit/score/cpu/bfin/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/bfin/include/rtems/score/cpu.h
@@ -571,9 +571,7 @@ void _CPU_Context_switch(
*
* XXX document implementation including references if appropriate
*/
-void _CPU_Context_restore(
- Context_Control *new_context
-) RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Context_restore( Context_Control *new_context );
/** @} */
diff --git a/cpukit/score/cpu/i386/include/rtems/score/cpu.h b/cpukit/score/cpu/i386/include/rtems/score/cpu.h
index 632bf5ff38..0cb4590087 100644
--- a/cpukit/score/cpu/i386/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/i386/include/rtems/score/cpu.h
@@ -496,8 +496,7 @@ void _CPU_Context_Initialize(
* + disable interrupts and halt the CPU
*/
-extern void _CPU_Fatal_halt(uint32_t source, uint32_t error)
- RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Fatal_halt( uint32_t source, uint32_t error );
#endif /* ASM */
@@ -582,9 +581,7 @@ void _CPU_Context_switch(
* efficient manner and avoid stack conflicts.
*/
-void _CPU_Context_restore(
- Context_Control *new_context
-) RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Context_restore( Context_Control *new_context );
/*
* _CPU_Context_save_fp
diff --git a/cpukit/score/cpu/lm32/include/rtems/score/cpu.h b/cpukit/score/cpu/lm32/include/rtems/score/cpu.h
index 8e702992c1..7cf6359419 100644
--- a/cpukit/score/cpu/lm32/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/lm32/include/rtems/score/cpu.h
@@ -702,9 +702,7 @@ void _CPU_Context_switch(
*
* XXX document implementation including references if appropriate
*/
-void _CPU_Context_restore(
- Context_Control *new_context
-) RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Context_restore( Context_Control *new_context );
/** @} */
diff --git a/cpukit/score/cpu/m68k/include/rtems/score/cpu.h b/cpukit/score/cpu/m68k/include/rtems/score/cpu.h
index 777fbfeb30..5c1df94fc5 100644
--- a/cpukit/score/cpu/m68k/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/m68k/include/rtems/score/cpu.h
@@ -595,9 +595,9 @@ void _CPU_Context_switch(
Context_Control *heir
);
-void _CPU_Context_Restart_self(
+RTEMS_NO_RETURN void _CPU_Context_Restart_self(
Context_Control *the_context
-) RTEMS_NO_RETURN;
+);
/*
* _CPU_Context_save_fp
diff --git a/cpukit/score/cpu/mips/include/rtems/score/cpu.h b/cpukit/score/cpu/mips/include/rtems/score/cpu.h
index 2b662cd549..04d33f5658 100644
--- a/cpukit/score/cpu/mips/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/mips/include/rtems/score/cpu.h
@@ -774,9 +774,7 @@ void _CPU_Context_switch(
* NOTE: May be unnecessary to reload some registers.
*/
-void _CPU_Context_restore(
- Context_Control *new_context
-) RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Context_restore( Context_Control *new_context );
/*
* _CPU_Context_save_fp
diff --git a/cpukit/score/cpu/moxie/include/rtems/score/cpu.h b/cpukit/score/cpu/moxie/include/rtems/score/cpu.h
index c47e414f92..c0a41c9db6 100644
--- a/cpukit/score/cpu/moxie/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/moxie/include/rtems/score/cpu.h
@@ -478,9 +478,7 @@ void _CPU_Context_switch(
*
* XXX
*/
-void _CPU_Context_restore(
- Context_Control *new_context
-) RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Context_restore( Context_Control *new_context );
/**
* @brief The set of registers that specifies the complete processor state.
diff --git a/cpukit/score/cpu/nios2/include/rtems/score/cpu.h b/cpukit/score/cpu/nios2/include/rtems/score/cpu.h
index 5528561d1c..5fffed646e 100644
--- a/cpukit/score/cpu/nios2/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/nios2/include/rtems/score/cpu.h
@@ -290,8 +290,7 @@ void _CPU_Context_Initialize(
#define _CPU_Context_Restart_self( _the_context ) \
_CPU_Context_restore( (_the_context) );
-void _CPU_Fatal_halt( uint32_t _source, uint32_t _error )
- RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Fatal_halt( uint32_t _source, uint32_t _error );
/**
* @brief CPU initialization.
@@ -310,9 +309,7 @@ void *_CPU_Thread_Idle_body( uintptr_t ignored );
void _CPU_Context_switch( Context_Control *run, Context_Control *heir );
-void _CPU_Context_restore(
- Context_Control *new_context
-) RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Context_restore( Context_Control *new_context );
void _CPU_Exception_frame_print( const CPU_Exception_frame *frame );
diff --git a/cpukit/score/cpu/no_cpu/include/rtems/score/cpu.h b/cpukit/score/cpu/no_cpu/include/rtems/score/cpu.h
index 50313bbd61..ea69a5b972 100644
--- a/cpukit/score/cpu/no_cpu/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/no_cpu/include/rtems/score/cpu.h
@@ -1085,9 +1085,7 @@ void _CPU_Context_switch(
*
* XXX document implementation including references if appropriate
*/
-void _CPU_Context_restore(
- Context_Control *new_context
-) RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Context_restore( Context_Control *new_context );
/**
* @addtogroup RTEMSScoreCPUExampleContext
diff --git a/cpukit/score/cpu/or1k/include/rtems/score/cpu.h b/cpukit/score/cpu/or1k/include/rtems/score/cpu.h
index c14388a804..c1f94a71af 100644
--- a/cpukit/score/cpu/or1k/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/or1k/include/rtems/score/cpu.h
@@ -527,9 +527,7 @@ void _CPU_Context_switch(
*
*/
-void _CPU_Context_restore(
- Context_Control *new_context
-) RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Context_restore( Context_Control *new_context );
/*
* _CPU_Context_save_fp
diff --git a/cpukit/score/cpu/powerpc/include/rtems/score/cpu.h b/cpukit/score/cpu/powerpc/include/rtems/score/cpu.h
index 33d8755ba4..a40b378b6d 100644
--- a/cpukit/score/cpu/powerpc/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/powerpc/include/rtems/score/cpu.h
@@ -932,9 +932,7 @@ void _CPU_Context_switch(
* NOTE: May be unnecessary to reload some registers.
*/
-void _CPU_Context_restore(
- Context_Control *new_context
-) RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Context_restore( Context_Control *new_context );
/*
* _CPU_Context_save_fp
diff --git a/cpukit/score/cpu/riscv/include/rtems/score/cpu.h b/cpukit/score/cpu/riscv/include/rtems/score/cpu.h
index 501973a6dc..38eb92394d 100644
--- a/cpukit/score/cpu/riscv/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/riscv/include/rtems/score/cpu.h
@@ -213,7 +213,7 @@ void _CPU_Context_Initialize(
#define _CPU_Context_Restart_self( _the_context ) \
_CPU_Context_restore( (_the_context) )
-extern void _CPU_Fatal_halt(uint32_t source, uint32_t error) RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Fatal_halt( uint32_t source, uint32_t error );
#define CPU_USE_GENERIC_BITFIELD_CODE TRUE
@@ -393,9 +393,7 @@ void _CPU_Context_switch(
*
*/
-void _CPU_Context_restore(
- Context_Control *new_context
-) RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Context_restore( Context_Control *new_context );
/* The following routine swaps the endian format of an unsigned int.
* It must be static because it is referenced indirectly.
diff --git a/cpukit/score/cpu/sh/include/rtems/score/cpu.h b/cpukit/score/cpu/sh/include/rtems/score/cpu.h
index 9264479153..0782021b2f 100644
--- a/cpukit/score/cpu/sh/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/sh/include/rtems/score/cpu.h
@@ -586,9 +586,7 @@ void _CPU_Context_switch(
* efficient manner. It may simply be a label in _CPU_Context_switch.
*/
-void _CPU_Context_restore(
- Context_Control *new_context
-) RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Context_restore( Context_Control *new_context );
/*
* @brief This routine saves the floating point context passed to it.
diff --git a/cpukit/score/cpu/sparc/include/rtems/score/cpu.h b/cpukit/score/cpu/sparc/include/rtems/score/cpu.h
index 13782f2f12..e2604bb76f 100644
--- a/cpukit/score/cpu/sparc/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/sparc/include/rtems/score/cpu.h
@@ -912,8 +912,7 @@ void _CPU_Context_Initialize(
* location or a register, optionally disables interrupts, and
* halts/stops the CPU.
*/
-extern void _CPU_Fatal_halt(uint32_t source, uint32_t error)
- RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Fatal_halt( uint32_t source, uint32_t error );
/* end of Fatal Error manager macros */
@@ -1001,9 +1000,7 @@ void _CPU_Context_switch(
*
* @param[in] new_context is the context to restore
*/
-void _CPU_Context_restore(
- Context_Control *new_context
-) RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Context_restore( Context_Control *new_context );
#if defined(RTEMS_SMP)
uint32_t _CPU_SMP_Initialize( void );
diff --git a/cpukit/score/cpu/sparc/include/rtems/score/sparc.h b/cpukit/score/cpu/sparc/include/rtems/score/sparc.h
index 4846520b46..db659cc1fa 100644
--- a/cpukit/score/cpu/sparc/include/rtems/score/sparc.h
+++ b/cpukit/score/cpu/sparc/include/rtems/score/sparc.h
@@ -365,8 +365,10 @@ static inline void sparc_enable_interrupts(uint32_t psr)
* @param[in] exitcode1 Primary exit code stored in CPU g2 register after exit
* @param[in] exitcode2 Primary exit code stored in CPU g3 register after exit
*/
-void sparc_syscall_exit(uint32_t exitcode1, uint32_t exitcode2)
- RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void sparc_syscall_exit(
+ uint32_t exitcode1,
+ uint32_t exitcode2
+);
/**
* @brief SPARC flash processor interrupts.
diff --git a/cpukit/score/cpu/sparc64/include/rtems/score/cpu.h b/cpukit/score/cpu/sparc64/include/rtems/score/cpu.h
index 2dd5cb194f..2701298733 100644
--- a/cpukit/score/cpu/sparc64/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/sparc64/include/rtems/score/cpu.h
@@ -877,9 +877,7 @@ void _CPU_Context_switch(
* efficient manner.
*/
-void _CPU_Context_restore(
- Context_Control *new_context
-) RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Context_restore( Context_Control *new_context );
/*
* _CPU_Context_save_fp
diff --git a/cpukit/score/cpu/v850/include/rtems/score/cpu.h b/cpukit/score/cpu/v850/include/rtems/score/cpu.h
index a538789a58..a648931fb9 100644
--- a/cpukit/score/cpu/v850/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/v850/include/rtems/score/cpu.h
@@ -543,9 +543,7 @@ void _CPU_Context_switch(
*
* This is implemented in assembly on the v850.
*/
-void _CPU_Context_restore(
- Context_Control *new_context
-) RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Context_restore( Context_Control *new_context );
/* XXX this should be possible to remove */
#if 0
diff --git a/cpukit/score/cpu/x86_64/include/rtems/score/cpu.h b/cpukit/score/cpu/x86_64/include/rtems/score/cpu.h
index 12ae14e229..80dbc25214 100644
--- a/cpukit/score/cpu/x86_64/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/x86_64/include/rtems/score/cpu.h
@@ -280,9 +280,7 @@ void _CPU_Context_switch(
Context_Control *heir
);
-void _CPU_Context_restore(
- Context_Control *new_context
-) RTEMS_NO_RETURN;
+RTEMS_NO_RETURN void _CPU_Context_restore( Context_Control *new_context );
typedef struct {
uint32_t processor_state_register;