forked from Imagelibrary/binutils-gdb
* i386-sol2-tdep.c: Include "gdb_string.h".
(i386_sol2_sigtramp_p): Recognize signal trampoline based on its name. * Makefile.in (i386-sol2-tdep.o): Update dependencies.
This commit is contained in:
@@ -1,3 +1,10 @@
|
|||||||
|
2004-04-10 Mark Kettenis <kettenis@gnu.org>
|
||||||
|
|
||||||
|
* i386-sol2-tdep.c: Include "gdb_string.h".
|
||||||
|
(i386_sol2_sigtramp_p): Recognize signal trampoline based on its
|
||||||
|
name.
|
||||||
|
* Makefile.in (i386-sol2-tdep.o): Update dependencies.
|
||||||
|
|
||||||
2004-04-10 Mark Kettenis <kettenis@gnu.org>
|
2004-04-10 Mark Kettenis <kettenis@gnu.org>
|
||||||
|
|
||||||
* i386-sol2-tdep.c: Include "solib-svr4.h".
|
* i386-sol2-tdep.c: Include "solib-svr4.h".
|
||||||
|
|||||||
@@ -1877,7 +1877,7 @@ i386obsd-tdep.o: i386obsd-tdep.c $(defs_h) $(arch_utils_h) $(frame_h) \
|
|||||||
$(osabi_h) $(target_h) $(gdb_assert_h) $(gdb_string_h) \
|
$(osabi_h) $(target_h) $(gdb_assert_h) $(gdb_string_h) \
|
||||||
$(i386_tdep_h) $(i387_tdep_h) $(solib_svr4_h)
|
$(i386_tdep_h) $(i387_tdep_h) $(solib_svr4_h)
|
||||||
i386-sol2-tdep.o: i386-sol2-tdep.c $(defs_h) $(value_h) $(osabi_h) \
|
i386-sol2-tdep.o: i386-sol2-tdep.c $(defs_h) $(value_h) $(osabi_h) \
|
||||||
$(i386_tdep_h) $(solib_svr4_h)
|
$(gdb_string_h) $(i386_tdep_h) $(solib_svr4_h)
|
||||||
i386-stub.o: i386-stub.c
|
i386-stub.o: i386-stub.c
|
||||||
i386-tdep.o: i386-tdep.c $(defs_h) $(arch_utils_h) $(command_h) \
|
i386-tdep.o: i386-tdep.c $(defs_h) $(arch_utils_h) $(command_h) \
|
||||||
$(dummy_frame_h) $(dwarf2_frame_h) $(doublest_h) $(floatformat_h) \
|
$(dummy_frame_h) $(dwarf2_frame_h) $(doublest_h) $(floatformat_h) \
|
||||||
|
|||||||
@@ -23,6 +23,8 @@
|
|||||||
#include "value.h"
|
#include "value.h"
|
||||||
#include "osabi.h"
|
#include "osabi.h"
|
||||||
|
|
||||||
|
#include "gdb_string.h"
|
||||||
|
|
||||||
#include "i386-tdep.h"
|
#include "i386-tdep.h"
|
||||||
#include "solib-svr4.h"
|
#include "solib-svr4.h"
|
||||||
|
|
||||||
@@ -47,14 +49,18 @@ static int i386_sol2_gregset_reg_offset[] =
|
|||||||
0 * 4 /* %gs */
|
0 * 4 /* %gs */
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* Return whether the frame preceding NEXT_FRAME corresponds to a
|
||||||
|
Solaris sigtramp routine. */
|
||||||
|
|
||||||
static int
|
static int
|
||||||
i386_sol2_sigtramp_p (struct frame_info *next_frame)
|
i386_sol2_sigtramp_p (struct frame_info *next_frame)
|
||||||
{
|
{
|
||||||
CORE_ADDR pc = frame_pc_unwind (next_frame);
|
CORE_ADDR pc = frame_pc_unwind (next_frame);
|
||||||
|
char *name;
|
||||||
|
|
||||||
/* Signal handler frames under Solaris 2 are recognized by a return
|
find_pc_partial_function (pc, &name, NULL, NULL);
|
||||||
address of 0xffffffff. */
|
return (name && (strcmp ("sigacthandler", name) == 0
|
||||||
return (pc == 0xffffffff);
|
|| strcmp (name, "ucbsigvechandler") == 0));
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Solaris doesn't have a `struct sigcontext', but it does have a
|
/* Solaris doesn't have a `struct sigcontext', but it does have a
|
||||||
|
|||||||
Reference in New Issue
Block a user