1 /* Copyright (C) 2009-2017 Free Software Foundation, Inc. 2 3 This file is part of GDB. 4 5 This program is free software; you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published by 7 the Free Software Foundation; either version 3 of the License, or 8 (at your option) any later version. 9 10 This program is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 GNU General Public License for more details. 14 15 You should have received a copy of the GNU General Public License 16 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 17 18 #ifdef JIT_H 19 #error "We don't include jit.h directly since we'd like the jit-reader unit \ 20 tests to break if we make ABI incompatible changes to the structures \ 21 re-declared here." 22 #endif 23 24 #ifndef JIT_PROTOCOL_H 25 #define JIT_PROTOCOL_H 26 27 #include <stdint.h> 28 29 typedef enum 30 { 31 JIT_NOACTION = 0, 32 JIT_REGISTER, 33 JIT_UNREGISTER 34 } jit_actions_t; 35 36 37 struct jit_code_entry 38 { 39 struct jit_code_entry *next_entry; 40 struct jit_code_entry *prev_entry; 41 void *symfile_addr; 42 uint64_t symfile_size; 43 }; 44 45 46 struct jit_descriptor 47 { 48 uint32_t version; 49 uint32_t action_flag; 50 struct jit_code_entry *relevant_entry; 51 struct jit_code_entry *first_entry; 52 }; 53 54 #endif /* JIT_PROTOCOL_H */ 55