mirror of
https://github.com/tobast/libunwind-eh_elf.git
synced 2025-04-01 11:52:18 +02:00
Add include of "tdep.h".
(unwi_dyn_remote_find_proc_info): Maintain as->dyn_info_list_addr as a cache of the most recently obtained dyn-info-list address. (Logical change 1.61)
This commit is contained in:
parent
5dc0e152a9
commit
cf9c4950bc
1 changed files with 10 additions and 2 deletions
|
@ -27,6 +27,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
|
||||||
#include "internal.h"
|
#include "internal.h"
|
||||||
|
#include "tdep.h"
|
||||||
|
|
||||||
static void
|
static void
|
||||||
free_regions (unw_dyn_region_info_t *region)
|
free_regions (unw_dyn_region_info_t *region)
|
||||||
|
@ -200,8 +201,15 @@ unwi_dyn_remote_find_proc_info (unw_addr_space_t as, unw_word_t ip,
|
||||||
unw_dyn_info_t *di = NULL;
|
unw_dyn_info_t *di = NULL;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
if ((*a->get_dyn_info_list_addr) (as, &dyn_list_addr, arg) < 0)
|
if (as->dyn_info_list_addr)
|
||||||
return -UNW_ENOINFO;
|
dyn_list_addr = as->dyn_info_list_addr;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if ((*a->get_dyn_info_list_addr) (as, &dyn_list_addr, arg) < 0)
|
||||||
|
return -UNW_ENOINFO;
|
||||||
|
if (as->caching_policy != UNW_CACHE_NONE)
|
||||||
|
as->dyn_info_list_addr = dyn_list_addr;
|
||||||
|
}
|
||||||
|
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Reference in a new issue