79 claimed_end = std::min (
end, r->
end);
81 if (claimed_begin == r->
begin && claimed_end == r->
end)
89 n->
begin = claimed_begin;
123 cur_address = region->
hi;
126 if (cur_address == 0)
147 offset_in_region = address - region->
lo;
150 *begin = region->
lo + offset_in_region / blocksize * blocksize;
152 *end = region->
lo + (offset_in_region + blocksize - 1) / blocksize * blocksize;
224 for (j = 0; j != je;)
252 && written->
end >= erased.
end)
276 if (written->
end < erased.
end)
317 void (*progress_cb) (
ULONGEST,
void *))
356 erased = blocks_to_erase (flash);
361 garbled = compute_garbled_blocks (erased, flash);
408 progress_cb, r->
baton);
432 progress_cb, r->
baton);
434 error (
_(
"Error writing data to flash"));
mach_port_t mach_port_t name mach_port_t mach_port_t name kern_return_t err
static void block_boundaries(CORE_ADDR address, CORE_ADDR *begin, CORE_ADDR *end)
void * memset(T *s, int c, size_t n)=delete
static void split_regular_and_flash_blocks(VEC(memory_write_request_s) *blocks, VEC(memory_write_request_s) **regular_blocks, VEC(memory_write_request_s) **flash_blocks)
#define VEC_safe_push(T, V, O)
void null_cleanup(void *arg)
static VEC(memory_write_request_s)
#define VEC_iterate(T, V, I, P)
void target_flash_erase(ULONGEST address, LONGEST length)
struct target_ops current_target
struct mem_region * lookup_mem_region(CORE_ADDR addr)
static void cleanup_write_requests_vector(void *p)
struct cleanup * make_cleanup(make_cleanup_ftype *function, void *arg)
#define VEC_index(T, V, I)
static void claim_memory(VEC(memory_write_request_s) *blocks, VEC(memory_write_request_s) **result, ULONGEST begin, ULONGEST end)
static int compare_block_starting_address(const void *a, const void *b)
int target_read_memory(CORE_ADDR memaddr, gdb_byte *myaddr, ssize_t len)
static void cleanup_request_data(void *p)
#define VEC_address(T, V)
LONGEST target_write_with_progress(struct target_ops *ops, enum target_object object, const char *annex, const gdb_byte *buf, ULONGEST offset, LONGEST len, void(*progress)(ULONGEST, void *), void *baton)
unsigned long long ULONGEST
void error(const char *fmt,...)
int target_write_memory_blocks(VEC(memory_write_request_s) *requests, enum flash_preserve_mode preserve_flash_p, void(*progress_cb)(ULONGEST, void *))
struct target_ops * beneath
void do_cleanups(struct cleanup *old_chain)
void target_flash_done(void)
enum mem_access_mode mode