Lines Matching refs:offset
79 s32 offset; in apply_relocate() local
85 offset = ELF32_R_SYM(rel->r_info); in apply_relocate()
86 if (offset < 0 || offset > (symsec->sh_size / sizeof(Elf32_Sym))) { in apply_relocate()
92 sym = ((Elf32_Sym *)symsec->sh_addr) + offset; in apply_relocate()
123 offset = __mem_to_opcode_arm(*(u32 *)loc); in apply_relocate()
124 offset = (offset & 0x00ffffff) << 2; in apply_relocate()
125 if (offset & 0x02000000) in apply_relocate()
126 offset -= 0x04000000; in apply_relocate()
128 offset += sym->st_value - loc; in apply_relocate()
137 (offset <= (s32)0xfe000000 || in apply_relocate()
138 offset >= (s32)0x02000000)) in apply_relocate()
139 offset = get_module_plt(module, loc, in apply_relocate()
140 offset + loc + 8) in apply_relocate()
143 if (offset <= (s32)0xfe000000 || in apply_relocate()
144 offset >= (s32)0x02000000) { in apply_relocate()
152 offset >>= 2; in apply_relocate()
153 offset &= 0x00ffffff; in apply_relocate()
156 *(u32 *)loc |= __opcode_to_mem_arm(offset); in apply_relocate()
169 offset = (*(s32 *)loc << 1) >> 1; /* sign extend */ in apply_relocate()
170 offset += sym->st_value - loc; in apply_relocate()
171 if (offset >= 0x40000000 || offset < -0x40000000) { in apply_relocate()
179 *(u32 *)loc |= offset & 0x7fffffff; in apply_relocate()
184 offset = tmp = __mem_to_opcode_arm(*(u32 *)loc); in apply_relocate()
185 offset = ((offset & 0xf0000) >> 4) | (offset & 0xfff); in apply_relocate()
186 offset = (offset ^ 0x8000) - 0x8000; in apply_relocate()
188 offset += sym->st_value; in apply_relocate()
190 offset >>= 16; in apply_relocate()
193 tmp |= ((offset & 0xf000) << 4) | in apply_relocate()
194 (offset & 0x0fff); in apply_relocate()
237 offset = (sign << 24) | ((~(j1 ^ sign) & 1) << 23) | in apply_relocate()
241 if (offset & 0x01000000) in apply_relocate()
242 offset -= 0x02000000; in apply_relocate()
243 offset += sym->st_value - loc; in apply_relocate()
250 (offset <= (s32)0xff000000 || in apply_relocate()
251 offset >= (s32)0x01000000)) in apply_relocate()
252 offset = get_module_plt(module, loc, in apply_relocate()
253 offset + loc + 4) in apply_relocate()
256 if (offset <= (s32)0xff000000 || in apply_relocate()
257 offset >= (s32)0x01000000) { in apply_relocate()
265 sign = (offset >> 24) & 1; in apply_relocate()
266 j1 = sign ^ (~(offset >> 23) & 1); in apply_relocate()
267 j2 = sign ^ (~(offset >> 22) & 1); in apply_relocate()
269 ((offset >> 12) & 0x03ff)); in apply_relocate()
272 ((offset >> 1) & 0x07ff)); in apply_relocate()
293 offset = ((upper & 0x000f) << 12) | in apply_relocate()
296 offset = (offset ^ 0x8000) - 0x8000; in apply_relocate()
297 offset += sym->st_value; in apply_relocate()
300 offset >>= 16; in apply_relocate()
303 ((offset & 0xf000) >> 12) | in apply_relocate()
304 ((offset & 0x0800) >> 1)); in apply_relocate()
306 ((offset & 0x0700) << 4) | in apply_relocate()
307 (offset & 0x00ff)); in apply_relocate()