if (remmap->l_reldeps[j]->l_idx < nopencount && (list[remmap->l_reldeps[j]->l_idx] == remmap->l_reldeps[j]))  if (--new_opencount[remmap->l_reldeps[j]->l_idx] == 0) {  assert (remmap->l_reldeps[j]->l_type == lt_loaded); mark_removed (remmap->l_reldeps[j]); }
if (depmap->l_idx < nopencount && list[depmap->l_idx] == depmap) {  if (depmap->l_searchlist.r_list != NULL) { assert (new_opencount[depmap->l_idx] > 0); if (--new_opencount[depmap->l_idx] == 0) {  assert (depmap->l_type == lt_loaded); mark_removed (depmap); } } else {  unsigned int k; for (k = 0; depmap->l_initfini[k] != NULL; ++k) { struct link_map *rl = depmap->l_initfini[k];  if (rl->l_idx < nopencount & list[rl->l_idx] == rl) { assert (new_opencount[rl->l_idx] > 0); if (--new_opencount[rl->l_idx] ==  0) {  assert (rl->l_type == lt_loaded); mark_removed (rl); } } else { assert (rl->l_opencount > 0); if (--rl->l_opencount == 0) mark_removed (rl); } } } }
	void mark_removed (struct link_map *remmap)	  {	    /* Test whether this object was also loaded directly.  */	    if (remmap->l_searchlist.r_list != NULL)	      {		/* In this case we have to decrement all the dependencies of		   this object.  They are all in MAP's dependency list.  */		unsigned int j;		struct link_map **dep_list = remmap->l_searchlist.r_list;		for (j = 1; j < remmap->l_searchlist.r_nlist; ++j)		  if (! (dep_list[j]->l_flags_1 & DF_1_NODELETE)		      || ! dep_list[j]->l_init_called)		{		  assert (dep_list[j]->l_idx < map->l_searchlist.r_nlist);		  if (--new_opencount[dep_list[j]->l_idx] == 0)		    {		      assert (dep_list[j]->l_type == lt_loaded);		      mark_removed (dep_list[j]);		    }		}	      }	    if (remmap->l_reldeps != NULL)	      {		unsigned int j;		for (j = 0; j < remmap->l_reldepsact; ++j)		  {		    /* Find out whether this object is in our list.  */		    if (remmap->l_reldeps[j]->l_idx < nopencount			&& (list[remmap->l_reldeps[j]->l_idx]			    == remmap->l_reldeps[j]))		      /* Yes, it is.  */		      if (--new_opencount[remmap->l_reldeps[j]->l_idx] == 0)			{			  /* This one is now gone, too.  */			  assert (remmap->l_reldeps[j]->l_type == lt_loaded);			  mark_removed (remmap->l_reldeps[j]);			}		  }	      }	  }