extern int GetParmCount( imp_image_handle *ii, dr_handle proc ) { /******************************************************/ // return handle of the n parm parm_wlk df; df.count = 0; df.last = 0; DRSetDebug( ii->dwarf->handle ); /* must do at each call into dwarf */ DRWalkBlock( proc, DR_SRCH_parm, AParm, (void *)&df ); return( df.count ); }
extern dr_handle GetParmN( imp_image_handle *ii,dr_handle proc, int count ) { /******************************************************/ // return handle of the n parm parm_wlk df; dr_handle ret; df.count = 0; df.last = count; DRSetDebug( ii->dwarf->handle ); /* must do at each call into dwarf */ if( DRWalkBlock( proc, DR_SRCH_parm, AParm, (void *)&df ) ) { ret = DR_HANDLE_NUL; } else { ret = df.var; } return( ret ); }
drmem_hdl GetParmN( imp_image_handle *ii, drmem_hdl proc, int count ) /******************************************************/ // return handle of the n parm { parm_wlk df; drmem_hdl ret; df.count = 0; df.last = count; DRSetDebug( ii->dwarf->handle ); /* must do at each call into dwarf */ if( DRWalkBlock( proc, DR_SRCH_parm, AParm, (void *)&df ) ) { ret = DRMEM_HDL_NULL; }else{ ret = df.var; } return( ret ); }