priv_data = (jit_dbg_reader_data *) cb->priv_data;
- objfile = new struct objfile (NULL, "<< JIT compiled code >>",
- OBJF_NOT_FILENAME);
+ objfile = objfile::make (nullptr, "<< JIT compiled code >>",
+ OBJF_NOT_FILENAME);
objfile->per_bfd->gdbarch = target_gdbarch ();
j = NULL;
jit_reader_try_read_symtab (struct jit_code_entry *code_entry,
CORE_ADDR entry_addr)
{
- gdb_byte *gdb_mem;
int status;
jit_dbg_reader_data priv_data;
struct gdb_reader_funcs *funcs;
if (!loaded_jit_reader)
return 0;
- gdb_mem = (gdb_byte *) xmalloc (code_entry->symfile_size);
+ gdb::byte_vector gdb_mem (code_entry->symfile_size);
status = 1;
try
{
- if (target_read_memory (code_entry->symfile_addr, gdb_mem,
+ if (target_read_memory (code_entry->symfile_addr, gdb_mem.data (),
code_entry->symfile_size))
status = 0;
}
if (status)
{
funcs = loaded_jit_reader->functions;
- if (funcs->read (funcs, &callbacks, gdb_mem, code_entry->symfile_size)
+ if (funcs->read (funcs, &callbacks, gdb_mem.data (),
+ code_entry->symfile_size)
!= GDB_SUCCESS)
status = 0;
}
- xfree (gdb_mem);
if (jit_debug && status == 0)
fprintf_unfiltered (gdb_stdlog,
"Could not read symtab using the loaded JIT reader.\n");
if (jit_debug)
fprintf_unfiltered (gdb_stdlog,
- "jit_register_code, symfile_addr = %s, "
+ "jit_bfd_try_read_symtab, symfile_addr = %s, "
"symfile_size = %s\n",
paddress (gdbarch, code_entry->symfile_addr),
pulongest (code_entry->symfile_size));
static void
jit_unregister_code (struct objfile *objfile)
{
+ if (jit_debug)
+ fprintf_unfiltered (gdb_stdlog, "jit_unregister_code (%s)\n",
+ host_address_to_string (objfile));
delete objfile;
}