diff --git a/lib/stdlib/abort.c b/lib/stdlib/abort.c
index 85151442..d1828317 100644
--- a/lib/stdlib/abort.c
+++ b/lib/stdlib/abort.c
@@ -18,10 +18,16 @@
* along with GNU Mes. If not, see .
*/
-#include
+#include
+
+int __raise(int);
void
abort (void)
{
- asm ("hlt");
+ if (__raise(SIGABRT) < 0) { /* could not raise SIGABRT */
+ /* Fail in any way possible */
+ unsigned char* x = (unsigned char*) 0;
+ *x = 2;
+ }
}