Lines Matching full:fixp
1145 i370_elf_validate_fix (fixS *fixp, segT seg)
1147 if (fixp->fx_done || fixp->fx_pcrel)
1157 fixp->fx_r_type <= BFD_RELOC_UNUSED
1158 && fixp->fx_r_type != BFD_RELOC_16_GOTOFF
1159 && fixp->fx_r_type != BFD_RELOC_HI16_GOTOFF
1160 && fixp->fx_r_type != BFD_RELOC_LO16_GOTOFF
1161 && fixp->fx_r_type != BFD_RELOC_HI16_S_GOTOFF
1162 && fixp->fx_r_type != BFD_RELOC_32_BASEREL
1163 && fixp->fx_r_type != BFD_RELOC_LO16_BASEREL
1164 && fixp->fx_r_type != BFD_RELOC_HI16_BASEREL
1165 && fixp->fx_r_type != BFD_RELOC_HI16_S_BASEREL
1175 || fixp->fx_r_type != BFD_RELOC_CTOR)
1176 as_bad_where (fixp->fx_file, fixp->fx_line,
2255 fixP;
2266 fixP = fix_new_exp (frag_now, f - frag_now->fr_literal, size,
2278 fixP->fx_no_overflow = 1;
2434 md_pcrel_from_section (fixS *fixp, segT sec ATTRIBUTE_UNUSED)
2436 return fixp->fx_frag->fr_address + fixp->fx_where;
2452 md_apply_fix (fixS *fixP, valueT * valP, segT seg)
2456 if (fixP->fx_addsy != NULL)
2460 S_GET_NAME (fixP->fx_addsy),
2461 fixP->fx_frag->fr_address + fixP->fx_where,
2462 fixP->fx_file, fixP->fx_line,
2463 S_GET_VALUE (fixP->fx_addsy), value);
2467 fixP->fx_done = 1;
2472 if ((int) fixP->fx_r_type >= (int) BFD_RELOC_UNUSED)
2479 opindex = (int) fixP->fx_r_type - (int) BFD_RELOC_UNUSED;
2486 fixP->fx_frag->fr_address + fixP->fx_where,
2487 fixP->fx_file, fixP->fx_line,
2493 where = fixP->fx_frag->fr_literal + fixP->fx_where;
2496 if (6 <= fixP->fx_size)
2503 if (6 <= fixP->fx_size)
2508 fixP->fx_done = 1;
2509 if (fixP->fx_done)
2525 if (expr_symbol_where (fixP->fx_addsy, &sfile, &sline))
2526 as_bad_where (fixP->fx_file, fixP->fx_line,
2529 as_bad_where (fixP->fx_file, fixP->fx_line,
2531 fixP->fx_done = 1;
2541 i370_elf_validate_fix (fixP, seg);
2545 fixP->fx_r_type, segment_name (seg), fixP->fx_file, fixP->fx_line);
2548 switch (fixP->fx_r_type)
2552 if (fixP->fx_pcrel)
2553 fixP->fx_r_type = BFD_RELOC_32_PCREL;
2561 fixP->fx_frag->fr_address + fixP->fx_where);
2563 md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
2569 if (fixP->fx_pcrel)
2570 as_bad_where (fixP->fx_file, fixP->fx_line,
2572 bfd_get_reloc_code_name (fixP->fx_r_type),
2573 fixP->fx_addsy != NULL ? " against " : "",
2574 (fixP->fx_addsy != NULL
2575 ? S_GET_NAME (fixP->fx_addsy)
2578 md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
2586 if (fixP->fx_pcrel)
2588 md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
2592 if (fixP->fx_pcrel)
2594 md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
2599 if (fixP->fx_pcrel)
2602 md_number_to_chars (fixP->fx_frag->fr_literal + fixP->fx_where,
2608 "Gas failure, reloc value %d\n", fixP->fx_r_type);
2614 fixP->fx_addnumber = value;
2620 tc_gen_reloc (asection *seg ATTRIBUTE_UNUSED, fixS *fixp)
2627 *reloc->sym_ptr_ptr = symbol_get_bfdsym (fixp->fx_addsy);
2628 reloc->address = fixp->fx_frag->fr_address + fixp->fx_where;
2629 reloc->howto = bfd_reloc_type_lookup (stdoutput, fixp->fx_r_type);
2632 as_bad_where (fixp->fx_file, fixp->fx_line,
2633 "reloc %d not supported by object file format", (int)fixp->fx_r_type);
2636 reloc->addend = fixp->fx_addnumber;
2640 fixp->fx_addsy->bsym->name,
2641 fixp->fx_file, fixp->fx_line,