projects
/
deliverable
/
binutils-gdb.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
gdb: add target_ops::supports_displaced_step
[deliverable/binutils-gdb.git]
/
gdb
/
stap-probe.c
diff --git
a/gdb/stap-probe.c
b/gdb/stap-probe.c
index 39da2900e7af30d0c24702019c8b835038b0b646..73596446cce51d94e789b1ff3584b8fec807b5a1 100644
(file)
--- a/
gdb/stap-probe.c
+++ b/
gdb/stap-probe.c
@@
-1290,8
+1290,7
@@
stap_probe::parse_arguments (struct gdbarch *gdbarch)
static CORE_ADDR
relocate_address (CORE_ADDR address, struct objfile *objfile)
{
static CORE_ADDR
relocate_address (CORE_ADDR address, struct objfile *objfile)
{
- return address + ANOFFSET (objfile->section_offsets,
- SECT_OFF_DATA (objfile));
+ return address + objfile->data_section_offset ();
}
/* Implementation of the get_relocated_address method. */
}
/* Implementation of the get_relocated_address method. */
@@
-1431,9
+1430,6
@@
stap_modify_semaphore (CORE_ADDR address, int set, struct gdbarch *gdbarch)
struct type *type = builtin_type (gdbarch)->builtin_unsigned_short;
ULONGEST value;
struct type *type = builtin_type (gdbarch)->builtin_unsigned_short;
ULONGEST value;
- if (address == 0)
- return;
-
/* Swallow errors. */
if (target_read_memory (address, bytes, TYPE_LENGTH (type)) != 0)
{
/* Swallow errors. */
if (target_read_memory (address, bytes, TYPE_LENGTH (type)) != 0)
{
@@
-1467,6
+1463,8
@@
stap_modify_semaphore (CORE_ADDR address, int set, struct gdbarch *gdbarch)
void
stap_probe::set_semaphore (struct objfile *objfile, struct gdbarch *gdbarch)
{
void
stap_probe::set_semaphore (struct objfile *objfile, struct gdbarch *gdbarch)
{
+ if (m_sem_addr == 0)
+ return;
stap_modify_semaphore (relocate_address (m_sem_addr, objfile), 1, gdbarch);
}
stap_modify_semaphore (relocate_address (m_sem_addr, objfile), 1, gdbarch);
}
@@
-1475,6
+1473,8
@@
stap_probe::set_semaphore (struct objfile *objfile, struct gdbarch *gdbarch)
void
stap_probe::clear_semaphore (struct objfile *objfile, struct gdbarch *gdbarch)
{
void
stap_probe::clear_semaphore (struct objfile *objfile, struct gdbarch *gdbarch)
{
+ if (m_sem_addr == 0)
+ return;
stap_modify_semaphore (relocate_address (m_sem_addr, objfile), 0, gdbarch);
}
stap_modify_semaphore (relocate_address (m_sem_addr, objfile), 0, gdbarch);
}
@@
-1517,7
+1517,7
@@
handle_stap_probe (struct objfile *objfile, struct sdt_note *el,
{
bfd *abfd = objfile->obfd;
int size = bfd_get_arch_size (abfd) / 8;
{
bfd *abfd = objfile->obfd;
int size = bfd_get_arch_size (abfd) / 8;
- struct gdbarch *gdbarch =
get_objfile_arch (objfile
);
+ struct gdbarch *gdbarch =
objfile->arch (
);
struct type *ptr_type = builtin_type (gdbarch)->builtin_data_ptr;
/* Provider and the name of the probe. */
struct type *ptr_type = builtin_type (gdbarch)->builtin_data_ptr;
/* Provider and the name of the probe. */
@@
-1606,7
+1606,7
@@
get_stap_base_address (bfd *obfd, bfd_vma *base)
{
complaint (_("could not obtain base address for "
"SystemTap section on objfile `%s'."),
{
complaint (_("could not obtain base address for "
"SystemTap section on objfile `%s'."),
-
obfd->filename
);
+
bfd_get_filename (obfd)
);
return 0;
}
return 0;
}
@@
-1709,8
+1709,9
@@
info_probes_stap_command (const char *arg, int from_tty)
info_probes_for_spops (arg, from_tty, &stap_static_probe_ops);
}
info_probes_for_spops (arg, from_tty, &stap_static_probe_ops);
}
+void _initialize_stap_probe ();
void
void
-_initialize_stap_probe (
void
)
+_initialize_stap_probe ()
{
all_static_probe_ops.push_back (&stap_static_probe_ops);
{
all_static_probe_ops.push_back (&stap_static_probe_ops);
This page took
0.023685 seconds
and
4
git commands to generate.