Lines Matching full:fixp
157 fixS *fixp;
1810 fixS *fixP;
1815 fixP = gas_cgen_record_fixup (fragP,
1826 fixP->fx_r_type = fragP->fr_cgen.opinfo;
1844 md_pcrel_from_section (fixS *fixP, segT sec)
1846 if (fixP->fx_addsy != (symbolS *) NULL
1847 && (! S_IS_DEFINED (fixP->fx_addsy)
1848 || S_GET_SEGMENT (fixP->fx_addsy) != sec
1849 || S_IS_EXTERNAL (fixP->fx_addsy)
1850 || S_IS_WEAK (fixP->fx_addsy)))
1852 if (S_GET_SEGMENT (fixP->fx_addsy) != sec
1853 && S_IS_DEFINED (fixP->fx_addsy)
1854 && ! S_IS_EXTERNAL (fixP->fx_addsy)
1855 && ! S_IS_WEAK (fixP->fx_addsy))
1856 return fixP->fx_offset;
1863 return (fixP->fx_frag->fr_address + fixP->fx_where) & -4L;
1866 /* Return the bfd reloc type for OPERAND of INSN at fixup FIXP.
1868 *FIXP may be modified if desired. */
1873 fixS *fixP)
1885 if (fixP->fx_cgen.opinfo != 0)
1886 return fixP->fx_cgen.opinfo;
1899 fixS *fixP,
1908 hi_fixup->fixp = fixP;
1927 fixS *fixP;
1933 fixP = gas_cgen_record_fixup_exp (frag, where, insn, length,
1940 if (fixP->fx_cgen.opinfo == BFD_RELOC_M32R_HI16_SLO
1941 || fixP->fx_cgen.opinfo == BFD_RELOC_M32R_HI16_ULO)
1942 m32r_record_hi16 (fixP->fx_cgen.opinfo, fixP, now_seg);
1954 return fixP;
1957 if (fixP->fx_cgen.opinfo == BFD_RELOC_M32R_HI16_SLO)
1959 else if (fixP->fx_cgen.opinfo == BFD_RELOC_M32R_HI16_ULO)
1961 else if (fixP->fx_cgen.opinfo == BFD_RELOC_M32R_LO16)
1966 if (fixP->fx_cgen.opinfo == BFD_RELOC_M32R_HI16_SLO)
1968 else if (fixP->fx_cgen.opinfo == BFD_RELOC_M32R_HI16_ULO)
1970 else if (fixP->fx_cgen.opinfo == BFD_RELOC_M32R_LO16)
1975 if (fixP->fx_cgen.opinfo == BFD_RELOC_M32R_HI16_SLO)
1977 else if (fixP->fx_cgen.opinfo == BFD_RELOC_M32R_HI16_ULO)
1979 else if (fixP->fx_cgen.opinfo == BFD_RELOC_M32R_LO16)
1988 fixP->fx_r_type = r_type;
1990 return fixP;
2012 gas_assert (FX_OPINFO_R_TYPE (l->fixp) == BFD_RELOC_M32R_HI16_SLO
2013 || FX_OPINFO_R_TYPE (l->fixp) == BFD_RELOC_M32R_HI16_ULO);
2016 if (l->fixp->fx_next != NULL
2017 && FX_OPINFO_R_TYPE (l->fixp->fx_next) == BFD_RELOC_M32R_LO16
2018 && l->fixp->fx_addsy == l->fixp->fx_next->fx_addsy
2019 && l->fixp->fx_offset == l->fixp->fx_next->fx_offset)
2036 /* Check whether this is a `low' fixup which matches l->fixp. */
2038 && f->fx_addsy == l->fixp->fx_addsy
2039 && f->fx_offset == l->fixp->fx_offset
2049 /* Move l->fixp before f. */
2051 *pf != l->fixp;
2055 *pf = l->fixp->fx_next;
2057 l->fixp->fx_next = f;
2059 seginfo->fix_root = l->fixp;
2061 prev->fx_next = l->fixp;
2074 as_warn_where (l->fixp->fx_file, l->fixp->fx_line,
2137 m32r_fix_adjustable (fixS *fixP)
2141 if ((int) fixP->fx_r_type >= (int) BFD_RELOC_UNUSED)
2144 int opindex = (int) fixP->fx_r_type - (int) BFD_RELOC_UNUSED;
2148 reloc_type = md_cgen_lookup_reloc (insn, operand, fixP);
2151 reloc_type = fixP->fx_r_type;
2153 if (fixP->fx_addsy == NULL)
2157 if (S_IS_EXTERNAL (fixP->fx_addsy))
2159 if (S_IS_WEAK (fixP->fx_addsy))
2200 tc_gen_reloc (asection * section, fixS * fixP)
2208 *reloc->sym_ptr_ptr = symbol_get_bfdsym (fixP->fx_addsy);
2209 reloc->address = fixP->fx_frag->fr_address + fixP->fx_where;
2211 if (fixP->fx_pcrel)
2213 if (fixP->fx_r_type == BFD_RELOC_32)
2214 fixP->fx_r_type = BFD_RELOC_32_PCREL;
2215 else if (fixP->fx_r_type == BFD_RELOC_16)
2217 fixP->fx_r_type = BFD_RELOC_16_PCREL;
2222 code = fixP->fx_r_type;
2235 if (fixP->fx_addsy != NULL
2236 && strcmp (S_GET_NAME (fixP->fx_addsy), GOT_NAME) == 0)
2243 if (fixP->fx_addsy != NULL
2244 && strcmp (S_GET_NAME (fixP->fx_addsy), GOT_NAME) == 0)
2251 if (fixP->fx_addsy != NULL
2252 && strcmp (S_GET_NAME (fixP->fx_addsy), GOT_NAME) == 0)
2259 if (fixP->fx_addsy != NULL
2260 && strcmp (S_GET_NAME (fixP->fx_addsy), GOT_NAME) == 0)
2282 as_bad_where (fixP->fx_file, fixP->fx_line,
2284 fixP->fx_r_type, bfd_get_reloc_code_name (code));
2289 if ( fixP->fx_r_type == BFD_RELOC_VTABLE_ENTRY
2290 || fixP->fx_r_type == BFD_RELOC_VTABLE_INHERIT
2291 || fixP->fx_r_type == BFD_RELOC_32_PCREL)
2292 reloc->addend = fixP->fx_offset;
2295 && fixP->fx_pcrel
2296 && fixP->fx_addsy != NULL
2297 && (S_GET_SEGMENT(fixP->fx_addsy) != section)
2298 && S_IS_DEFINED (fixP->fx_addsy)
2299 && ! S_IS_EXTERNAL(fixP->fx_addsy)
2300 && ! S_IS_WEAK(fixP->fx_addsy))
2302 reloc->addend = fixP->fx_offset;
2304 reloc->addend = fixP->fx_addnumber;