* hppa-pinsn.c (print_insn): Use read_memory_integer, instead of

read_memory to get byte order right.
	* hppah-tdep.c (find_unwind_info):  Don't read in unwind info
	anymore.  This is done in paread.c now.  We expect unwind info
	to hang off of objfiles, and search all of the objfiles when until
	we find a match.
	* (skip_trampoline_code):  Cast arg to target_read_memory.
	* objfiles.h (struct objfile):  Add new field obj_private to hold
	per object file private data (unwind info in this case).
	* paread.c (read_unwind_info):  New routine to read unwind info
	for the objfile.  This data is hung off of obj_private.
	* tm-hppa.h:  Define struct obj_unwind_info, to hold pointers to
	the unwind info for this objfile.  Also define OBJ_UNWIND_INFO to
	make this easier to access.
This commit is contained in:
Stu Grossman
1993-01-15 00:06:50 +00:00
parent 30ea4a2d91
commit fa9265e55d
5 changed files with 110 additions and 56 deletions

View File

@@ -574,3 +574,16 @@ struct unwind_table_entry {
unsigned int reserved4 : 2;
unsigned int Total_frame_size : 27;
};
/* Info about the unwind table associated with an object file. This is hung
off of the objfile->obj_private pointer, and is allocated in the objfile's
psymbol obstack. This allows us to have unique unwind info for each
executable and shared library that we are debugging. */
struct obj_unwind_info {
struct unwind_table_entry *table; /* Pointer to unwind info */
struct unwind_table_entry *cache; /* Pointer to last entry we found */
int last; /* Index of last entry */
};
#define OBJ_UNWIND_INFO(obj) ((struct obj_unwind_info *)obj->obj_private)