aboutsummaryrefslogtreecommitdiff
path: root/arch/x86_64/src/context_switching/syscall
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86_64/src/context_switching/syscall')
-rw-r--r--arch/x86_64/src/context_switching/syscall/syscall_handler.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/x86_64/src/context_switching/syscall/syscall_handler.cpp b/arch/x86_64/src/context_switching/syscall/syscall_handler.cpp
index 9cc6edf..cd1c8a2 100644
--- a/arch/x86_64/src/context_switching/syscall/syscall_handler.cpp
+++ b/arch/x86_64/src/context_switching/syscall/syscall_handler.cpp
@@ -60,6 +60,12 @@ namespace teachos::arch::context_switching::syscall
case type::EXPAND_HEAP:
result = expand_user_heap();
break;
+ case type::ASSERT:
+ if (!arg_0)
+ {
+ teachos::arch::exception_handling::panic(reinterpret_cast<const char *>(arg_1));
+ }
+ break;
default:
teachos::arch::exception_handling::panic("[Syscall Handler] Invalid syscall number");
break;