/arch/um/kernel/ |
D | dyn.lds.S | 29 .rel.init : { *(.rel.init) } 31 .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } 33 .rel.fini : { *(.rel.fini) } 35 .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } 37 .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } 39 .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } 41 .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } 43 .rel.ctors : { *(.rel.ctors) } 45 .rel.dtors : { *(.rel.dtors) } 47 .rel.got : { *(.rel.got) } [all …]
|
/arch/m68k/kernel/ |
D | module.c | 29 Elf32_Rel *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate() local 35 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate() 38 + rel[i].r_offset; in apply_relocate() 42 + ELF32_R_SYM(rel[i].r_info); in apply_relocate() 44 switch (ELF32_R_TYPE(rel[i].r_info)) { in apply_relocate() 55 me->name, ELF32_R_TYPE(rel[i].r_info)); in apply_relocate() 69 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add() local 75 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add() 78 + rel[i].r_offset; in apply_relocate_add() 82 + ELF32_R_SYM(rel[i].r_info); in apply_relocate_add() [all …]
|
/arch/x86/kernel/ |
D | module.c | 107 Elf32_Rel *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate() local 113 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate() 116 + rel[i].r_offset; in apply_relocate() 120 + ELF32_R_SYM(rel[i].r_info); in apply_relocate() 122 switch (ELF32_R_TYPE(rel[i].r_info)) { in apply_relocate() 133 me->name, ELF32_R_TYPE(rel[i].r_info)); in apply_relocate() 147 Elf64_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add() local 154 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add() 157 + rel[i].r_offset; in apply_relocate_add() 162 + ELF64_R_SYM(rel[i].r_info); in apply_relocate_add() [all …]
|
/arch/unicore32/kernel/ |
D | module.c | 39 Elf32_Rel *rel = (void *)relsec->sh_addr; in apply_relocate() local 42 for (i = 0; i < relsec->sh_size / sizeof(Elf32_Rel); i++, rel++) { in apply_relocate() 47 offset = ELF32_R_SYM(rel->r_info); in apply_relocate() 58 if (rel->r_offset < 0 || rel->r_offset > in apply_relocate() 62 module->name, relindex, i, rel->r_offset, in apply_relocate() 67 loc = dstsec->sh_addr + rel->r_offset; in apply_relocate() 69 switch (ELF32_R_TYPE(rel->r_info)) { in apply_relocate() 104 module->name, ELF32_R_TYPE(rel->r_info)); in apply_relocate()
|
/arch/mn10300/kernel/ |
D | module.c | 63 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add() local 72 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add() 75 + rel[i].r_offset; in apply_relocate_add() 80 + ELF32_R_SYM(rel[i].r_info); in apply_relocate_add() 83 relocation = sym->st_value + rel[i].r_addend; in apply_relocate_add() 86 switch (ELF32_R_TYPE(rel[i].r_info)) { in apply_relocate_add() 96 me->name, ELF32_R_TYPE(rel[i].r_info)); in apply_relocate_add() 101 switch (ELF32_R_TYPE(rel[i].r_info)) { in apply_relocate_add() 146 me->name, ELF32_R_TYPE(rel[i].r_info)); in apply_relocate_add() 152 me->name, ELF32_R_TYPE(rel[i].r_info)); in apply_relocate_add()
|
/arch/openrisc/kernel/ |
D | module.c | 27 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add() local 34 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add() 37 + rel[i].r_offset; in apply_relocate_add() 42 + ELF32_R_SYM(rel[i].r_info); in apply_relocate_add() 43 value = sym->st_value + rel[i].r_addend; in apply_relocate_add() 45 switch (ELF32_R_TYPE(rel[i].r_info)) { in apply_relocate_add() 64 me->name, ELF32_R_TYPE(rel[i].r_info)); in apply_relocate_add()
|
/arch/score/kernel/ |
D | module.c | 37 Elf32_Rel *rel = (void *)relsec->sh_addr; in apply_relocate() local 40 for (i = 0; i < relsec->sh_size / sizeof(Elf32_Rel); i++, rel++) { in apply_relocate() 45 r_offset = ELF32_R_SYM(rel->r_info); in apply_relocate() 55 if ((rel->r_offset < 0) || in apply_relocate() 56 (rel->r_offset > dstsec->sh_size - sizeof(u32))) { in apply_relocate() 59 me->name, relindex, i, rel->r_offset, in apply_relocate() 64 loc = dstsec->sh_addr + rel->r_offset; in apply_relocate() 65 switch (ELF32_R_TYPE(rel->r_info)) { in apply_relocate() 120 me->name, ELF32_R_TYPE(rel->r_info)); in apply_relocate()
|
/arch/sh/kernel/ |
D | module.c | 44 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add() local 52 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add() 55 + rel[i].r_offset; in apply_relocate_add() 59 + ELF32_R_SYM(rel[i].r_info); in apply_relocate_add() 60 relocation = sym->st_value + rel[i].r_addend; in apply_relocate_add() 71 switch (ELF32_R_TYPE(rel[i].r_info)) { in apply_relocate_add() 105 me->name, ELF32_R_TYPE(rel[i].r_info)); in apply_relocate_add()
|
/arch/mips/include/asm/ |
D | module.h | 50 #define ELF_MIPS_R_SYM(rel) ELF32_R_SYM(rel.r_info) argument 51 #define ELF_MIPS_R_TYPE(rel) ELF32_R_TYPE(rel.r_info) argument 68 #define ELF_MIPS_R_SYM(rel) (rel.r_sym) argument 69 #define ELF_MIPS_R_TYPE(rel) (rel.r_type) argument
|
/arch/c6x/kernel/ |
D | module.c | 51 Elf32_Rela *rel = (void *) sechdrs[relsec].sh_addr; in apply_relocate_add() local 61 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add() 64 + rel[i].r_offset - offset; in apply_relocate_add() 69 + ELF32_R_SYM(rel[i].r_info); in apply_relocate_add() 72 v = sym->st_value + rel[i].r_addend; in apply_relocate_add() 74 switch (ELF32_R_TYPE(rel[i].r_info)) { in apply_relocate_add() 117 me->name, ELF32_R_TYPE(rel[i].r_info)); in apply_relocate_add()
|
/arch/tile/kernel/ |
D | module.c | 129 Elf_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add() local 136 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add() 139 + rel[i].r_offset; in apply_relocate_add() 145 + ELF_R_SYM(rel[i].r_info); in apply_relocate_add() 146 value = sym->st_value + rel[i].r_addend; in apply_relocate_add() 148 switch (ELF_R_TYPE(rel[i].r_info)) { in apply_relocate_add() 215 sym->st_value + rel[i].r_addend, in apply_relocate_add() 216 rel[i].r_offset, location); in apply_relocate_add() 227 me->name, (int) ELF_R_TYPE(rel[i].r_info)); in apply_relocate_add()
|
/arch/arm/kernel/ |
D | module-plts.c | 93 static bool is_zero_addend_relocation(Elf32_Addr base, const Elf32_Rel *rel) in is_zero_addend_relocation() argument 95 u32 *tval = (u32 *)(base + rel->r_offset); in is_zero_addend_relocation() 103 switch (ELF32_R_TYPE(rel->r_info)) { in is_zero_addend_relocation() 121 static bool duplicate_rel(Elf32_Addr base, const Elf32_Rel *rel, int num) in duplicate_rel() argument 133 prev = rel + num - 1; in duplicate_rel() 134 return cmp_rel(rel + num, prev) == 0 && in duplicate_rel() 140 const Elf32_Rel *rel, int num, Elf32_Word dstidx) in count_plts() argument 147 switch (ELF32_R_TYPE(rel[i].r_info)) { in count_plts() 164 s = syms + ELF32_R_SYM(rel[i].r_info); in count_plts() 183 if (!is_zero_addend_relocation(base, rel + i) || in count_plts() [all …]
|
D | module.c | 61 Elf32_Rel *rel = (void *)relsec->sh_addr; in apply_relocate() local 64 for (i = 0; i < relsec->sh_size / sizeof(Elf32_Rel); i++, rel++) { in apply_relocate() 74 offset = ELF32_R_SYM(rel->r_info); in apply_relocate() 84 if (rel->r_offset < 0 || rel->r_offset > dstsec->sh_size - sizeof(u32)) { in apply_relocate() 87 rel->r_offset, dstsec->sh_size); in apply_relocate() 91 loc = dstsec->sh_addr + rel->r_offset; in apply_relocate() 93 switch (ELF32_R_TYPE(rel->r_info)) { in apply_relocate() 136 ELF32_R_TYPE(rel->r_info), loc, in apply_relocate() 169 if (ELF32_R_TYPE(rel->r_info) == R_ARM_MOVT_ABS) in apply_relocate() 240 ELF32_R_TYPE(rel->r_info), loc, in apply_relocate() [all …]
|
/arch/h8300/include/asm/ |
D | flat.h | 20 #define flat_get_relocate_addr(rel) (rel & ~0x00000001) argument 25 #define flat_put_addr_at_rp(rp, addr, rel) \ argument
|
/arch/x86/realmode/ |
D | init.c | 49 const u32 *rel; in setup_real_mode() local 67 rel = (u32 *) real_mode_relocs; in setup_real_mode() 70 count = *rel++; in setup_real_mode() 72 u16 *seg = (u16 *) (base + *rel++); in setup_real_mode() 77 count = *rel++; in setup_real_mode() 79 u32 *ptr = (u32 *) (base + *rel++); in setup_real_mode()
|
/arch/arm64/include/asm/ |
D | atomic_ll_sc.h | 58 #define ATOMIC_OP_RETURN(name, mb, acq, rel, cl, op, asm_op) \ argument 69 " st" #rel "xr %w1, %w0, %2\n" \ 80 #define ATOMIC_FETCH_OP(name, mb, acq, rel, cl, op, asm_op) \ argument 91 " st" #rel "xr %w2, %w1, %3\n" \ 152 #define ATOMIC64_OP_RETURN(name, mb, acq, rel, cl, op, asm_op) \ argument 163 " st" #rel "xr %w1, %0, %2\n" \ 174 #define ATOMIC64_FETCH_OP(name, mb, acq, rel, cl, op, asm_op) \ argument 185 " st" #rel "xr %w2, %1, %3\n" \ 251 #define __CMPXCHG_CASE(w, sz, name, mb, acq, rel, cl) \ argument 264 " st" #rel "xr" #sz "\t%w[tmp], %" #w "[new], %[v]\n" \ [all …]
|
/arch/mips/mm/ |
D | uasm.c | 448 void ISAFUNC(uasm_r_mips_pc16)(struct uasm_reloc **rel, u32 *addr, int lid) in ISAFUNC() 450 (*rel)->addr = addr; in ISAFUNC() 451 (*rel)->type = R_MIPS_PC16; in ISAFUNC() 452 (*rel)->lab = lid; in ISAFUNC() 453 (*rel)++; in ISAFUNC() 457 static inline void __resolve_relocs(struct uasm_reloc *rel, 460 void ISAFUNC(uasm_resolve_relocs)(struct uasm_reloc *rel, in ISAFUNC() 465 for (; rel->lab != UASM_LABEL_INVALID; rel++) in ISAFUNC() 467 if (rel->lab == l->lab) in ISAFUNC() 468 __resolve_relocs(rel, l); in ISAFUNC() [all …]
|
/arch/sparc/kernel/ |
D | module.c | 89 Elf_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add() local 94 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add() 99 + rel[i].r_offset; in apply_relocate_add() 109 + ELF_R_SYM(rel[i].r_info); in apply_relocate_add() 110 v = sym->st_value + rel[i].r_addend; in apply_relocate_add() 112 switch (ELF_R_TYPE(rel[i].r_info) & 0xff) { in apply_relocate_add() 138 (ELF_R_TYPE(rel[i].r_info) >> 8)) in apply_relocate_add() 175 (int) (ELF_R_TYPE(rel[i].r_info) & 0xff)); in apply_relocate_add()
|
/arch/x86/tools/ |
D | relocs.c | 505 Elf_Rel *rel = &sec->reltab[j]; in read_relocs() local 506 rel->r_offset = elf_addr_to_cpu(rel->r_offset); in read_relocs() 507 rel->r_info = elf_xword_to_cpu(rel->r_info); in read_relocs() 509 rel->r_addend = elf_xword_to_cpu(rel->r_addend); in read_relocs() 583 Elf_Rel *rel; in print_absolute_relocs() local 586 rel = &sec->reltab[j]; in print_absolute_relocs() 587 sym = &sh_symtab[ELF_R_SYM(rel->r_info)]; in print_absolute_relocs() 618 rel->r_offset, in print_absolute_relocs() 619 rel->r_info, in print_absolute_relocs() 620 rel_type(ELF_R_TYPE(rel->r_info)), in print_absolute_relocs() [all …]
|
/arch/blackfin/kernel/ |
D | module.c | 156 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add() local 163 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add() 166 rel[i].r_offset; in apply_relocate_add() 171 + ELF32_R_SYM(rel[i].r_info); in apply_relocate_add() 173 value += rel[i].r_addend; in apply_relocate_add() 178 ELF32_R_TYPE(rel[i].r_info)); in apply_relocate_add() 184 location, value, ELF32_R_TYPE(rel[i].r_info)); in apply_relocate_add() 186 switch (ELF32_R_TYPE(rel[i].r_info)) { in apply_relocate_add() 204 ELF32_R_TYPE(rel[i].r_info)); in apply_relocate_add() 209 ELF32_R_TYPE(rel[i].r_info)); in apply_relocate_add()
|
/arch/m32r/kernel/ |
D | module.c | 78 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add() local 90 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add() 93 + rel[i].r_offset; in apply_relocate_add() 97 + ELF32_R_SYM(rel[i].r_info); in apply_relocate_add() 98 relocation = sym->st_value + rel[i].r_addend; in apply_relocate_add() 101 switch (ELF32_R_TYPE(rel[i].r_info)) { in apply_relocate_add() 198 me->name, ELF32_R_TYPE(rel[i].r_info)); in apply_relocate_add()
|
/arch/avr32/kernel/ |
D | module.c | 152 Elf32_Rela *rel = (void *)relsec->sh_addr; in apply_relocate_add() local 156 for (i = 0; i < relsec->sh_size / sizeof(Elf32_Rela); i++, rel++) { in apply_relocate_add() 163 location = (void *)dstsec->sh_addr + rel->r_offset; in apply_relocate_add() 164 sym = (Elf32_Sym *)symsec->sh_addr + ELF32_R_SYM(rel->r_info); in apply_relocate_add() 165 relocation = sym->st_value + rel->r_addend; in apply_relocate_add() 167 info = module->arch.syminfo + ELF32_R_SYM(rel->r_info); in apply_relocate_add() 170 switch (ELF32_R_TYPE(rel->r_info)) { in apply_relocate_add() 191 switch (ELF32_R_TYPE(rel->r_info)) { in apply_relocate_add() 276 rel->r_offset, relocation); in apply_relocate_add() 285 module->name, ELF32_R_TYPE(rel->r_info)); in apply_relocate_add()
|
/arch/mips/boot/tools/ |
D | relocs.c | 385 Elf_Rel *rel = &sec->reltab[j]; in read_relocs() local 387 rel->r_offset = elf_addr_to_cpu(rel->r_offset); in read_relocs() 389 rel->r_offset -= base; in read_relocs() 391 rel->r_info = elf_xword_to_cpu(rel->r_info); in read_relocs() 396 rel->r_info = rel->r_info; in read_relocs() 397 ELF_R_SYM(rel->r_info) = elf32_to_cpu(ELF_R_SYM(rel->r_info)); in read_relocs() 400 rel->r_addend = elf_xword_to_cpu(rel->r_addend); in read_relocs() 466 static void walk_relocs(int (*process)(struct section *sec, Elf_Rel *rel, in walk_relocs() argument 490 Elf_Rel *rel = &sec->reltab[j]; in walk_relocs() local 491 Elf_Sym *sym = &sh_symtab[ELF_R_SYM(rel->r_info)]; in walk_relocs() [all …]
|
/arch/mips/kernel/ |
D | vpe.c | 237 int rel; in apply_r_mips_gprel16() local 240 rel = (int)v - gp_addr; in apply_r_mips_gprel16() 244 rel = (int)(short)((int)v + gp_offs + in apply_r_mips_gprel16() 248 if ((rel > 32768) || (rel < -32768)) { in apply_r_mips_gprel16() 250 rel); in apply_r_mips_gprel16() 254 *location = (*location & 0xffff0000) | (rel & 0xffff); in apply_r_mips_gprel16() 262 int rel; in apply_r_mips_pc16() local 263 rel = (((unsigned int)v - (unsigned int)location)); in apply_r_mips_pc16() 264 rel >>= 2; /* because the offset is in _instructions_ not bytes. */ in apply_r_mips_pc16() 265 rel -= 1; /* and one instruction less due to the branch delay slot. */ in apply_r_mips_pc16() [all …]
|
D | module-rela.c | 155 Elf_Mips_Rela *rel = (void *) sechdrs[relsec].sh_addr; in apply_relocate_add() local 166 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add() 169 + rel[i].r_offset; in apply_relocate_add() 172 + ELF_MIPS_R_SYM(rel[i]); in apply_relocate_add() 182 type = ELF_MIPS_R_TYPE(rel[i]); in apply_relocate_add() 195 v = sym->st_value + rel[i].r_addend; in apply_relocate_add()
|