Lines Matching refs:reloc_data
1077 debug_arc_reloc (struct arc_relocation_data reloc_data)
1080 reloc_data.howto->name,
1081 reloc_data.should_relocate ? "true" : "false");
1083 (unsigned int) reloc_data.reloc_offset,
1084 (unsigned int) reloc_data.reloc_addend);
1087 (unsigned int) reloc_data.sym_value);
1088 if (reloc_data.sym_section != NULL)
1092 reloc_data.sym_section->name,
1093 (unsigned int) reloc_data.sym_section->output_offset);
1094 if (reloc_data.sym_section->output_section != NULL)
1096 ((unsigned int) reloc_data.sym_section->output_section->vma));
1098 if (reloc_data.sym_section->owner
1099 && reloc_data.sym_section->owner->filename)
1100 ARC_DEBUG (" file: %s\n", reloc_data.sym_section->owner->filename);
1108 if (reloc_data.input_section != NULL)
1111 reloc_data.input_section->name,
1112 (unsigned int) reloc_data.input_section->output_offset,
1113 (unsigned int) reloc_data.input_section->output_section->vma);
1115 (unsigned int) (reloc_data.input_section->output_section->vma
1116 + reloc_data.input_section->output_offset
1117 + reloc_data.reloc_offset));
1118 ARC_DEBUG (" file: %s\n", reloc_data.input_section->owner->filename);
1146 arc_special_overflow_checks (const struct arc_relocation_data reloc_data,
1150 switch (reloc_data.howto->type)
1155 if (reloc_data.reloc_addend == 0)
1160 reloc_data.input_section->owner,
1161 reloc_data.input_section,
1162 (uint64_t) reloc_data.reloc_offset,
1163 reloc_data.symbol_name,
1171 reloc_data.input_section->owner,
1172 reloc_data.input_section,
1173 (uint64_t) reloc_data.reloc_offset,
1174 reloc_data.symbol_name,
1175 (uint64_t) reloc_data.reloc_addend,
1194 #define S ((bfd_signed_vma) (reloc_data.sym_value \
1195 + (reloc_data.sym_section->output_section != NULL ? \
1196 (reloc_data.sym_section->output_offset \
1197 + reloc_data.sym_section->output_section->vma) : 0)))
1198 #define L ((bfd_signed_vma) (reloc_data.sym_value \
1199 + (reloc_data.sym_section->output_section != NULL ? \
1200 (reloc_data.sym_section->output_offset \
1201 + reloc_data.sym_section->output_section->vma) : 0)))
1202 #define A (reloc_data.reloc_addend)
1204 reloc_data.got_offset_value)
1205 #define GOT (reloc_data.got_symbol_vma)
1213 (reloc_data.input_section->output_section != NULL ? \
1214 reloc_data.input_section->output_section->vma : 0) \
1215 + reloc_data.input_section->output_offset \
1216 + (reloc_data.reloc_offset - (bitsize >= 32 ? 4 : 0))) \
1219 (reloc_data.input_section->output_section->vma \
1220 + reloc_data.input_section->output_offset \
1221 + (reloc_data.reloc_offset))))
1222 #define SECTSTART (bfd_signed_vma) (reloc_data.sym_section->output_section->vma \
1223 + reloc_data.sym_section->output_offset)
1225 (bfd_signed_vma) (reloc_data.sym_section->output_section->vma)
1226 #define JLI (bfd_signed_vma) (reloc_data.sym_section->output_section->vma)
1227 #define _SDA_BASE_ (bfd_signed_vma) (reloc_data.sdata_begin_symbol_vma)
1237 asection *sym_section = reloc_data.sym_section; \
1238 asection *input_section = reloc_data.input_section; \
1260 ARC_DEBUG ("SDA_SET = %d\n", reloc_data.sdata_begin_symbol_vma_set); \
1298 struct arc_relocation_data reloc_data,
1304 bfd * abfd = reloc_data.input_section->owner;
1309 if (!reloc_data.should_relocate)
1312 switch (bfd_get_reloc_size (reloc_data.howto))
1316 contents + reloc_data.reloc_offset,
1317 reloc_data.input_section);
1321 contents + reloc_data.reloc_offset,
1322 reloc_data.input_section);
1326 contents + reloc_data.reloc_offset,
1327 reloc_data.input_section);
1339 switch (reloc_data.howto->type)
1351 switch (reloc_data.howto->type)
1361 if (reloc_data.howto->complain_on_overflow != complain_overflow_dont)
1362 flag = bfd_check_overflow (reloc_data.howto->complain_on_overflow,
1363 reloc_data.howto->bitsize,
1364 reloc_data.howto->rightshift,
1368 flag = arc_special_overflow_checks (reloc_data, relocation, info);
1373 DEBUG_ARC_RELOC (reloc_data);
1382 switch (bfd_get_reloc_size (reloc_data.howto))
1386 contents + reloc_data.reloc_offset,
1387 reloc_data.input_section);
1391 contents + reloc_data.reloc_offset,
1392 reloc_data.input_section);
1396 contents + reloc_data.reloc_offset,
1397 reloc_data.input_section);
1400 ARC_DEBUG ("size = %d\n", reloc_data.howto->size);
1472 struct arc_relocation_data reloc_data =
1530 if (!reloc_data.sdata_begin_symbol_vma_set
1535 reloc_data.sdata_begin_symbol_vma =
1538 reloc_data.sdata_begin_symbol_vma_set = true;
1541 reloc_data.input_section = input_section;
1542 reloc_data.howto = howto;
1543 reloc_data.reloc_offset = rel->r_offset;
1544 reloc_data.reloc_addend = rel->r_addend;
1582 reloc_data.sym_value = h->root.u.def.value;
1614 reloc_data.sym_value = sym->st_value;
1615 reloc_data.sym_section = sec;
1616 reloc_data.symbol_name =
1634 reloc_data.reloc_addend = rel->r_addend;
1639 reloc_data.got_symbol_vma = htab->sgot->output_section->vma
1642 reloc_data.should_relocate = true;
1667 reloc_data.symbol_name = h->root.root.string;
1673 reloc_data.sym_value = h->root.u.def.value;
1674 reloc_data.sym_section = h->root.u.def.section;
1676 reloc_data.should_relocate = true;
1685 reloc_data.sym_value + reloc_data.reloc_addend
1686 + (reloc_data.sym_section->output_section != NULL ?
1687 (reloc_data.sym_section->output_offset
1688 + reloc_data.sym_section->output_section->vma)
1699 reloc_data.sym_value = h->plt.offset;
1700 reloc_data.sym_section = htab->splt;
1708 reloc_data.sym_value = h->root.u.def.value;
1709 reloc_data.sym_section = htab->sgot;
1710 reloc_data.should_relocate = true;
1716 reloc_data.sym_value = h->plt.offset;
1717 reloc_data.sym_section = htab->splt;
1718 reloc_data.should_relocate = true;
1727 reloc_data.sym_value = h->root.u.def.value;
1728 reloc_data.sym_section = htab->sgot;
1730 reloc_data.should_relocate = true;
1740 reloc_data.sym_value = h->plt.offset;
1741 reloc_data.sym_section = htab->splt;
1743 reloc_data.should_relocate = true;
1753 reloc_data.got_symbol_vma = htab->sgot->output_section->vma
1760 reloc_data.should_relocate = true;
1765 reloc_data.got_offset_value
1774 &reloc_data);
1881 && !reloc_data.sdata_begin_symbol_vma_set)
1889 DEBUG_ARC_RELOC (reloc_data);
1894 && reloc_data.sym_section == NULL)
1903 switch (arc_do_relocation (contents, reloc_data, info))
1910 (info, (h ? &h->root : NULL), reloc_data.symbol_name, howto->name, (bfd_vma) 0,
1916 (info, reloc_data.symbol_name, input_bfd, input_section, rel->r_offset, true);
1946 _bfd_error_handler (msg, input_bfd, input_section, reloc_data.symbol_name);