X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Ftarget.h;h=34539c16ca55bd30d217ddf979d7f58715a3c3c0;hb=2117c711ae07700adb57ea5b5ca61e4c32d7e3d2;hp=ecfd1a2d338800f4a8d10e37c17c4b047e5dbad6;hpb=cbffc065273e91d3596dc73bad695a815f67d5fa;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/target.h b/gdb/target.h index ecfd1a2d33..34539c16ca 100644 --- a/gdb/target.h +++ b/gdb/target.h @@ -409,7 +409,8 @@ struct target_ops TARGET_DEFAULT_IGNORE (); void (*to_detach) (struct target_ops *ops, const char *, int) TARGET_DEFAULT_IGNORE (); - void (*to_disconnect) (struct target_ops *, char *, int); + void (*to_disconnect) (struct target_ops *, char *, int) + TARGET_DEFAULT_NORETURN (tcomplain ()); void (*to_resume) (struct target_ops *, ptid_t, int, enum gdb_signal) TARGET_DEFAULT_NORETURN (noprocess ()); ptid_t (*to_wait) (struct target_ops *, @@ -546,7 +547,8 @@ struct target_ops TARGET_DEFAULT_RETURN (0); void (*to_mourn_inferior) (struct target_ops *) TARGET_DEFAULT_FUNC (default_mourn_inferior); - int (*to_can_run) (struct target_ops *); + int (*to_can_run) (struct target_ops *) + TARGET_DEFAULT_RETURN (0); /* Documentation of this routine is provided with the corresponding target_* macro. */ @@ -669,7 +671,8 @@ struct target_ops This method should not cache data; if the memory map could change unexpectedly, it should be invalidated, and higher layers will re-fetch it. */ - VEC(mem_region_s) *(*to_memory_map) (struct target_ops *); + VEC(mem_region_s) *(*to_memory_map) (struct target_ops *) + TARGET_DEFAULT_RETURN (0); /* Erases the region of flash memory starting at ADDRESS, of length LENGTH. @@ -687,10 +690,12 @@ struct target_ops void (*to_flash_done) (struct target_ops *) TARGET_DEFAULT_NORETURN (tcomplain ()); - /* Describe the architecture-specific features of this target. - Returns the description found, or NULL if no description - was available. */ - const struct target_desc *(*to_read_description) (struct target_ops *ops); + /* Describe the architecture-specific features of this target. If + OPS doesn't have a description, this should delegate to the + "beneath" target. Returns the description found, or NULL if no + description was available. */ + const struct target_desc *(*to_read_description) (struct target_ops *ops) + TARGET_DEFAULT_RETURN (0); /* Build the PTID of the thread on which a given task is running, based on LWP and THREAD. These values are extracted from the @@ -705,7 +710,8 @@ struct target_ops Return -1 if there is insufficient buffer for a whole entry. Return 1 if an entry was read into *TYPEP and *VALP. */ int (*to_auxv_parse) (struct target_ops *ops, gdb_byte **readptr, - gdb_byte *endptr, CORE_ADDR *typep, CORE_ADDR *valp); + gdb_byte *endptr, CORE_ADDR *typep, CORE_ADDR *valp) + TARGET_DEFAULT_FUNC (default_auxv_parse); /* Search SEARCH_SPACE_LEN bytes beginning at START_ADDR for the sequence of bytes in PATTERN with length PATTERN_LEN. @@ -716,7 +722,8 @@ struct target_ops int (*to_search_memory) (struct target_ops *ops, CORE_ADDR start_addr, ULONGEST search_space_len, const gdb_byte *pattern, ULONGEST pattern_len, - CORE_ADDR *found_addrp); + CORE_ADDR *found_addrp) + TARGET_DEFAULT_FUNC (default_search_memory); /* Can target execute in reverse? */ int (*to_can_execute_reverse) (struct target_ops *) @@ -998,18 +1005,21 @@ struct target_ops /* Enable branch tracing for PTID and allocate a branch trace target information struct for reading and for disabling branch trace. */ struct btrace_target_info *(*to_enable_btrace) (struct target_ops *, - ptid_t ptid); + ptid_t ptid) + TARGET_DEFAULT_NORETURN (tcomplain ()); /* Disable branch tracing and deallocate TINFO. */ void (*to_disable_btrace) (struct target_ops *, - struct btrace_target_info *tinfo); + struct btrace_target_info *tinfo) + TARGET_DEFAULT_NORETURN (tcomplain ()); /* Disable branch tracing and deallocate TINFO. This function is similar to to_disable_btrace, except that it is called during teardown and is only allowed to perform actions that are safe. A counter-example would be attempting to talk to a remote target. */ void (*to_teardown_btrace) (struct target_ops *, - struct btrace_target_info *tinfo); + struct btrace_target_info *tinfo) + TARGET_DEFAULT_NORETURN (tcomplain ()); /* Read branch trace data for the thread indicated by BTINFO into DATA. DATA is cleared before new trace is added. @@ -1018,10 +1028,12 @@ struct target_ops enum btrace_error (*to_read_btrace) (struct target_ops *self, VEC (btrace_block_s) **data, struct btrace_target_info *btinfo, - enum btrace_read_type type); + enum btrace_read_type type) + TARGET_DEFAULT_NORETURN (tcomplain ()); /* Stop trace recording. */ - void (*to_stop_recording) (struct target_ops *); + void (*to_stop_recording) (struct target_ops *) + TARGET_DEFAULT_IGNORE (); /* Print information about the recording. */ void (*to_info_record) (struct target_ops *);