V8 API Reference, 7.2.502.16 (for Deno 0.2.4)
gdb-jit.h
1 // Copyright 2010 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef V8_GDB_JIT_H_
6 #define V8_GDB_JIT_H_
7 
8 #include "include/v8.h"
9 
10 //
11 // GDB has two ways of interacting with JIT code. With the "JIT compilation
12 // interface", V8 can tell GDB when it emits JIT code. Unfortunately to do so,
13 // it has to create platform-native object files, possibly with platform-native
14 // debugging information. Currently only ELF and Mach-O are supported, which
15 // limits this interface to Linux and Mac OS. This JIT compilation interface
16 // was introduced in GDB 7.0. V8 support can be enabled with the --gdbjit flag.
17 //
18 // The other way that GDB can know about V8 code is via the "custom JIT reader"
19 // interface, in which a GDB extension parses V8's private data to determine the
20 // function, file, and line of a JIT frame, and how to unwind those frames.
21 // This interface was introduced in GDB 7.6. This interface still relies on V8
22 // to register its code via the JIT compilation interface, but doesn't require
23 // that V8 create ELF images. Support will be added for this interface in the
24 // future.
25 //
26 
27 namespace v8 {
28 namespace internal {
29 namespace GDBJITInterface {
30 #ifdef ENABLE_GDB_JIT_INTERFACE
31 // JitCodeEventHandler that creates ELF/Mach-O objects and registers them with
32 // GDB.
33 void EventHandler(const v8::JitCodeEvent* event);
34 #endif
35 } // namespace GDBJITInterface
36 } // namespace internal
37 } // namespace v8
38 
39 #endif // V8_GDB_JIT_H_
Definition: libplatform.h:13