Lines Matching refs:frag
247 difference. We turn that into a rs_cfa_advance frag, and handle
386 /* This might be a DW_CFA_advance_loc4. Record the frag and the
387 position within the frag, so that we can change it later. */
402 subtracted were in the same frag and the expression was
427 of the assembly. We set up a variant frag which we handle
448 end of the assembly. We set up a variant frag which we
466 /* The function estimates the size of a rs_cfa variant frag based on
471 eh_frame_estimate_size_before_relax (fragS *frag)
474 int ca = frag->fr_subtype >> 3;
477 diff = resolve_symbol_value (frag->fr_symbol);
490 frag->fr_subtype = (frag->fr_subtype & ~7) | ret;
495 /* This function relaxes a rs_cfa variant frag based on the current
497 the frag. This returns the change in frag length. */
500 eh_frame_relax_frag (fragS *frag)
504 oldsize = frag->fr_subtype & 7;
505 newsize = eh_frame_estimate_size_before_relax (frag);
509 /* This function converts a rs_cfa variant frag into a normal fill
510 frag. This is called after all relaxation has been done.
511 fr_subtype{0:2} will be the desired length of the frag. */
514 eh_frame_convert_frag (fragS *frag)
520 loc4_frag = (fragS *) frag->fr_opcode;
521 loc4_fix = (int) frag->fr_offset;
523 diff = resolve_symbol_value (frag->fr_symbol);
525 ca = frag->fr_subtype >> 3;
528 switch (frag->fr_subtype & 7)
538 frag->fr_literal[frag->fr_fix] = diff;
544 md_number_to_chars (frag->fr_literal + frag->fr_fix, diff, 2);
548 md_number_to_chars (frag->fr_literal + frag->fr_fix, diff, 4);
552 frag->fr_fix += frag->fr_subtype & 7;
553 frag->fr_type = rs_fill;
554 frag->fr_subtype = 0;
555 frag->fr_offset = 0;