Lines Matching refs:reloc_data
1078 debug_arc_reloc (struct arc_relocation_data reloc_data)
1081 reloc_data.howto->name,
1082 reloc_data.should_relocate ? "true" : "false");
1084 (unsigned int) reloc_data.reloc_offset,
1085 (unsigned int) reloc_data.reloc_addend);
1088 (unsigned int) reloc_data.sym_value);
1089 if (reloc_data.sym_section != NULL)
1093 reloc_data.sym_section->name,
1094 (unsigned int) reloc_data.sym_section->output_offset);
1095 if (reloc_data.sym_section->output_section != NULL)
1097 ((unsigned int) reloc_data.sym_section->output_section->vma));
1099 if (reloc_data.sym_section->owner
1100 && reloc_data.sym_section->owner->filename)
1101 ARC_DEBUG (" file: %s\n", reloc_data.sym_section->owner->filename);
1109 if (reloc_data.input_section != NULL)
1112 reloc_data.input_section->name,
1113 (unsigned int) reloc_data.input_section->output_offset,
1114 (unsigned int) reloc_data.input_section->output_section->vma);
1116 (unsigned int) (reloc_data.input_section->output_section->vma
1117 + reloc_data.input_section->output_offset
1118 + reloc_data.reloc_offset));
1119 ARC_DEBUG (" file: %s\n", reloc_data.input_section->owner->filename);
1147 arc_special_overflow_checks (const struct arc_relocation_data reloc_data,
1151 switch (reloc_data.howto->type)
1156 if (reloc_data.reloc_addend == 0)
1161 reloc_data.input_section->owner,
1162 reloc_data.input_section,
1163 (uint64_t) reloc_data.reloc_offset,
1164 reloc_data.symbol_name,
1172 reloc_data.input_section->owner,
1173 reloc_data.input_section,
1174 (uint64_t) reloc_data.reloc_offset,
1175 reloc_data.symbol_name,
1176 (uint64_t) reloc_data.reloc_addend,
1195 #define S ((bfd_signed_vma) (reloc_data.sym_value \
1196 + (reloc_data.sym_section->output_section != NULL ? \
1197 (reloc_data.sym_section->output_offset \
1198 + reloc_data.sym_section->output_section->vma) : 0)))
1199 #define L ((bfd_signed_vma) (reloc_data.sym_value \
1200 + (reloc_data.sym_section->output_section != NULL ? \
1201 (reloc_data.sym_section->output_offset \
1202 + reloc_data.sym_section->output_section->vma) : 0)))
1203 #define A (reloc_data
1205 #define G (reloc_data.got_offset_value)
1206 #define GOT (reloc_data.got_symbol_vma)
1214 (reloc_data.input_section->output_section != NULL ? \
1215 reloc_data.input_section->output_section->vma : 0) \
1216 + reloc_data.input_section->output_offset \
1217 + (reloc_data.reloc_offset - (bitsize >= 32 ? 4 : 0))) \
1220 (reloc_data.input_section->output_section->vma \
1221 + reloc_data.input_section->output_offset \
1222 + (reloc_data.reloc_offset))))
1223 #define SECTSTART (bfd_signed_vma) (reloc_data.sym_section->output_section->vma \
1224 + reloc_data.sym_section->output_offset)
1226 (bfd_signed_vma) (reloc_data.sym_section->output_section->vma)
1227 #define JLI (bfd_signed_vma) (reloc_data.sym_section->output_section->vma)
1228 #define _SDA_BASE_ (bfd_signed_vma) (reloc_data.sdata_begin_symbol_vma)
1238 asection *sym_section = reloc_data.sym_section; \
1239 asection *input_section = reloc_data.input_section; \
1261 ARC_DEBUG ("SDA_SET = %d\n", reloc_data.sdata_begin_symbol_vma_set); \
1299 struct arc_relocation_data reloc_data,
1305 bfd * abfd = reloc_data.input_section->owner;
1310 if (!reloc_data.should_relocate)
1313 switch (bfd_get_reloc_size (reloc_data.howto))
1317 contents + reloc_data.reloc_offset,
1318 reloc_data.input_section);
1322 contents + reloc_data.reloc_offset,
1323 reloc_data.input_section);
1327 contents + reloc_data.reloc_offset,
1328 reloc_data.input_section);
1340 switch (reloc_data.howto->type)
1352 switch (reloc_data.howto->type)
1362 if (reloc_data.howto->complain_on_overflow != complain_overflow_dont)
1363 flag = bfd_check_overflow (reloc_data.howto->complain_on_overflow,
1364 reloc_data.howto->bitsize,
1365 reloc_data.howto->rightshift,
1369 flag = arc_special_overflow_checks (reloc_data, relocation, info);
1374 DEBUG_ARC_RELOC (reloc_data);
1383 switch (bfd_get_reloc_size (reloc_data.howto))
1387 contents + reloc_data.reloc_offset,
1388 reloc_data.input_section);
1392 contents + reloc_data.reloc_offset,
1393 reloc_data.input_section);
1397 contents + reloc_data.reloc_offset,
1398 reloc_data.input_section);
1401 ARC_DEBUG ("size = %d\n", reloc_data.howto->size);
1473 struct arc_relocation_data reloc_data =
1531 if (!reloc_data.sdata_begin_symbol_vma_set
1536 reloc_data.sdata_begin_symbol_vma =
1539 reloc_data.sdata_begin_symbol_vma_set = true;
1542 reloc_data.input_section = input_section;
1543 reloc_data.howto = howto;
1544 reloc_data.reloc_offset = rel->r_offset;
1545 reloc_data.reloc_addend = rel->r_addend;
1583 reloc_data.sym_value = h->root.u.def.value;
1615 reloc_data.sym_value = sym->st_value;
1616 reloc_data.sym_section = sec;
1617 reloc_data.symbol_name =
1635 reloc_data.reloc_addend = rel->r_addend;
1640 reloc_data.got_symbol_vma = htab->sgot->output_section->vma
1643 reloc_data.should_relocate = true;
1668 reloc_data.symbol_name = h->root.root.string;
1674 reloc_data.sym_value = h->root.u.def.value;
1675 reloc_data.sym_section = h->root.u.def.section;
1677 reloc_data.should_relocate = true;
1686 reloc_data.sym_value + reloc_data.reloc_addend
1687 + (reloc_data.sym_section->output_section != NULL ?
1688 (reloc_data.sym_section->output_offset
1689 + reloc_data.sym_section->output_section->vma)
1700 reloc_data.sym_value = h->plt.offset;
1701 reloc_data.sym_section = htab->splt;
1709 reloc_data.sym_value = h->root.u.def.value;
1710 reloc_data.sym_section = htab->sgot;
1711 reloc_data.should_relocate = true;
1717 reloc_data.sym_value = h->plt.offset;
1718 reloc_data.sym_section = htab->splt;
1719 reloc_data.should_relocate = true;
1728 reloc_data.sym_value = h->root.u.def.value;
1729 reloc_data.sym_section = htab->sgot;
1731 reloc_data.should_relocate = true;
1741 reloc_data.sym_value = h->plt.offset;
1742 reloc_data.sym_section = htab->splt;
1744 reloc_data.should_relocate = true;
1754 reloc_data.got_symbol_vma = htab->sgot->output_section->vma
1761 reloc_data.should_relocate = true;
1766 reloc_data.got_offset_value
1775 &reloc_data);
1882 && !reloc_data.sdata_begin_symbol_vma_set)
1890 DEBUG_ARC_RELOC (reloc_data);
1895 && reloc_data.sym_section == NULL)
1904 switch (arc_do_relocation (contents, reloc_data, info))
1911 (info, (h ? &h->root : NULL), reloc_data.symbol_name, howto->name, (bfd_vma) 0,
1917 (info, reloc_data.symbol_name, input_bfd, input_section, rel->r_offset, true);
1947 _bfd_error_handler (msg, input_bfd, input_section, reloc_data.symbol_name);