Lines Matching refs:fixP

201   fixS *fixP;  in fix_new_internal()  local
205 fixP = (fixS *) obstack_alloc (&notes, sizeof (fixS)); in fix_new_internal()
207 fixP->fx_frag = frag; in fix_new_internal()
208 fixP->fx_where = where; in fix_new_internal()
209 fixP->fx_size = size; in fix_new_internal()
211 if (fixP->fx_size != size) in fix_new_internal()
216 fixP->fx_addsy = add_symbol; in fix_new_internal()
217 fixP->fx_subsy = sub_symbol; in fix_new_internal()
218 fixP->fx_offset = offset; in fix_new_internal()
219 fixP->fx_dot_value = dot_value; in fix_new_internal()
220 fixP->fx_pcrel = pcrel; in fix_new_internal()
221 fixP->fx_plt = 0; in fix_new_internal()
223 fixP->fx_r_type = r_type; in fix_new_internal()
225 fixP->fx_im_disp = 0; in fix_new_internal()
226 fixP->fx_pcrel_adjust = 0; in fix_new_internal()
227 fixP->fx_bit_fixP = 0; in fix_new_internal()
228 fixP->fx_addnumber = 0; in fix_new_internal()
229 fixP->fx_tcbit = 0; in fix_new_internal()
230 fixP->fx_done = 0; in fix_new_internal()
231 fixP->fx_no_overflow = 0; in fix_new_internal()
232 fixP->fx_signed = 0; in fix_new_internal()
235 fixP->fx_cgen.insn = NULL; in fix_new_internal()
236 fixP->fx_cgen.opinfo = 0; in fix_new_internal()
240 TC_INIT_FIX_DATA (fixP); in fix_new_internal()
243 as_where (&fixP->fx_file, &fixP->fx_line); in fix_new_internal()
262 fixP->fx_next = *seg_fix_rootP; in fix_new_internal()
263 *seg_fix_rootP = fixP; in fix_new_internal()
267 fixP->fx_next = NULL; in fix_new_internal()
270 (*seg_fix_tailP)->fx_next = fixP; in fix_new_internal()
272 *seg_fix_rootP = fixP; in fix_new_internal()
273 *seg_fix_tailP = fixP; in fix_new_internal()
278 return fixP; in fix_new_internal()
2519 fixup_segment (fixS *fixP, segT this_segment) in fixup_segment() argument
2526 if (fixP != NULL && abs_section_sym == NULL) in fixup_segment()
2543 for (; fixP; fixP = fixP->fx_next) in fixup_segment()
2544 if (!fixP->fx_done) in fixup_segment()
2546 if (fixP->fx_addsy == NULL) in fixup_segment()
2552 fixP->fx_addsy = abs_section_sym; in fixup_segment()
2554 symbol_mark_used_in_reloc (fixP->fx_addsy); in fixup_segment()
2555 if (fixP->fx_subsy != NULL) in fixup_segment()
2556 symbol_mark_used_in_reloc (fixP->fx_subsy); in fixup_segment()
2559 TC_ADJUST_RELOC_COUNT (fixP, seg_reloc_count); in fixup_segment()
2563 for (; fixP; fixP = fixP->fx_next) in fixup_segment()
2567 print_fixup (fixP); in fixup_segment()
2570 fragP = fixP->fx_frag; in fixup_segment()
2573 TC_VALIDATE_FIX (fixP, this_segment, skip); in fixup_segment()
2575 add_number = fixP->fx_offset; in fixup_segment()
2577 if (fixP->fx_addsy != NULL in fixup_segment()
2578 && symbol_mri_common_p (fixP->fx_addsy)) in fixup_segment()
2580 know (fixP->fx_addsy->sy_value.X_op == O_symbol); in fixup_segment()
2581 add_number += S_GET_VALUE (fixP->fx_addsy); in fixup_segment()
2582 fixP->fx_offset = add_number; in fixup_segment()
2583 fixP->fx_addsy in fixup_segment()
2584 = symbol_get_value_expression (fixP->fx_addsy)->X_add_symbol; in fixup_segment()
2587 if (fixP->fx_addsy != NULL) in fixup_segment()
2588 add_symbol_segment = S_GET_SEGMENT (fixP->fx_addsy); in fixup_segment()
2590 if (fixP->fx_subsy != NULL) in fixup_segment()
2593 resolve_symbol_value (fixP->fx_subsy); in fixup_segment()
2594 sub_symbol_segment = S_GET_SEGMENT (fixP->fx_subsy); in fixup_segment()
2595 if (fixP->fx_addsy != NULL in fixup_segment()
2597 && !TC_FORCE_RELOCATION_SUB_SAME (fixP, add_symbol_segment)) in fixup_segment()
2599 add_number += S_GET_VALUE (fixP->fx_addsy); in fixup_segment()
2600 add_number -= S_GET_VALUE (fixP->fx_subsy); in fixup_segment()
2601 fixP->fx_offset = add_number; in fixup_segment()
2602 fixP->fx_addsy = NULL; in fixup_segment()
2603 fixP->fx_subsy = NULL; in fixup_segment()
2606 fixP->fx_pcrel = 0; in fixup_segment()
2610 && !TC_FORCE_RELOCATION_SUB_ABS (fixP)) in fixup_segment()
2612 add_number -= S_GET_VALUE (fixP->fx_subsy); in fixup_segment()
2613 fixP->fx_offset = add_number; in fixup_segment()
2614 fixP->fx_subsy = NULL; in fixup_segment()
2617 && !TC_FORCE_RELOCATION_SUB_LOCAL (fixP)) in fixup_segment()
2619 add_number -= S_GET_VALUE (fixP->fx_subsy); in fixup_segment()
2620 fixP->fx_offset = (add_number + fixP->fx_dot_value in fixup_segment()
2621 + fixP->fx_frag->fr_address); in fixup_segment()
2634 || !fixP->fx_pcrel) in fixup_segment()
2635 add_number += MD_PCREL_FROM_SECTION (fixP, this_segment); in fixup_segment()
2636 fixP->fx_subsy = NULL; in fixup_segment()
2637 fixP->fx_pcrel = 1; in fixup_segment()
2639 else if (!TC_VALIDATE_FIX_SUB (fixP)) in fixup_segment()
2641 as_bad_where (fixP->fx_file, fixP->fx_line, in fixup_segment()
2643 fixP->fx_addsy ? S_GET_NAME (fixP->fx_addsy) : "0", in fixup_segment()
2645 S_GET_NAME (fixP->fx_subsy), in fixup_segment()
2650 if (fixP->fx_addsy) in fixup_segment()
2653 && !TC_FORCE_RELOCATION_LOCAL (fixP)) in fixup_segment()
2658 add_number += S_GET_VALUE (fixP->fx_addsy); in fixup_segment()
2659 fixP->fx_offset = add_number; in fixup_segment()
2660 if (fixP->fx_pcrel) in fixup_segment()
2661 add_number -= MD_PCREL_FROM_SECTION (fixP, this_segment); in fixup_segment()
2662 fixP->fx_addsy = NULL; in fixup_segment()
2663 fixP->fx_pcrel = 0; in fixup_segment()
2666 && !TC_FORCE_RELOCATION_ABS (fixP)) in fixup_segment()
2668 add_number += S_GET_VALUE (fixP->fx_addsy); in fixup_segment()
2669 fixP->fx_offset = add_number; in fixup_segment()
2670 fixP->fx_addsy = NULL; in fixup_segment()
2676 && MD_APPLY_SYM_VALUE (fixP)) in fixup_segment()
2677 add_number += S_GET_VALUE (fixP->fx_addsy); in fixup_segment()
2680 if (fixP->fx_pcrel) in fixup_segment()
2682 add_number -= MD_PCREL_FROM_SECTION (fixP, this_segment); in fixup_segment()
2683 if (!fixP->fx_done && fixP->fx_addsy == NULL) in fixup_segment()
2689 fixP->fx_addsy = abs_section_sym; in fixup_segment()
2693 if (!fixP->fx_done) in fixup_segment()
2694 md_apply_fix3 (fixP, &add_number, this_segment); in fixup_segment()
2696 if (!fixP->fx_done) in fixup_segment()
2699 if (fixP->fx_addsy == NULL) in fixup_segment()
2700 fixP->fx_addsy = abs_section_sym; in fixup_segment()
2701 symbol_mark_used_in_reloc (fixP->fx_addsy); in fixup_segment()
2702 if (fixP->fx_subsy != NULL) in fixup_segment()
2703 symbol_mark_used_in_reloc (fixP->fx_subsy); in fixup_segment()
2706 if (!fixP->fx_bit_fixP && !fixP->fx_no_overflow && fixP->fx_size != 0) in fixup_segment()
2708 if (fixP->fx_size < sizeof (valueT)) in fixup_segment()
2714 mask <<= fixP->fx_size * 8 - (fixP->fx_signed ? 1 : 0); in fixup_segment()
2718 sprint_value (buf, fragP->fr_address + fixP->fx_where); in fixup_segment()
2723 as_bad_where (fixP->fx_file, fixP->fx_line, in fixup_segment()
2725 buf2, fixP->fx_size, buf); in fixup_segment()
2733 && fixP->fx_size == 2 in fixup_segment()
2735 as_bad_where (fixP->fx_file, fixP->fx_line, in fixup_segment()
2738 (long) (fragP->fr_address + fixP->fx_where)); in fixup_segment()
2748 print_fixup (fixP); in fixup_segment()
2752 TC_ADJUST_RELOC_COUNT (fixP, seg_reloc_count); in fixup_segment()