summaryrefslogtreecommitdiffstats
path: root/bsps/i386/pc386/start/bsp_fatal_halt.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2021-07-28 14:41:32 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2021-07-28 21:04:20 +0200
commit8b65b57472d5086f2c035a09fdb07a40285beb4a (patch)
treea59df32bffd218107602471a541c10d66e1b509a /bsps/i386/pc386/start/bsp_fatal_halt.c
parentscore: Move per-CPU jobs support (diff)
downloadrtems-8b65b57472d5086f2c035a09fdb07a40285beb4a.tar.bz2
score: Canonicalize _CPU_Fatal_halt()
Move _CPU_Fatal_halt() declaration to <rtems/score/cpuimpl.h> and make sure it is a proper declaration of a function which does not return. Fix the type of the error code. If necessary, add the implementation to cpu.c. Implementing _CPU_Fatal_halt() as a function makes it possible to wrap this function for example to fully test _Terminate().
Diffstat (limited to 'bsps/i386/pc386/start/bsp_fatal_halt.c')
-rw-r--r--bsps/i386/pc386/start/bsp_fatal_halt.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/bsps/i386/pc386/start/bsp_fatal_halt.c b/bsps/i386/pc386/start/bsp_fatal_halt.c
index 07bbd793e0..954955dee1 100644
--- a/bsps/i386/pc386/start/bsp_fatal_halt.c
+++ b/bsps/i386/pc386/start/bsp_fatal_halt.c
@@ -7,9 +7,9 @@
* http://www.rtems.org/license/LICENSE.
*/
-#include <bsp.h>
+#include <rtems/score/cpuimpl.h>
-void _CPU_Fatal_halt(uint32_t source, uint32_t error)
+void _CPU_Fatal_halt( uint32_t source, CPU_Uint32ptr error )
{
__asm__ volatile (
"cli\n\t"
@@ -18,7 +18,5 @@ void _CPU_Fatal_halt(uint32_t source, uint32_t error)
: "=r" ((error))
: "0" ((error))
);
- #ifdef __GNUC__
- __builtin_unreachable();
- #endif
+ RTEMS_UNREACHABLE();
}