FreeBSD/contrib/binutils/gas/config/tc-arm.c
/* Get the address of a symbol during relaxation.  */
Get the address of a symbol during relaxation.
Get the address of a symbol during relaxation .
static addressT
relaxed_symbol_addr(fragS *fragp, long stretch)
{
  fragS *sym_frag;
  addressT addr;
  symbolS *sym;
  sym = fragp->fr_symbol;
  sym_frag = symbol_get_frag (sym);
  know (S_GET_SEGMENT (sym) != absolute_section
	|| sym_frag == &zero_address_frag);
  addr = S_GET_VALUE (sym) + fragp->fr_offset;
  if (stretch != 0
      && sym_frag->relax_marker != fragp->relax_marker)
    addr += stretch;
  return addr;
}
static addressT relaxed_symbol_addr ( fragS * fragp , long stretch ) { fragS * sym_frag ; addressT addr ; symbolS * sym ; sym = fragp -> fr_symbol ; sym_frag = symbol_get_frag ( sym ) ; know ( S_GET_SEGMENT ( sym ) != absolute_section || sym_frag == & zero_address_frag ) ; addr = S_GET_VALUE ( sym ) + fragp -> fr_offset ; if ( stretch != 0 && sym_frag -> relax_marker != fragp -> relax_marker ) addr += stretch ; return addr ; }
Get the address of a symbol during relaxation.
Get the address of a symbol during relaxation .
/* If frag has yet to be reached on this pass, assume it will
     move by STRETCH just as we did.  If this is not so, it will
     be because some frag between grows, and that will force
     another pass.  */