1 // Copyright 2018 The Fuchsia Authors
2 //
3 // Use of this source code is governed by a MIT-style
4 // license that can be found in the LICENSE file or at
5 // https://opensource.org/licenses/MIT
6 
7 #pragma once
8 
9 #if defined(__aarch64__)
10 
11 #include <arch/arm64.h>
12 
13 #elif defined(__x86_64__)
14 
15 #include <arch/x86.h>
16 
17 #endif
18 
19 typedef struct {
20     uintptr_t base_address;
21     iframe_t* iframe;
22 } crashlog_t;
23 
24 extern crashlog_t crashlog;
25 
26 // Serialize the crashlog to string in `out' up to `len' characters.
27 size_t crashlog_to_string(char* out, size_t len);
28