Home | History | Annotate | Download | only in x86_64

Lines Matching full:addr

74 static int (*mem_validate_func) (void *addr, size_t len);
75 static int msync_validate (void *addr, size_t len)
77 return msync (addr, len, MS_ASYNC);
81 static int mincore_validate (void *addr, size_t len)
84 return mincore (addr, len, mvec);
116 validate_mem (unw_word_t addr)
121 if (PAGE_START(addr + sizeof (unw_word_t) - 1) == PAGE_START(addr))
126 addr = PAGE_START(addr);
128 if (addr == 0)
133 if (last_good_addr[i] && (addr == last_good_addr[i]))
137 if (mem_validate_func ((void *) addr, len) == -1)
143 last_good_addr[victim++] = addr;
150 last_good_addr[victim] = addr;
158 access_mem (unw_addr_space_t as, unw_word_t addr, unw_word_t *val, int write,
165 if (map_local_is_writable (addr, sizeof(unw_word_t)))
168 Debug (16, "mem[%016lx] <- %lx\n", addr, *val);
169 *(unw_word_t *) addr = *val;
174 Debug (16, "Unwritable memory mem[%016lx] <- %lx\n", addr, *val);
185 && unlikely (validate_mem (addr)))
190 if (map_local_is_readable (addr, sizeof(unw_word_t)))
193 *val = *(unw_word_t *) addr;
194 Debug (16, "mem[%016lx] -> %lx\n", addr, *val);
199 Debug (16, "Unreadable memory mem[%016lx] -> XXX\n", addr);
212 unw_word_t *addr;
218 if (!(addr = x86_64_r_uc_addr (uc, reg)))
223 *(unw_word_t *) addr = *val;
228 *val = *(unw_word_t *) addr;
243 unw_fpreg_t *addr;
248 if (!(addr = x86_64_r_uc_addr (uc, reg)))
255 *(unw_fpreg_t *) addr = *val;
259 *val = *(unw_fpreg_t *) addr;
280 access_mem_unrestricted (unw_addr_space_t as, unw_word_t addr, unw_word_t *val,
286 *val = *(unw_word_t *) addr;
287 Debug (16, "mem[%016lx] -> %lx\n", addr, *val);