forked from Imagelibrary/binutils-gdb
* 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:
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user