authorgravatar for gwenzek@users.noreply.github.comGuillaume Wenzek <gwenzek@users.noreply.github.com> 2022-10-07 14:31:15+02:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2022-10-15 10:39:19-07:00
log24c749473a9e2eaeb1de804ec7567a4a933e5993
treeaf4bd72527216c551f562f026b2b1af0eb2ac00f
parent419855c4750450b92403300081298ddfdad4be6d

implement os.abort and panic for cuda


2 files changed, 6 insertions(+), 0 deletions(-)

lib/std/builtin.zig+1
......@@ -833,6 +833,7 @@ pub fn default_panic(msg: []const u8, error_return_trace: ?*StackTrace, ret_addr
833833 // Didn't have boot_services, just fallback to whatever.
834834 std.os.abort();
835835 },
836 .cuda => std.os.abort(),
836837 else => {
837838 const first_trace_addr = ret_addr orelse @returnAddress();
838839 std.debug.panicImpl(error_return_trace, first_trace_addr, msg);
lib/std/os.zig+5
......@@ -500,10 +500,15 @@ pub fn abort() noreturn {
500500 @breakpoint();
501501 exit(1);
502502 }
503 if (builtin.os.tag == .cuda) {
504 @"llvm.trap"();
505 }
503506
504507 system.abort();
505508}
506509
510extern fn @"llvm.trap"() noreturn;
511
507512pub const RaiseError = UnexpectedError;
508513
509514pub fn raise(sig: u8) RaiseError!void {