Lines Matching +defs:label +defs:offset
148 /* Lists of symbols. We keep a list of symbols that label the current
299 bfd_vma offset;
361 #define O_pcrel O_md4 /* value is a PC-relative offset */
506 static fixS *xg_append_jump (fragS *fragP, symbolS *sym, offsetT offset);
1109 /* Functions related to the list of current label symbols. */
1558 /* Support .literal label, expr, ... */
3651 /* Literal with no ops is a label? */
3763 offsetT pc_offset, /* offset in fragment */
4340 offsetT offset)
4405 the_fix = fix_new_exp (fragP, offset, fmt_length, exp,
4420 offsetT offset,
4439 if (!xg_add_opcode_fix (tinsn, opnum, fmt, slot, exp, fragP, offset))
4914 /* Return the number of bytes for the offset of the expanded loop
5400 /* Since the label was already attached to a frag associated with the
5444 /* If the label is already known to be a branch target, i.e., a
5509 separates a function label from its entry instruction, ending up
5510 with the literal position between the function label and the entry
7056 char *label = XNEWVEC (char, strlen (FAKE_LABEL_NAME) + 12);
7057 sprintf (label, "%s_rl_%x", FAKE_LABEL_NAME, relaxed_sym_idx++);
7058 colon (label);
7060 label_sym = symbol_find_or_make (label);
7062 free (label);
7267 frag_now->tc_frag_data.slot_offsets[slot] = tinsn->offset;
7283 if (tinsn->subtype || tinsn->symbol || tinsn->offset
7436 addressT offset;
7439 /* Trampoline chain for a given (sym, offset) pair is a sorted array
7441 as pairs (sym, offset): trampoline frag symbol and offset of the jump
7473 /* Known trampoline chains ordered by (sym, offset) pair */
7655 if (pa->offset != pb->offset)
7656 return pa->offset < pb->offset ? -1 : 1;
7682 if (S_GET_VALUE(e->sym) + e->offset <= source)
7697 addressT target = S_GET_VALUE(tc->target.sym) + tc->target.offset;
7705 S_GET_VALUE(e->sym) + e->offset <= source &&
7713 chained_target = S_GET_VALUE(next->sym) + next->offset;
7723 chained_target = S_GET_VALUE(e->sym) + e->offset;
7755 if (pa->offset != pb->offset)
7756 return pa->offset < pb->offset ? -1 : 1;
7763 addressT offset)
7778 c.target.offset = offset;
7785 to the *sym + *offset. If found, replace *sym and *offset with the
7790 addressT *offset)
7792 struct trampoline_chain *tc = xg_get_trampoline_chain (ts, *sym, *offset);
7799 *offset = e->offset;
7805 symbolS *sym, addressT offset)
7816 e->offset = offset;
7823 symbolS *sym, addressT offset)
7837 tc->target.offset = offset;
7841 xg_add_location_to_chain (tc, sym, offset);
8144 maximum offset is (4 - 2) + 63 = 65. */
8365 unsigned int offset = 0;
8380 (isa, insnbuf, (unsigned char *) &next_fragP->fr_literal[offset], 0);
8397 offset += xtensa_format_length (isa, fmt);
8398 if (offset == next_fragP->fr_fix)
8401 offset = 0;
8409 (isa, insnbuf, (unsigned char *) &next_fragP->fr_literal[offset], 0);
8430 loop end label, convert this frag to one that will generate a NOP.
8577 offsetT offset = 0;
8586 return offset;
8588 offset += unrelaxed_frag_min_size (current_fragP);
8590 if (offset >= max_size)
8651 1) the instruction size count to the loop end label
8658 3) the instruction size count to the loop end label is too short
8758 unsigned int offset = 0;
8767 while (offset < fragP->fr_fix)
8772 (isa, insnbuf, (unsigned char *) fragP->fr_literal + offset, 0);
8780 offset += xtensa_format_length (isa, fmt);
8811 unsigned int offset = 0;
8820 while (offset < fragP->fr_fix)
8826 (isa, insnbuf, (unsigned char *) fragP->fr_literal + offset, 0);
8834 get_opcode_from_buf (fragP->fr_literal + offset, slot);
8839 offset += xtensa_format_length (isa, fmt);
9349 could be at an offset from this fragment. */
10174 /* Append jump to sym + offset to the end of the trampoline frag fragP.
10178 static fixS *xg_append_jump (fragS *fragP, symbolS *sym, offsetT offset)
10190 set_expr_symbol_offset (&insn.tok[0], sym, offset);
10196 fixP = fix_new (fragP, fragP->fr_fix, 3, sym, offset, true,
10226 char label[10 + 2 * sizeof(fp)];
10228 sprintf (label, ".L0_TR_%p", fp);
10229 lsym = (symbolS *) local_symbol_make (label, now_seg, fp, 0);
10264 /* Assemble a jump to the target label in the trampoline frag. */
10440 addressT offset = fragP->tc_frag_data.slot_offsets[s];
10444 &offset);
10449 offset);
10450 fragP->tc_frag_data.slot_offsets[s] = offset;
10811 /* First, create the mapping from a label name to the REAL label. */
11148 char label[10 + 2 * sizeof (fragS *)];
11158 sprintf (label, ".L0_LT_%p", poolbeg);
11159 lsym = (symbolS *) local_symbol_make (label, lps->seg, poolend, 0);
11905 cur_block->offset,
12003 cur_block->offset,
12112 if ((*xt_block)->offset + (*xt_block)->size
12122 new_block->offset = fragP->fr_address;
12286 end_addr = xt_block->offset + xt_block->size;
12289 return end_addr - xt_block->offset;
12299 if (xt_block->offset + xt_block_aligned_size (xt_block)
12300 != xt_block_2->offset)
12363 tmp_block.offset = fragP->fr_address;
13102 tinsn->offset = exp->X_add_number;
13209 /* Set the expression to a symbol + constant offset. */
13212 set_expr_symbol_offset (expressionS *s, symbolS *sym, offsetT offset)
13217 s->X_add_number = offset;