/arch/score/kernel/ |
H A D | module.c | 37 Elf32_Rel *rel = (void *)relsec->sh_addr; local 40 for (i = 0; i < relsec->sh_size / sizeof(Elf32_Rel); i++, rel++) { 45 r_offset = ELF32_R_SYM(rel->r_info); 55 if ((rel->r_offset < 0) || 56 (rel->r_offset > dstsec->sh_size - sizeof(u32))) { 59 me->name, relindex, i, rel->r_offset, 64 loc = dstsec->sh_addr + rel->r_offset; 65 switch (ELF32_R_TYPE(rel->r_info)) { 120 me->name, ELF32_R_TYPE(rel->r_info));
|
/arch/sh/kernel/ |
H A D | module.c | 44 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; local 52 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { 55 + rel[i].r_offset; 59 + ELF32_R_SYM(rel[i].r_info); 60 relocation = sym->st_value + rel[i].r_addend; 71 switch (ELF32_R_TYPE(rel[i].r_info)) { 105 me->name, ELF32_R_TYPE(rel[i].r_info));
|
/arch/sparc/kernel/ |
H A D | module.c | 89 Elf_Rela *rel = (void *)sechdrs[relsec].sh_addr; local 94 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { 99 + rel[i].r_offset; 109 + ELF_R_SYM(rel[i].r_info); 110 v = sym->st_value + rel[i].r_addend; 112 switch (ELF_R_TYPE(rel[i].r_info) & 0xff) { 138 (ELF_R_TYPE(rel[i].r_info) >> 8)) 175 (int) (ELF_R_TYPE(rel[i].r_info) & 0xff));
|
/arch/tile/kernel/ |
H A D | module.c | 129 Elf_Rela *rel = (void *)sechdrs[relsec].sh_addr; local 136 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { 139 + rel[i].r_offset; 145 + ELF_R_SYM(rel[i].r_info); 146 value = sym->st_value + rel[i].r_addend; 148 switch (ELF_R_TYPE(rel[i].r_info)) { 215 sym->st_value + rel[i].r_addend, 216 rel[i].r_offset, location); 227 me->name, (int) ELF_R_TYPE(rel[i].r_info));
|
/arch/unicore32/kernel/ |
H A D | module.c | 39 Elf32_Rel *rel = (void *)relsec->sh_addr; local 42 for (i = 0; i < relsec->sh_size / sizeof(Elf32_Rel); i++, rel++) { 47 offset = ELF32_R_SYM(rel->r_info); 58 if (rel->r_offset < 0 || rel->r_offset > 62 module->name, relindex, i, rel->r_offset, 67 loc = dstsec->sh_addr + rel->r_offset; 69 switch (ELF32_R_TYPE(rel->r_info)) { 104 module->name, ELF32_R_TYPE(rel->r_info));
|
/arch/x86/kernel/kprobes/ |
H A D | opt.c | 327 long rel; local 340 rel = (long)op->optinsn.insn - (long)op->kp.addr + RELATIVEJUMP_SIZE; 341 if (abs(rel) > 0x7fffffff) { 385 s32 rel = (s32)((long)op->optinsn.insn - local 395 *(s32 *)(&insn_buf[1]) = rel;
|
/arch/x86/kernel/ |
H A D | machine_kexec_64.c | 409 Elf64_Rela *rel; local 420 rel = (void *)sechdrs[relsec].sh_offset; 444 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { 447 * rel[i].r_offset contains byte offset from beginning 456 location = (void *)(section->sh_offset + rel[i].r_offset); 459 address = section->sh_addr + rel[i].r_offset; 462 * rel[i].r_info contains information about symbol table index 468 ELF64_R_SYM(rel[i].r_info); 500 value += rel[i].r_addend; 502 switch (ELF64_R_TYPE(rel[ [all...] |
H A D | module.c | 103 Elf32_Rel *rel = (void *)sechdrs[relsec].sh_addr; local 109 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { 112 + rel[i].r_offset; 116 + ELF32_R_SYM(rel[i].r_info); 118 switch (ELF32_R_TYPE(rel[i].r_info)) { 129 me->name, ELF32_R_TYPE(rel[i].r_info)); 143 Elf64_Rela *rel = (void *)sechdrs[relsec].sh_addr; local 150 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { 153 + rel[i].r_offset; 158 + ELF64_R_SYM(rel[ [all...] |
/arch/x86/kvm/ |
H A D | emulate.c | 596 static inline int jmp_rel(struct x86_emulate_ctxt *ctxt, int rel) argument 598 return assign_eip_near(ctxt, ctxt->_eip + rel); 3001 long rel = ctxt->src.val; local 3004 rc = jmp_rel(ctxt, rel); 4914 case 0xe9: /* jmp rel */ 4915 case 0xeb: /* jmp rel short */ 5039 case 0x80 ... 0x8f: /* jnz rel, etc*/
|
/arch/x86/realmode/ |
H A D | init.c | 32 const u32 *rel; local 50 rel = (u32 *) real_mode_relocs; 53 count = *rel++; 55 u16 *seg = (u16 *) (base + *rel++); 60 count = *rel++; 62 u32 *ptr = (u32 *) (base + *rel++);
|
/arch/x86/tools/ |
H A D | relocs.c | 227 const char *name = "unknown type rel type name"; 502 Elf_Rel *rel = &sec->reltab[j]; local 503 rel->r_offset = elf_addr_to_cpu(rel->r_offset); 504 rel->r_info = elf_xword_to_cpu(rel->r_info); 506 rel->r_addend = elf_xword_to_cpu(rel->r_addend); 580 Elf_Rel *rel; local 583 rel 642 walk_relocs(int (*process)(struct section *sec, Elf_Rel *rel, Elf_Sym *sym, const char *symname)) argument 665 Elf_Rel *rel = &sec->reltab[j]; local 747 do_reloc64(struct section *sec, Elf_Rel *rel, ElfW(Sym) *sym, const char *symname) argument 820 do_reloc32(struct section *sec, Elf_Rel *rel, Elf_Sym *sym, const char *symname) argument 863 do_reloc_real(struct section *sec, Elf_Rel *rel, Elf_Sym *sym, const char *symname) argument 1034 do_reloc_info(struct section *sec, Elf_Rel *rel, ElfW(Sym) *sym, const char *symname) argument [all...] |
/arch/xtensa/variants/s6000/ |
H A D | gpio.c | 49 unsigned rel = S6_GPIO_OFFSET(off); local 50 writeb(~0, S6_REG_GPIO + S6_GPIO_DIR + rel); 51 writeb(val ? ~0 : 0, S6_REG_GPIO + S6_GPIO_DATA + rel);
|
/arch/blackfin/kernel/ |
H A D | module.c | 156 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; local 163 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { 166 rel[i].r_offset; 171 + ELF32_R_SYM(rel[i].r_info); 173 value += rel[i].r_addend; 178 ELF32_R_TYPE(rel[i].r_info)); 184 location, value, ELF32_R_TYPE(rel[i].r_info)); 186 switch (ELF32_R_TYPE(rel[i].r_info)) { 204 ELF32_R_TYPE(rel[i].r_info)); 209 ELF32_R_TYPE(rel[ [all...] |
/arch/c6x/kernel/ |
H A D | module.c | 51 Elf32_Rela *rel = (void *) sechdrs[relsec].sh_addr; local 61 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { 64 + rel[i].r_offset - offset; 69 + ELF32_R_SYM(rel[i].r_info); 72 v = sym->st_value + rel[i].r_addend; 74 switch (ELF32_R_TYPE(rel[i].r_info)) { 117 me->name, ELF32_R_TYPE(rel[i].r_info));
|
/arch/ia64/kernel/ |
H A D | kprobes.c | 84 s64 rel = ((s64) to - (s64) from) >> 4; local 89 brl->quad0.slot1_p0 = ((rel >> 20) & 0x7fffffffff) << 2; 90 brl->quad1.slot1_p1 = (((rel >> 20) & 0x7fffffffff) << 2) >> (64 - 46); 91 /* brl.cond.sptk.many.clr rel<<4 (qp=0) */ 92 brl->quad1.slot2 = BRL_INST(rel >> 59, rel & 0xfffff);
|
/arch/m32r/kernel/ |
H A D | module.c | 78 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; local 90 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { 93 + rel[i].r_offset; 97 + ELF32_R_SYM(rel[i].r_info); 98 relocation = sym->st_value + rel[i].r_addend; 101 switch (ELF32_R_TYPE(rel[i].r_info)) { 198 me->name, ELF32_R_TYPE(rel[i].r_info));
|
/arch/m68k/kernel/ |
H A D | module.c | 29 Elf32_Rel *rel = (void *)sechdrs[relsec].sh_addr; local 35 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { 38 + rel[i].r_offset; 42 + ELF32_R_SYM(rel[i].r_info); 44 switch (ELF32_R_TYPE(rel[i].r_info)) { 55 me->name, ELF32_R_TYPE(rel[i].r_info)); 69 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; local 75 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { 78 + rel[i].r_offset; 82 + ELF32_R_SYM(rel[ [all...] |
/arch/metag/kernel/ |
H A D | module.c | 205 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; local 213 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { 216 + rel[i].r_offset; 220 + ELF32_R_SYM(rel[i].r_info); 221 relocation = sym->st_value + rel[i].r_addend; 223 switch (ELF32_R_TYPE(rel[i].r_info)) { 279 me->name, ELF32_R_TYPE(rel[i].r_info));
|
/arch/mips/kernel/ |
H A D | module-rela.c | 111 Elf_Mips_Rela *rel = (void *) sechdrs[relsec].sh_addr; local 121 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { 124 + rel[i].r_offset; 127 + ELF_MIPS_R_SYM(rel[i]); 137 v = sym->st_value + rel[i].r_addend; 139 res = reloc_handlers_rela[ELF_MIPS_R_TYPE(rel[i])](me, location, v);
|
H A D | module.c | 199 Elf_Mips_Rel *rel = (void *) sechdrs[relsec].sh_addr; local 210 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { 213 + rel[i].r_offset; 216 + ELF_MIPS_R_SYM(rel[i]); 228 res = reloc_handlers_rel[ELF_MIPS_R_TYPE(rel[i])](me, location, v);
|
H A D | vpe.c | 237 int rel; local 240 rel = (int)v - gp_addr; 244 rel = (int)(short)((int)v + gp_offs + 248 if ((rel > 32768) || (rel < -32768)) { 250 rel); 254 *location = (*location & 0xffff0000) | (rel & 0xffff); 262 int rel; local 263 rel = (((unsigned int)v - (unsigned int)location)); 264 rel >> 431 Elf32_Rel *rel = (void *) sechdrs[relsec].sh_addr; local 469 save_gp_address(unsigned int secbase, unsigned int rel) argument [all...] |
/arch/mips/mm/ |
H A D | uasm-micromips.c | 217 __resolve_relocs(struct uasm_reloc *rel, struct uasm_label *lab) argument 220 long raddr = (long)rel->addr; 222 switch (rel->type) { 225 *rel->addr |= (build_bimm(laddr - (raddr + 4)) << 16); 227 *rel->addr |= build_bimm(laddr - (raddr + 4)); 233 rel->type);
|
H A D | uasm-mips.c | 206 __resolve_relocs(struct uasm_reloc *rel, struct uasm_label *lab) argument 209 long raddr = (long)rel->addr; 211 switch (rel->type) { 213 *rel->addr |= build_bimm(laddr - (raddr + 4)); 218 rel->type);
|
H A D | uasm.c | 428 void ISAFUNC(uasm_r_mips_pc16)(struct uasm_reloc **rel, u32 *addr, int lid) argument 430 (*rel)->addr = addr; 431 (*rel)->type = R_MIPS_PC16; 432 (*rel)->lab = lid; 433 (*rel)++; 437 static inline void __resolve_relocs(struct uasm_reloc *rel, 440 void ISAFUNC(uasm_resolve_relocs)(struct uasm_reloc *rel, argument 445 for (; rel->lab != UASM_LABEL_INVALID; rel++) 447 if (rel 452 uasm_move_relocs(struct uasm_reloc *rel, u32 *first, u32 *end, long off) argument 470 uasm_copy_handler(struct uasm_reloc *rel, struct uasm_label *lab, u32 *first, u32 *end, u32 *target) argument 482 uasm_insn_has_bdelay(struct uasm_reloc *rel, u32 *addr) argument [all...] |
/arch/mn10300/kernel/ |
H A D | module.c | 63 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; local 72 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { 75 + rel[i].r_offset; 80 + ELF32_R_SYM(rel[i].r_info); 83 relocation = sym->st_value + rel[i].r_addend; 86 switch (ELF32_R_TYPE(rel[i].r_info)) { 96 me->name, ELF32_R_TYPE(rel[i].r_info)); 101 switch (ELF32_R_TYPE(rel[i].r_info)) { 146 me->name, ELF32_R_TYPE(rel[i].r_info)); 152 me->name, ELF32_R_TYPE(rel[ [all...] |