* frame.h (frame_address_in_block): New function.

* blockframe.c (frame_address_in_block): New function extracted
        from get_frame_block().
        (get_frame_block): Use frame_address_in_block().
        (block_innermost_frame): Use frame_address_in_block() to match
        the frame pc address against the block boundaries rather than
        the frame pc directly. This prevents a failure when a frame pc
        is actually a return-address pointing immediately after the end
        of the given block.
This commit is contained in:
Joel Brobecker
2002-07-02 19:08:55 +00:00
parent 07637366bc
commit 42f99ac23d
3 changed files with 39 additions and 12 deletions

View File

@@ -250,6 +250,8 @@ extern struct symbol *get_frame_function (struct frame_info *);
extern CORE_ADDR get_frame_pc (struct frame_info *);
extern CORE_ADDR frame_address_in_block (struct frame_info *);
extern CORE_ADDR get_pc_function_start (CORE_ADDR);
extern struct block *block_for_pc (CORE_ADDR);