2006-02-24 Randolph Chung <tausq@debian.org>
* hppa-hpux-tdep.c (hppa_hpux_push_dummy_code): Initialize argreg. * solib-som.c (som_solib_remove_inferior_hook): Remove unused function.
This commit is contained in:
parent
04f1267984
commit
9846e5417d
3 changed files with 8 additions and 45 deletions
|
@ -1,3 +1,10 @@
|
||||||
|
2006-02-24 Randolph Chung <tausq@debian.org>
|
||||||
|
|
||||||
|
* hppa-hpux-tdep.c (hppa_hpux_push_dummy_code): Initialize
|
||||||
|
argreg.
|
||||||
|
* solib-som.c (som_solib_remove_inferior_hook): Remove unused
|
||||||
|
function.
|
||||||
|
|
||||||
2006-02-24 Wu Zhou <woodzltc@cn.ibm.com>
|
2006-02-24 Wu Zhou <woodzltc@cn.ibm.com>
|
||||||
|
|
||||||
* f-exp.y: Symbol '%' is not used as the modulus operator in
|
* f-exp.y: Symbol '%' is not used as the modulus operator in
|
||||||
|
|
|
@ -1659,7 +1659,7 @@ hppa_hpux_push_dummy_code (struct gdbarch *gdbarch, CORE_ADDR sp,
|
||||||
CORE_ADDR *real_pc, CORE_ADDR *bp_addr)
|
CORE_ADDR *real_pc, CORE_ADDR *bp_addr)
|
||||||
{
|
{
|
||||||
CORE_ADDR pc, stubaddr;
|
CORE_ADDR pc, stubaddr;
|
||||||
int argreg;
|
int argreg = 0;
|
||||||
|
|
||||||
pc = read_pc ();
|
pc = read_pc ();
|
||||||
|
|
||||||
|
|
|
@ -313,50 +313,6 @@ keep_going:
|
||||||
clear_symtab_users ();
|
clear_symtab_users ();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* This operation removes the "hook" between GDB and the dynamic linker,
|
|
||||||
which causes the dld to notify GDB of shared library events.
|
|
||||||
|
|
||||||
After this operation completes, the dld will no longer notify GDB of
|
|
||||||
shared library events. To resume notifications, GDB must call
|
|
||||||
som_solib_create_inferior_hook.
|
|
||||||
|
|
||||||
This operation does not remove any knowledge of shared libraries
|
|
||||||
of which GDB may already have been notified.
|
|
||||||
*/
|
|
||||||
static void
|
|
||||||
som_solib_remove_inferior_hook (int pid)
|
|
||||||
{
|
|
||||||
CORE_ADDR addr;
|
|
||||||
struct minimal_symbol *msymbol;
|
|
||||||
int status;
|
|
||||||
char dld_flags_buffer[4];
|
|
||||||
unsigned int dld_flags_value;
|
|
||||||
struct cleanup *old_cleanups = save_inferior_ptid ();
|
|
||||||
|
|
||||||
/* Ensure that we're really operating on the specified process. */
|
|
||||||
inferior_ptid = pid_to_ptid (pid);
|
|
||||||
|
|
||||||
/* We won't bother to remove the solib breakpoints from this process.
|
|
||||||
|
|
||||||
In fact, on PA64 the breakpoint is hard-coded into the dld callback,
|
|
||||||
and thus we're not supposed to remove it.
|
|
||||||
|
|
||||||
Rather, we'll merely clear the dld_flags bit that enables callbacks.
|
|
||||||
*/
|
|
||||||
msymbol = lookup_minimal_symbol ("__dld_flags", NULL, NULL);
|
|
||||||
|
|
||||||
addr = SYMBOL_VALUE_ADDRESS (msymbol);
|
|
||||||
status = target_read_memory (addr, dld_flags_buffer, 4);
|
|
||||||
|
|
||||||
dld_flags_value = extract_unsigned_integer (dld_flags_buffer, 4);
|
|
||||||
|
|
||||||
dld_flags_value &= ~DLD_FLAGS_HOOKVALID;
|
|
||||||
store_unsigned_integer (dld_flags_buffer, 4, dld_flags_value);
|
|
||||||
status = target_write_memory (addr, dld_flags_buffer, 4);
|
|
||||||
|
|
||||||
do_cleanups (old_cleanups);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
som_special_symbol_handling (void)
|
som_special_symbol_handling (void)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Reference in a new issue