Lines Matching refs:location
172 static uint32_t do_plt_call(void *location, in do_plt_call() argument
179 pr_debug("Doing plt for call to 0x%x at 0x%x\n", val, (unsigned int)location); in do_plt_call()
181 if (location >= mod->core_layout.base in do_plt_call()
182 && location < mod->core_layout.base + mod->core_layout.size) in do_plt_call()
217 uint32_t *location; in apply_relocate_add() local
224 location = (void *)sechdrs[sechdrs[relsec].sh_info].sh_addr in apply_relocate_add()
236 *(uint32_t *)location = value; in apply_relocate_add()
241 *(uint16_t *)location = value; in apply_relocate_add()
246 *(uint16_t *)location = (value >> 16); in apply_relocate_add()
254 *(uint16_t *)location = (value + 0x8000) >> 16; in apply_relocate_add()
258 if ((int)(value - (uint32_t)location) < -0x02000000 in apply_relocate_add()
259 || (int)(value - (uint32_t)location) >= 0x02000000) in apply_relocate_add()
260 value = do_plt_call(location, value, in apply_relocate_add()
265 value, (uint32_t)location); in apply_relocate_add()
267 *(uint32_t *)location); in apply_relocate_add()
268 *(uint32_t *)location in apply_relocate_add()
269 = (*(uint32_t *)location & ~0x03fffffc) in apply_relocate_add()
270 | ((value - (uint32_t)location) in apply_relocate_add()
273 *(uint32_t *)location); in apply_relocate_add()
275 *(uint32_t *)location & 0x03fffffc, in apply_relocate_add()
276 (uint32_t)location, in apply_relocate_add()
277 (*(uint32_t *)location & 0x03fffffc) in apply_relocate_add()
278 + (uint32_t)location); in apply_relocate_add()
283 *(uint32_t *)location = value - (uint32_t)location; in apply_relocate_add()