Remove last_cache
This patch removes global variable 'last_cache', and initialize 'target_dcache' lazily, so that 'target_dcache' can replace 'last_cache'. No functionalities should be changed after this patch. gdb: 2013-11-20 Yao Qi <yao@codesourcery.com> * dcache.c (last_cache): Remove. (dcache_free, dcache_init): Update. (dcache_update): (dcache_print_line): Add parameter 'dcache'. Replace 'target_dcache' with 'dcache'. (dcache_info): Move code to dcache_info_1. Call 'dcache_info_1'. (dcache_info_1): New function. (set_dcache_size): Call target_dcache_invalidate. (set_dcache_line_size): Call target_dcache_invalidate. * target.c (target_dcache_init_p): New function. (target_dcache_invalidate): Check target_dcache_init_p first. (target_dcache_get, target_dcache_get_or_init): New function. (memory_xfer_partial_1): Adjust. (initialize_target): Don't initialize 'target_dcache'. * target.h (struct dcache_struct): Declare. (target_dcache_get): Declare.
This commit is contained in:
parent
3e9ecad3e8
commit
2a2f9fe400
4 changed files with 86 additions and 32 deletions
|
@ -37,6 +37,7 @@ struct uploaded_tp;
|
|||
struct static_tracepoint_marker;
|
||||
struct traceframe_info;
|
||||
struct expression;
|
||||
struct dcache_struct;
|
||||
|
||||
/* This include file defines the interface between the main part
|
||||
of the debugger, and the part which is target-specific, or
|
||||
|
@ -1045,6 +1046,8 @@ int target_supports_disable_randomization (void);
|
|||
/* Invalidate all target dcaches. */
|
||||
extern void target_dcache_invalidate (void);
|
||||
|
||||
extern struct dcache_struct *target_dcache_get (void);
|
||||
|
||||
extern int target_read_string (CORE_ADDR, char **, int, int *);
|
||||
|
||||
extern int target_read_memory (CORE_ADDR memaddr, gdb_byte *myaddr,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue