#include // GDB JIT interface enum JITAction { JIT_NOACTION, JIT_REGISTER_FN, JIT_UNREGISTER_FN }; struct JITCodeEntry { struct JITCodeEntry* next; struct JITCodeEntry* prev; const char *symfile_addr; uint64_t symfile_size; }; struct JITDescriptor { uint32_t version; uint32_t action_flag; struct JITCodeEntry* relevant_entry; struct JITCodeEntry* first_entry; }; struct JITDescriptor __jit_debug_descriptor = { 1, JIT_NOACTION, 0, 0 }; void __jit_debug_register_code() { } // end GDB JIT interface struct JITCodeEntry entry; int main() { // Create a code entry with a bogus size entry.next = entry.prev = 0; entry.symfile_addr = (char *)&entry; entry.symfile_size = (uint64_t)47<<32; __jit_debug_descriptor.relevant_entry = __jit_debug_descriptor.first_entry = &entry; __jit_debug_descriptor.action_flag = JIT_REGISTER_FN; __jit_debug_register_code(); return 0; }