2004-04-17 Randolph Chung <tausq@debian.org>

* Makefile.in (hpread.o, pa64solib.o, somsolib.o): Add $(hppa_tdep_h)
	* hppa-tdep.c (hppa_objfile_priv_data): New.
	(SR4EXPORT_LDIL_OFFSET, SR4EXPORT_LDO_OFFSET): Use
	HPPA_INSTRUCTION_SIZE.
	(read_unwind_info): Use objfile_data to reference unwind info.
	(find_unwind_entry): Likewise.
	(hpread_adjust_stack_address): Move to hpread.c.
	(_initialize_hppa_tdep): Register hppa objfile data.
	* hppa-tdep.h (HPPA_INSTRUCTION_SIZE): Define.
	(unwind_table_entry, unwind_stub_types): Move from tm-hppa.h.
	(obj_unwind_info, obj_private_struct): Move from tm-hppa.h, and rename
	with hppa_ prefix.
	* hpread.c (hppa-tdep.h): Include.
	(hpread_adjust_stack_address): Move from hppa-tdep.c.
	(hpread_read_function_type, hpread_read_doc_function_type)
	(hpread_process_one_debug_symbol): Call hpread_adjust_stack_address
	directly. Use objfile_data to access solib data.
	* pa64solib.c (hppa-tdep.h): Include.
	(pa64_solib_add_solib_objfile): Use objfile_data to access solib data.
	* somsolib.c (hppa-tdep.h): Include.
	(som_solib_add_solib_objfile): Use objfile_data to access solib data.
	* config/pa/tm-hppa.h (frame_info, frame_saved_regs, value, type)
	(inferior_status): Remove unused forward declarations.
	(INSTRUCTION_SIZE): Move to hppa-tdep.c.
	(unwind_table_entry, unwind_stub_types, obj_unwind_info)
	(obj_private_struct): Move to hppa-tdep.h.
	(HPREAD_ADJUST_STACK_ADDRESS): Remove.
This commit is contained in:
Randolph Chung
2004-04-17 17:19:29 +00:00
parent 8d153463b5
commit 7c46b9fb41
8 changed files with 204 additions and 185 deletions

View File

@@ -43,6 +43,7 @@
#include "regcache.h"
#include "gdb_assert.h"
#include "exec.h"
#include "hppa-tdep.h"
#include <fcntl.h>
@@ -278,7 +279,7 @@ static void
som_solib_add_solib_objfile (struct so_list *so, char *name, int from_tty,
CORE_ADDR text_addr)
{
obj_private_data_t *obj_private;
struct hppa_objfile_private *obj_private;
struct obj_section *s;
so->objfile = symbol_file_add (name, from_tty, NULL, 0, OBJF_SHARED);
@@ -307,17 +308,18 @@ som_solib_add_solib_objfile (struct so_list *so, char *name, int from_tty,
*/
so->objfile->flags |= OBJF_SHARED;
if (so->objfile->obj_private == NULL)
obj_private = (struct hppa_objfile_private *)
objfile_data (so->objfile, hppa_objfile_priv_data);
if (obj_private == NULL)
{
obj_private = (obj_private_data_t *)
obj_private = (struct hppa_objfile_private *)
obstack_alloc (&so->objfile->objfile_obstack,
sizeof (obj_private_data_t));
sizeof (struct hppa_objfile_private));
set_objfile_data (so->objfile, hppa_objfile_priv_data, obj_private);
obj_private->unwind_info = NULL;
obj_private->so_info = NULL;
so->objfile->obj_private = obj_private;
}
obj_private = (obj_private_data_t *) so->objfile->obj_private;
obj_private->so_info = so;
if (!bfd_check_format (so->abfd, bfd_object))