| author | |
| committer | |
| log | 24c749473a9e2eaeb1de804ec7567a4a933e5993 |
| tree | af4bd72527216c551f562f026b2b1af0eb2ac00f |
| parent | 419855c4750450b92403300081298ddfdad4be6d |
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 | ... | @@ -833,6 +833,7 @@ pub fn default_panic(msg: []const u8, error_return_trace: ?*StackTrace, ret_addr |
| 833 | // Didn't have boot_services, just fallback to whatever. | 833 | // Didn't have boot_services, just fallback to whatever. |
| 834 | std.os.abort(); | 834 | std.os.abort(); |
| 835 | }, | 835 | }, |
| 836 | .cuda => std.os.abort(), | ||
| 836 | else => { | 837 | else => { |
| 837 | const first_trace_addr = ret_addr orelse @returnAddress(); | 838 | const first_trace_addr = ret_addr orelse @returnAddress(); |
| 838 | std.debug.panicImpl(error_return_trace, first_trace_addr, msg); | 839 | std.debug.panicImpl(error_return_trace, first_trace_addr, msg); |
lib/std/os.zig+5| ... | @@ -500,10 +500,15 @@ pub fn abort() noreturn { | ... | @@ -500,10 +500,15 @@ pub fn abort() noreturn { |
| 500 | @breakpoint(); | 500 | @breakpoint(); |
| 501 | exit(1); | 501 | exit(1); |
| 502 | } | 502 | } |
| 503 | if (builtin.os.tag == .cuda) { | ||
| 504 | @"llvm.trap"(); | ||
| 505 | } | ||
| 503 | 506 | ||
| 504 | system.abort(); | 507 | system.abort(); |
| 505 | } | 508 | } |
| 506 | 509 | ||
| 510 | extern fn @"llvm.trap"() noreturn; | ||
| 511 | |||
| 507 | pub const RaiseError = UnexpectedError; | 512 | pub const RaiseError = UnexpectedError; |
| 508 | 513 | ||
| 509 | pub fn raise(sig: u8) RaiseError!void { | 514 | pub fn raise(sig: u8) RaiseError!void { |