Lines Matching refs:reloc_data
1078 debug_arc_reloc (struct arc_relocation_data reloc_data) in debug_arc_reloc() argument
1081 reloc_data.howto->name, in debug_arc_reloc()
1082 reloc_data.should_relocate ? "true" : "false"); in debug_arc_reloc()
1084 (unsigned int) reloc_data.reloc_offset, in debug_arc_reloc()
1085 (unsigned int) reloc_data.reloc_addend); in debug_arc_reloc()
1088 (unsigned int) reloc_data.sym_value); in debug_arc_reloc()
1089 if (reloc_data.sym_section != NULL) in debug_arc_reloc()
1093 reloc_data.sym_section->name, in debug_arc_reloc()
1094 (unsigned int) reloc_data.sym_section->output_offset); in debug_arc_reloc()
1095 if (reloc_data.sym_section->output_section != NULL) in debug_arc_reloc()
1097 ((unsigned int) reloc_data.sym_section->output_section->vma)); in debug_arc_reloc()
1099 if (reloc_data.sym_section->owner in debug_arc_reloc()
1100 && reloc_data.sym_section->owner->filename) in debug_arc_reloc()
1101 ARC_DEBUG (" file: %s\n", reloc_data.sym_section->owner->filename); in debug_arc_reloc()
1109 if (reloc_data.input_section != NULL) in debug_arc_reloc()
1112 reloc_data.input_section->name, in debug_arc_reloc()
1113 (unsigned int) reloc_data.input_section->output_offset, in debug_arc_reloc()
1114 (unsigned int) reloc_data.input_section->output_section->vma); in debug_arc_reloc()
1116 (unsigned int) (reloc_data.input_section->output_section->vma in debug_arc_reloc()
1117 + reloc_data.input_section->output_offset in debug_arc_reloc()
1118 + reloc_data.reloc_offset)); in debug_arc_reloc()
1119 ARC_DEBUG (" file: %s\n", reloc_data.input_section->owner->filename); in debug_arc_reloc()
1147 arc_special_overflow_checks (const struct arc_relocation_data reloc_data, in arc_special_overflow_checks() argument
1151 switch (reloc_data.howto->type) in arc_special_overflow_checks()
1156 if (reloc_data.reloc_addend == 0) in arc_special_overflow_checks()
1161 reloc_data.input_section->owner, in arc_special_overflow_checks()
1162 reloc_data.input_section, in arc_special_overflow_checks()
1163 (uint64_t) reloc_data.reloc_offset, in arc_special_overflow_checks()
1164 reloc_data.symbol_name, in arc_special_overflow_checks()
1172 reloc_data.input_section->owner, in arc_special_overflow_checks()
1173 reloc_data.input_section, in arc_special_overflow_checks()
1174 (uint64_t) reloc_data.reloc_offset, in arc_special_overflow_checks()
1175 reloc_data.symbol_name, in arc_special_overflow_checks()
1176 (uint64_t) reloc_data.reloc_addend, in arc_special_overflow_checks()
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.reloc_addend)
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)
1232 reloc_data.sym_section->alignment_power))
1240 asection *sym_section = reloc_data.sym_section; \
1241 asection *input_section = reloc_data.input_section; \
1263 ARC_DEBUG ("SDA_SET = %d\n", reloc_data.sdata_begin_symbol_vma_set); \
1301 struct arc_relocation_data reloc_data, in arc_do_relocation() argument
1307 bfd * abfd = reloc_data.input_section->owner; in arc_do_relocation()
1311 if (!reloc_data.should_relocate) in arc_do_relocation()
1314 switch (bfd_get_reloc_size (reloc_data.howto)) in arc_do_relocation()
1318 contents + reloc_data.reloc_offset, in arc_do_relocation()
1319 reloc_data.input_section); in arc_do_relocation()
1323 contents + reloc_data.reloc_offset, in arc_do_relocation()
1324 reloc_data.input_section); in arc_do_relocation()
1328 contents + reloc_data.reloc_offset, in arc_do_relocation()
1329 reloc_data.input_section); in arc_do_relocation()
1339 switch (reloc_data.howto->type) in arc_do_relocation()
1349 if (reloc_data.howto->complain_on_overflow != complain_overflow_dont) in arc_do_relocation()
1350 flag = bfd_check_overflow (reloc_data.howto->complain_on_overflow, in arc_do_relocation()
1351 reloc_data.howto->bitsize, in arc_do_relocation()
1352 reloc_data.howto->rightshift, in arc_do_relocation()
1356 flag = arc_special_overflow_checks (reloc_data, relocation, info); in arc_do_relocation()
1361 DEBUG_ARC_RELOC (reloc_data); in arc_do_relocation()
1370 switch (bfd_get_reloc_size (reloc_data.howto)) in arc_do_relocation()
1374 contents + reloc_data.reloc_offset, in arc_do_relocation()
1375 reloc_data.input_section); in arc_do_relocation()
1379 contents + reloc_data.reloc_offset, in arc_do_relocation()
1380 reloc_data.input_section); in arc_do_relocation()
1384 contents + reloc_data.reloc_offset, in arc_do_relocation()
1385 reloc_data.input_section); in arc_do_relocation()
1388 ARC_DEBUG ("size = %d\n", reloc_data.howto->size); in arc_do_relocation()
1460 struct arc_relocation_data reloc_data = in elf_arc_relocate_section() local
1518 if (!reloc_data.sdata_begin_symbol_vma_set in elf_arc_relocate_section()
1523 reloc_data.sdata_begin_symbol_vma = in elf_arc_relocate_section()
1526 reloc_data.sdata_begin_symbol_vma_set = true; in elf_arc_relocate_section()
1529 reloc_data.input_section = input_section; in elf_arc_relocate_section()
1530 reloc_data.howto = howto; in elf_arc_relocate_section()
1531 reloc_data.reloc_offset = rel->r_offset; in elf_arc_relocate_section()
1532 reloc_data.reloc_addend = rel->r_addend; in elf_arc_relocate_section()
1570 reloc_data.sym_value = h->root.u.def.value; in elf_arc_relocate_section()
1602 reloc_data.sym_value = sym->st_value; in elf_arc_relocate_section()
1603 reloc_data.sym_section = sec; in elf_arc_relocate_section()
1604 reloc_data.symbol_name = in elf_arc_relocate_section()
1622 reloc_data.reloc_addend = rel->r_addend; in elf_arc_relocate_section()
1627 reloc_data.got_symbol_vma = htab->sgot->output_section->vma in elf_arc_relocate_section()
1630 reloc_data.should_relocate = true; in elf_arc_relocate_section()
1655 reloc_data.symbol_name = h->root.root.string; in elf_arc_relocate_section()
1661 reloc_data.sym_value = h->root.u.def.value; in elf_arc_relocate_section()
1662 reloc_data.sym_section = h->root.u.def.section; in elf_arc_relocate_section()
1664 reloc_data.should_relocate = true; in elf_arc_relocate_section()
1673 reloc_data.sym_value + reloc_data.reloc_addend in elf_arc_relocate_section()
1674 + (reloc_data.sym_section->output_section != NULL ? in elf_arc_relocate_section()
1675 (reloc_data.sym_section->output_offset in elf_arc_relocate_section()
1676 + reloc_data.sym_section->output_section->vma) in elf_arc_relocate_section()
1687 reloc_data.sym_value = h->plt.offset; in elf_arc_relocate_section()
1688 reloc_data.sym_section = htab->splt; in elf_arc_relocate_section()
1696 reloc_data.sym_value = h->root.u.def.value; in elf_arc_relocate_section()
1697 reloc_data.sym_section = htab->sgot; in elf_arc_relocate_section()
1698 reloc_data.should_relocate = true; in elf_arc_relocate_section()
1704 reloc_data.sym_value = h->plt.offset; in elf_arc_relocate_section()
1705 reloc_data.sym_section = htab->splt; in elf_arc_relocate_section()
1706 reloc_data.should_relocate = true; in elf_arc_relocate_section()
1715 reloc_data.sym_value = h->root.u.def.value; in elf_arc_relocate_section()
1716 reloc_data.sym_section = htab->sgot; in elf_arc_relocate_section()
1718 reloc_data.should_relocate = true; in elf_arc_relocate_section()
1728 reloc_data.sym_value = h->plt.offset; in elf_arc_relocate_section()
1729 reloc_data.sym_section = htab->splt; in elf_arc_relocate_section()
1731 reloc_data.should_relocate = true; in elf_arc_relocate_section()
1741 reloc_data.got_symbol_vma = htab->sgot->output_section->vma in elf_arc_relocate_section()
1748 reloc_data.should_relocate = true; in elf_arc_relocate_section()
1753 reloc_data.got_offset_value in elf_arc_relocate_section()
1762 &reloc_data); in elf_arc_relocate_section()
1869 && !reloc_data.sdata_begin_symbol_vma_set) in elf_arc_relocate_section()
1877 DEBUG_ARC_RELOC (reloc_data); in elf_arc_relocate_section()
1882 && reloc_data.sym_section == NULL) in elf_arc_relocate_section()
1891 switch (arc_do_relocation (contents, reloc_data, info)) in elf_arc_relocate_section()
1898 (info, (h ? &h->root : NULL), reloc_data.symbol_name, howto->name, (bfd_vma) 0, in elf_arc_relocate_section()
1904 (info, reloc_data.symbol_name, input_bfd, input_section, rel->r_offset, true); in elf_arc_relocate_section()
1934 _bfd_error_handler (msg, input_bfd, input_section, reloc_data.symbol_name); in elf_arc_relocate_section()