diff --git a/Kernel/Arch/aarch64/init.cpp b/Kernel/Arch/aarch64/init.cpp index a5fc1e16f8..3f5cb110ef 100644 --- a/Kernel/Arch/aarch64/init.cpp +++ b/Kernel/Arch/aarch64/init.cpp @@ -93,8 +93,21 @@ void __stack_chk_fail() Prekernel::halt(); } -[[noreturn]] void __assertion_failed(char const*, char const*, unsigned int, char const*) +[[noreturn]] void __assertion_failed(char const* msg, char const* file, unsigned line, char const* func) { + auto& uart = Prekernel::UART::the(); + + uart.print_str("\r\n\r\nASSERTION FAILED: "); + uart.print_str(msg); + + uart.print_str("\r\n"); + uart.print_str(file); + uart.print_str(":"); + uart.print_num(line); + + uart.print_str(" in "); + uart.print_str(func); + Prekernel::halt(); }