Lines Matching refs:fixp

3226 md_pcrel_from_section (fixS * fixp, segT sec)  in md_pcrel_from_section()  argument
3228 if (fixp->fx_addsy != (symbolS *) NULL in md_pcrel_from_section()
3229 && (!S_IS_DEFINED (fixp->fx_addsy) in md_pcrel_from_section()
3230 || (S_GET_SEGMENT (fixp->fx_addsy) != sec))) in md_pcrel_from_section()
3233 return fixp->fx_frag->fr_address + fixp->fx_where; in md_pcrel_from_section()
3240 msp430_force_relocation_local (fixS *fixp) in msp430_force_relocation_local() argument
3242 if (fixp->fx_r_type == BFD_RELOC_MSP430_10_PCREL) in msp430_force_relocation_local()
3244 if (fixp->fx_pcrel) in msp430_force_relocation_local()
3250 return (!fixp->fx_pcrel in msp430_force_relocation_local()
3251 || generic_force_reloc (fixp)); in msp430_force_relocation_local()
3258 md_apply_fix (fixS * fixp, valueT * valuep, segT seg) in md_apply_fix() argument
3264 if (fixp->fx_addsy == (symbolS *) NULL) in md_apply_fix()
3267 fixp->fx_done = 1; in md_apply_fix()
3269 else if (fixp->fx_pcrel) in md_apply_fix()
3271 segT s = S_GET_SEGMENT (fixp->fx_addsy); in md_apply_fix()
3273 if (fixp->fx_addsy && (s == seg || s == absolute_section)) in md_apply_fix()
3288 fixp->fx_done = 1; in md_apply_fix()
3295 value = fixp->fx_offset; in md_apply_fix()
3297 if (fixp->fx_subsy != (symbolS *) NULL) in md_apply_fix()
3299 if (S_GET_SEGMENT (fixp->fx_subsy) == absolute_section) in md_apply_fix()
3301 value -= S_GET_VALUE (fixp->fx_subsy); in md_apply_fix()
3302 fixp->fx_done = 1; in md_apply_fix()
3307 fixp->fx_no_overflow = 1; in md_apply_fix()
3314 if (!fixp->fx_addsy || (fixp->fx_addsy in md_apply_fix()
3315 && S_GET_SEGMENT (fixp->fx_addsy) == absolute_section)) in md_apply_fix()
3316 fixp->fx_done = 1; /* It is ok to kill 'abs' reloc. */ in md_apply_fix()
3318 fixp->fx_done = 0; in md_apply_fix()
3321 if (fixp->fx_done) in md_apply_fix()
3325 where = (unsigned char *) fixp->fx_frag->fr_literal + fixp->fx_where; in md_apply_fix()
3329 switch (fixp->fx_r_type) in md_apply_fix()
3333 as_bad_where (fixp->fx_file, fixp->fx_line, in md_apply_fix()
3341 as_bad_where (fixp->fx_file, fixp->fx_line, in md_apply_fix()
3352 as_bad_where (fixp->fx_file, fixp->fx_line, in md_apply_fix()
3359 as_bad_where (fixp->fx_file, fixp->fx_line, in md_apply_fix()
3432 fixp->fx_line, fixp->fx_r_type); in md_apply_fix()
3438 fixp->fx_addnumber = value; in md_apply_fix()
3466 tc_gen_reloc (asection * seg ATTRIBUTE_UNUSED, fixS * fixp) in tc_gen_reloc() argument
3473 reloc->address = fixp->fx_frag->fr_address + fixp->fx_where; in tc_gen_reloc()
3474 reloc->howto = bfd_reloc_type_lookup (stdoutput, fixp->fx_r_type); in tc_gen_reloc()
3478 as_bad_where (fixp->fx_file, fixp->fx_line, in tc_gen_reloc()
3480 (int) fixp->fx_r_type); in tc_gen_reloc()
3488 if (fixp->fx_subsy in tc_gen_reloc()
3489 && S_GET_SEGMENT (fixp->fx_subsy) == absolute_section) in tc_gen_reloc()
3491 fixp->fx_offset -= S_GET_VALUE (fixp->fx_subsy); in tc_gen_reloc()
3492 fixp->fx_subsy = NULL; in tc_gen_reloc()
3495 if (fixp->fx_addsy && fixp->fx_subsy) in tc_gen_reloc()
3499 asec = S_GET_SEGMENT (fixp->fx_addsy); in tc_gen_reloc()
3500 ssec = S_GET_SEGMENT (fixp->fx_subsy); in tc_gen_reloc()
3518 && (fixp->fx_addsy != fixp->fx_subsy) in tc_gen_reloc()
3520 && ! S_IS_GAS_LOCAL (fixp->fx_addsy) in tc_gen_reloc()
3521 && ! S_IS_GAS_LOCAL (fixp->fx_subsy)) in tc_gen_reloc()
3531 reloc2->addend = - S_GET_VALUE (fixp->fx_subsy); in tc_gen_reloc()
3538 *reloc2->sym_ptr_ptr = symbol_get_bfdsym (fixp->fx_subsy); in tc_gen_reloc()
3541 reloc->addend = fixp->fx_offset; in tc_gen_reloc()
3544 reloc->addend += S_GET_VALUE (fixp->fx_addsy); in tc_gen_reloc()
3550 *reloc->sym_ptr_ptr = symbol_get_bfdsym (fixp->fx_addsy); in tc_gen_reloc()
3553 fixp->fx_pcrel = 0; in tc_gen_reloc()
3554 fixp->fx_done = 1; in tc_gen_reloc()
3559 char *fixpos = fixp->fx_where + fixp->fx_frag->fr_literal; in tc_gen_reloc()
3561 reloc->addend = (S_GET_VALUE (fixp->fx_addsy) in tc_gen_reloc()
3562 - S_GET_VALUE (fixp->fx_subsy) + fixp->fx_offset); in tc_gen_reloc()
3564 switch (fixp->fx_r_type) in tc_gen_reloc()
3595 if (fixp->fx_r_type == BFD_RELOC_MSP430X_ABS16 in tc_gen_reloc()
3596 && S_GET_SEGMENT (fixp->fx_addsy) == absolute_section) in tc_gen_reloc()
3598 bfd_vma amount = S_GET_VALUE (fixp->fx_addsy); in tc_gen_reloc()
3599 char *fixpos = fixp->fx_where + fixp->fx_frag->fr_literal; in tc_gen_reloc()
3607 *reloc->sym_ptr_ptr = symbol_get_bfdsym (fixp->fx_addsy); in tc_gen_reloc()
3608 reloc->addend = fixp->fx_offset; in tc_gen_reloc()
3610 if (fixp->fx_r_type == BFD_RELOC_VTABLE_INHERIT in tc_gen_reloc()
3611 || fixp->fx_r_type == BFD_RELOC_VTABLE_ENTRY) in tc_gen_reloc()
3612 reloc->address = fixp->fx_offset; in tc_gen_reloc()
3885 msp430_fix_adjustable (struct fix *fixp ATTRIBUTE_UNUSED) in msp430_fix_adjustable()
3888 if (fixp->fx_addsy in msp430_fix_adjustable()
3889 && ((S_GET_SEGMENT (fixp->fx_addsy)->flags & SEC_CODE) == 0)) in msp430_fix_adjustable()