1*99451b44SJordan Rupprecht #include <inttypes.h> 2*99451b44SJordan Rupprecht 3*99451b44SJordan Rupprecht // GDB JIT interface 4*99451b44SJordan Rupprecht enum JITAction { JIT_NOACTION, JIT_REGISTER_FN, JIT_UNREGISTER_FN }; 5*99451b44SJordan Rupprecht 6*99451b44SJordan Rupprecht struct JITCodeEntry 7*99451b44SJordan Rupprecht { 8*99451b44SJordan Rupprecht struct JITCodeEntry* next; 9*99451b44SJordan Rupprecht struct JITCodeEntry* prev; 10*99451b44SJordan Rupprecht const char *symfile_addr; 11*99451b44SJordan Rupprecht uint64_t symfile_size; 12*99451b44SJordan Rupprecht }; 13*99451b44SJordan Rupprecht 14*99451b44SJordan Rupprecht struct JITDescriptor 15*99451b44SJordan Rupprecht { 16*99451b44SJordan Rupprecht uint32_t version; 17*99451b44SJordan Rupprecht uint32_t action_flag; 18*99451b44SJordan Rupprecht struct JITCodeEntry* relevant_entry; 19*99451b44SJordan Rupprecht struct JITCodeEntry* first_entry; 20*99451b44SJordan Rupprecht }; 21*99451b44SJordan Rupprecht 22*99451b44SJordan Rupprecht struct JITDescriptor __jit_debug_descriptor = { 1, JIT_NOACTION, 0, 0 }; 23*99451b44SJordan Rupprecht __jit_debug_register_code()24*99451b44SJordan Rupprechtvoid __jit_debug_register_code() 25*99451b44SJordan Rupprecht { 26*99451b44SJordan Rupprecht } 27*99451b44SJordan Rupprecht // end GDB JIT interface 28*99451b44SJordan Rupprecht 29*99451b44SJordan Rupprecht struct JITCodeEntry entry; 30*99451b44SJordan Rupprecht main()31*99451b44SJordan Rupprechtint main() 32*99451b44SJordan Rupprecht { 33*99451b44SJordan Rupprecht // Create a code entry with a bogus size 34*99451b44SJordan Rupprecht entry.next = entry.prev = 0; 35*99451b44SJordan Rupprecht entry.symfile_addr = (char *)&entry; 36*99451b44SJordan Rupprecht entry.symfile_size = (uint64_t)47<<32; 37*99451b44SJordan Rupprecht 38*99451b44SJordan Rupprecht __jit_debug_descriptor.relevant_entry = __jit_debug_descriptor.first_entry = &entry; 39*99451b44SJordan Rupprecht __jit_debug_descriptor.action_flag = JIT_REGISTER_FN; 40*99451b44SJordan Rupprecht 41*99451b44SJordan Rupprecht __jit_debug_register_code(); 42*99451b44SJordan Rupprecht 43*99451b44SJordan Rupprecht return 0; 44*99451b44SJordan Rupprecht } 45