Implement all-stop on top of a target running non-stop mode
[deliverable/binutils-gdb.git] / gdb / target-delegates.c
CommitLineData
1101cb7b
TT
1/* THIS FILE IS GENERATED -*- buffer-read-only: t -*- */
2/* vi:set ro: */
3
4/* To regenerate this file, run:*/
5/* make-target-delegates target.h > target-delegates.c */
bebd3233
TT
6static void
7delegate_post_attach (struct target_ops *self, int arg1)
8{
9 self = self->beneath;
10 self->to_post_attach (self, arg1);
11}
12
13static void
14tdefault_post_attach (struct target_ops *self, int arg1)
15{
16}
17
a7068b60
TT
18static void
19debug_post_attach (struct target_ops *self, int arg1)
20{
21 fprintf_unfiltered (gdb_stdlog, "-> %s->to_post_attach (...)\n", debug_target.to_shortname);
22 debug_target.to_post_attach (&debug_target, arg1);
23 fprintf_unfiltered (gdb_stdlog, "<- %s->to_post_attach (", debug_target.to_shortname);
24 target_debug_print_struct_target_ops_p (&debug_target);
25 fputs_unfiltered (", ", gdb_stdlog);
26 target_debug_print_int (arg1);
27 fputs_unfiltered (")\n", gdb_stdlog);
28}
29
09da0d0a
TT
30static void
31delegate_detach (struct target_ops *self, const char *arg1, int arg2)
32{
33 self = self->beneath;
34 self->to_detach (self, arg1, arg2);
35}
36
37static void
38tdefault_detach (struct target_ops *self, const char *arg1, int arg2)
39{
40}
41
a7068b60
TT
42static void
43debug_detach (struct target_ops *self, const char *arg1, int arg2)
44{
45 fprintf_unfiltered (gdb_stdlog, "-> %s->to_detach (...)\n", debug_target.to_shortname);
46 debug_target.to_detach (&debug_target, arg1, arg2);
47 fprintf_unfiltered (gdb_stdlog, "<- %s->to_detach (", debug_target.to_shortname);
48 target_debug_print_struct_target_ops_p (&debug_target);
49 fputs_unfiltered (", ", gdb_stdlog);
50 target_debug_print_const_char_p (arg1);
51 fputs_unfiltered (", ", gdb_stdlog);
52 target_debug_print_int (arg2);
53 fputs_unfiltered (")\n", gdb_stdlog);
54}
55
86a0854a 56static void
fee354ee 57delegate_disconnect (struct target_ops *self, const char *arg1, int arg2)
86a0854a
TT
58{
59 self = self->beneath;
60 self->to_disconnect (self, arg1, arg2);
61}
62
63static void
fee354ee 64tdefault_disconnect (struct target_ops *self, const char *arg1, int arg2)
86a0854a
TT
65{
66 tcomplain ();
67}
68
a7068b60
TT
69static void
70debug_disconnect (struct target_ops *self, const char *arg1, int arg2)
71{
72 fprintf_unfiltered (gdb_stdlog, "-> %s->to_disconnect (...)\n", debug_target.to_shortname);
73 debug_target.to_disconnect (&debug_target, arg1, arg2);
74 fprintf_unfiltered (gdb_stdlog, "<- %s->to_disconnect (", debug_target.to_shortname);
75 target_debug_print_struct_target_ops_p (&debug_target);
76 fputs_unfiltered (", ", gdb_stdlog);
77 target_debug_print_const_char_p (arg1);
78 fputs_unfiltered (", ", gdb_stdlog);
79 target_debug_print_int (arg2);
80 fputs_unfiltered (")\n", gdb_stdlog);
81}
82
6b84065d
TT
83static void
84delegate_resume (struct target_ops *self, ptid_t arg1, int arg2, enum gdb_signal arg3)
85{
86 self = self->beneath;
87 self->to_resume (self, arg1, arg2, arg3);
88}
89
90static void
91tdefault_resume (struct target_ops *self, ptid_t arg1, int arg2, enum gdb_signal arg3)
92{
93 noprocess ();
94}
95
a7068b60
TT
96static void
97debug_resume (struct target_ops *self, ptid_t arg1, int arg2, enum gdb_signal arg3)
98{
99 fprintf_unfiltered (gdb_stdlog, "-> %s->to_resume (...)\n", debug_target.to_shortname);
100 debug_target.to_resume (&debug_target, arg1, arg2, arg3);
101 fprintf_unfiltered (gdb_stdlog, "<- %s->to_resume (", debug_target.to_shortname);
102 target_debug_print_struct_target_ops_p (&debug_target);
103 fputs_unfiltered (", ", gdb_stdlog);
104 target_debug_print_ptid_t (arg1);
105 fputs_unfiltered (", ", gdb_stdlog);
106 target_debug_print_step (arg2);
107 fputs_unfiltered (", ", gdb_stdlog);
108 target_debug_print_enum_gdb_signal (arg3);
109 fputs_unfiltered (")\n", gdb_stdlog);
110}
111
6b84065d
TT
112static ptid_t
113delegate_wait (struct target_ops *self, ptid_t arg1, struct target_waitstatus *arg2, int arg3)
114{
115 self = self->beneath;
116 return self->to_wait (self, arg1, arg2, arg3);
117}
118
119static ptid_t
120tdefault_wait (struct target_ops *self, ptid_t arg1, struct target_waitstatus *arg2, int arg3)
121{
122 noprocess ();
123}
124
a7068b60
TT
125static ptid_t
126debug_wait (struct target_ops *self, ptid_t arg1, struct target_waitstatus *arg2, int arg3)
127{
128 ptid_t result;
129 fprintf_unfiltered (gdb_stdlog, "-> %s->to_wait (...)\n", debug_target.to_shortname);
130 result = debug_target.to_wait (&debug_target, arg1, arg2, arg3);
131 fprintf_unfiltered (gdb_stdlog, "<- %s->to_wait (", debug_target.to_shortname);
132 target_debug_print_struct_target_ops_p (&debug_target);
133 fputs_unfiltered (", ", gdb_stdlog);
134 target_debug_print_ptid_t (arg1);
135 fputs_unfiltered (", ", gdb_stdlog);
136 target_debug_print_struct_target_waitstatus_p (arg2);
137 fputs_unfiltered (", ", gdb_stdlog);
138 target_debug_print_options (arg3);
139 fputs_unfiltered (") = ", gdb_stdlog);
140 target_debug_print_ptid_t (result);
141 fputs_unfiltered ("\n", gdb_stdlog);
142 return result;
143}
144
ad5989bd
TT
145static void
146delegate_fetch_registers (struct target_ops *self, struct regcache *arg1, int arg2)
147{
148 self = self->beneath;
149 self->to_fetch_registers (self, arg1, arg2);
150}
151
152static void
153tdefault_fetch_registers (struct target_ops *self, struct regcache *arg1, int arg2)
154{
155}
156
a7068b60
TT
157static void
158debug_fetch_registers (struct target_ops *self, struct regcache *arg1, int arg2)
159{
160 fprintf_unfiltered (gdb_stdlog, "-> %s->to_fetch_registers (...)\n", debug_target.to_shortname);
161 debug_target.to_fetch_registers (&debug_target, arg1, arg2);
162 fprintf_unfiltered (gdb_stdlog, "<- %s->to_fetch_registers (", debug_target.to_shortname);
163 target_debug_print_struct_target_ops_p (&debug_target);
164 fputs_unfiltered (", ", gdb_stdlog);
165 target_debug_print_struct_regcache_p (arg1);
166 fputs_unfiltered (", ", gdb_stdlog);
167 target_debug_print_int (arg2);
168 fputs_unfiltered (")\n", gdb_stdlog);
169}
170
6b84065d
TT
171static void
172delegate_store_registers (struct target_ops *self, struct regcache *arg1, int arg2)
173{
174 self = self->beneath;
175 self->to_store_registers (self, arg1, arg2);
176}
177
178static void
179tdefault_store_registers (struct target_ops *self, struct regcache *arg1, int arg2)
180{
181 noprocess ();
182}
183
a7068b60
TT
184static void
185debug_store_registers (struct target_ops *self, struct regcache *arg1, int arg2)
186{
187 fprintf_unfiltered (gdb_stdlog, "-> %s->to_store_registers (...)\n", debug_target.to_shortname);
188 debug_target.to_store_registers (&debug_target, arg1, arg2);
189 fprintf_unfiltered (gdb_stdlog, "<- %s->to_store_registers (", debug_target.to_shortname);
190 target_debug_print_struct_target_ops_p (&debug_target);
191 fputs_unfiltered (", ", gdb_stdlog);
192 target_debug_print_struct_regcache_p (arg1);
193 fputs_unfiltered (", ", gdb_stdlog);
194 target_debug_print_int (arg2);
195 fputs_unfiltered (")\n", gdb_stdlog);
196}
197
6c628163
TT
198static void
199delegate_prepare_to_store (struct target_ops *self, struct regcache *arg1)
200{
201 self = self->beneath;
202 self->to_prepare_to_store (self, arg1);
203}
204
205static void
206tdefault_prepare_to_store (struct target_ops *self, struct regcache *arg1)
207{
208 noprocess ();
209}
210
a7068b60
TT
211static void
212debug_prepare_to_store (struct target_ops *self, struct regcache *arg1)
213{
214 fprintf_unfiltered (gdb_stdlog, "-> %s->to_prepare_to_store (...)\n", debug_target.to_shortname);
215 debug_target.to_prepare_to_store (&debug_target, arg1);
216 fprintf_unfiltered (gdb_stdlog, "<- %s->to_prepare_to_store (", debug_target.to_shortname);
217 target_debug_print_struct_target_ops_p (&debug_target);
218 fputs_unfiltered (", ", gdb_stdlog);
219 target_debug_print_struct_regcache_p (arg1);
220 fputs_unfiltered (")\n", gdb_stdlog);
221}
222
f86e59b2
TT
223static void
224delegate_files_info (struct target_ops *self)
225{
226 self = self->beneath;
227 self->to_files_info (self);
228}
229
230static void
231tdefault_files_info (struct target_ops *self)
232{
233}
234
a7068b60
TT
235static void
236debug_files_info (struct target_ops *self)
237{
238 fprintf_unfiltered (gdb_stdlog, "-> %s->to_files_info (...)\n", debug_target.to_shortname);
239 debug_target.to_files_info (&debug_target);
240 fprintf_unfiltered (gdb_stdlog, "<- %s->to_files_info (", debug_target.to_shortname);
241 target_debug_print_struct_target_ops_p (&debug_target);
242 fputs_unfiltered (")\n", gdb_stdlog);
243}
244
6b84065d
TT
245static int
246delegate_insert_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
247{
248 self = self->beneath;
249 return self->to_insert_breakpoint (self, arg1, arg2);
250}
251
a7068b60
TT
252static int
253debug_insert_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
254{
255 int result;
256 fprintf_unfiltered (gdb_stdlog, "-> %s->to_insert_breakpoint (...)\n", debug_target.to_shortname);
257 result = debug_target.to_insert_breakpoint (&debug_target, arg1, arg2);
258 fprintf_unfiltered (gdb_stdlog, "<- %s->to_insert_breakpoint (", debug_target.to_shortname);
259 target_debug_print_struct_target_ops_p (&debug_target);
260 fputs_unfiltered (", ", gdb_stdlog);
261 target_debug_print_struct_gdbarch_p (arg1);
262 fputs_unfiltered (", ", gdb_stdlog);
263 target_debug_print_struct_bp_target_info_p (arg2);
264 fputs_unfiltered (") = ", gdb_stdlog);
265 target_debug_print_int (result);
266 fputs_unfiltered ("\n", gdb_stdlog);
267 return result;
268}
269
6b84065d
TT
270static int
271delegate_remove_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
272{
273 self = self->beneath;
274 return self->to_remove_breakpoint (self, arg1, arg2);
275}
276
a7068b60
TT
277static int
278debug_remove_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
279{
280 int result;
281 fprintf_unfiltered (gdb_stdlog, "-> %s->to_remove_breakpoint (...)\n", debug_target.to_shortname);
282 result = debug_target.to_remove_breakpoint (&debug_target, arg1, arg2);
283 fprintf_unfiltered (gdb_stdlog, "<- %s->to_remove_breakpoint (", debug_target.to_shortname);
284 target_debug_print_struct_target_ops_p (&debug_target);
285 fputs_unfiltered (", ", gdb_stdlog);
286 target_debug_print_struct_gdbarch_p (arg1);
287 fputs_unfiltered (", ", gdb_stdlog);
288 target_debug_print_struct_bp_target_info_p (arg2);
289 fputs_unfiltered (") = ", gdb_stdlog);
290 target_debug_print_int (result);
291 fputs_unfiltered ("\n", gdb_stdlog);
292 return result;
293}
294
1cf4d951
PA
295static int
296delegate_stopped_by_sw_breakpoint (struct target_ops *self)
297{
298 self = self->beneath;
299 return self->to_stopped_by_sw_breakpoint (self);
300}
301
302static int
303tdefault_stopped_by_sw_breakpoint (struct target_ops *self)
304{
305 return 0;
306}
307
308static int
309debug_stopped_by_sw_breakpoint (struct target_ops *self)
310{
311 int result;
312 fprintf_unfiltered (gdb_stdlog, "-> %s->to_stopped_by_sw_breakpoint (...)\n", debug_target.to_shortname);
313 result = debug_target.to_stopped_by_sw_breakpoint (&debug_target);
314 fprintf_unfiltered (gdb_stdlog, "<- %s->to_stopped_by_sw_breakpoint (", debug_target.to_shortname);
315 target_debug_print_struct_target_ops_p (&debug_target);
316 fputs_unfiltered (") = ", gdb_stdlog);
317 target_debug_print_int (result);
318 fputs_unfiltered ("\n", gdb_stdlog);
319 return result;
320}
321
322static int
323delegate_supports_stopped_by_sw_breakpoint (struct target_ops *self)
324{
325 self = self->beneath;
326 return self->to_supports_stopped_by_sw_breakpoint (self);
327}
328
329static int
330tdefault_supports_stopped_by_sw_breakpoint (struct target_ops *self)
331{
332 return 0;
333}
334
335static int
336debug_supports_stopped_by_sw_breakpoint (struct target_ops *self)
337{
338 int result;
339 fprintf_unfiltered (gdb_stdlog, "-> %s->to_supports_stopped_by_sw_breakpoint (...)\n", debug_target.to_shortname);
340 result = debug_target.to_supports_stopped_by_sw_breakpoint (&debug_target);
341 fprintf_unfiltered (gdb_stdlog, "<- %s->to_supports_stopped_by_sw_breakpoint (", debug_target.to_shortname);
342 target_debug_print_struct_target_ops_p (&debug_target);
343 fputs_unfiltered (") = ", gdb_stdlog);
344 target_debug_print_int (result);
345 fputs_unfiltered ("\n", gdb_stdlog);
346 return result;
347}
348
349static int
350delegate_stopped_by_hw_breakpoint (struct target_ops *self)
351{
352 self = self->beneath;
353 return self->to_stopped_by_hw_breakpoint (self);
354}
355
356static int
357tdefault_stopped_by_hw_breakpoint (struct target_ops *self)
358{
359 return 0;
360}
361
362static int
363debug_stopped_by_hw_breakpoint (struct target_ops *self)
364{
365 int result;
366 fprintf_unfiltered (gdb_stdlog, "-> %s->to_stopped_by_hw_breakpoint (...)\n", debug_target.to_shortname);
367 result = debug_target.to_stopped_by_hw_breakpoint (&debug_target);
368 fprintf_unfiltered (gdb_stdlog, "<- %s->to_stopped_by_hw_breakpoint (", debug_target.to_shortname);
369 target_debug_print_struct_target_ops_p (&debug_target);
370 fputs_unfiltered (") = ", gdb_stdlog);
371 target_debug_print_int (result);
372 fputs_unfiltered ("\n", gdb_stdlog);
373 return result;
374}
375
376static int
377delegate_supports_stopped_by_hw_breakpoint (struct target_ops *self)
378{
379 self = self->beneath;
380 return self->to_supports_stopped_by_hw_breakpoint (self);
381}
382
383static int
384tdefault_supports_stopped_by_hw_breakpoint (struct target_ops *self)
385{
386 return 0;
387}
388
389static int
390debug_supports_stopped_by_hw_breakpoint (struct target_ops *self)
391{
392 int result;
393 fprintf_unfiltered (gdb_stdlog, "-> %s->to_supports_stopped_by_hw_breakpoint (...)\n", debug_target.to_shortname);
394 result = debug_target.to_supports_stopped_by_hw_breakpoint (&debug_target);
395 fprintf_unfiltered (gdb_stdlog, "<- %s->to_supports_stopped_by_hw_breakpoint (", debug_target.to_shortname);
396 target_debug_print_struct_target_ops_p (&debug_target);
397 fputs_unfiltered (") = ", gdb_stdlog);
398 target_debug_print_int (result);
399 fputs_unfiltered ("\n", gdb_stdlog);
400 return result;
401}
402
52b51d06 403static int
f486487f 404delegate_can_use_hw_breakpoint (struct target_ops *self, enum bptype arg1, int arg2, int arg3)
52b51d06
TT
405{
406 self = self->beneath;
407 return self->to_can_use_hw_breakpoint (self, arg1, arg2, arg3);
408}
409
410static int
f486487f 411tdefault_can_use_hw_breakpoint (struct target_ops *self, enum bptype arg1, int arg2, int arg3)
52b51d06
TT
412{
413 return 0;
414}
415
a7068b60 416static int
f486487f 417debug_can_use_hw_breakpoint (struct target_ops *self, enum bptype arg1, int arg2, int arg3)
a7068b60
TT
418{
419 int result;
420 fprintf_unfiltered (gdb_stdlog, "-> %s->to_can_use_hw_breakpoint (...)\n", debug_target.to_shortname);
421 result = debug_target.to_can_use_hw_breakpoint (&debug_target, arg1, arg2, arg3);
422 fprintf_unfiltered (gdb_stdlog, "<- %s->to_can_use_hw_breakpoint (", debug_target.to_shortname);
423 target_debug_print_struct_target_ops_p (&debug_target);
424 fputs_unfiltered (", ", gdb_stdlog);
f486487f 425 target_debug_print_enum_bptype (arg1);
a7068b60
TT
426 fputs_unfiltered (", ", gdb_stdlog);
427 target_debug_print_int (arg2);
428 fputs_unfiltered (", ", gdb_stdlog);
429 target_debug_print_int (arg3);
430 fputs_unfiltered (") = ", gdb_stdlog);
431 target_debug_print_int (result);
432 fputs_unfiltered ("\n", gdb_stdlog);
433 return result;
434}
435
a134316b
TT
436static int
437delegate_ranged_break_num_registers (struct target_ops *self)
438{
439 self = self->beneath;
440 return self->to_ranged_break_num_registers (self);
441}
442
443static int
444tdefault_ranged_break_num_registers (struct target_ops *self)
445{
446 return -1;
447}
448
a7068b60
TT
449static int
450debug_ranged_break_num_registers (struct target_ops *self)
451{
452 int result;
453 fprintf_unfiltered (gdb_stdlog, "-> %s->to_ranged_break_num_registers (...)\n", debug_target.to_shortname);
454 result = debug_target.to_ranged_break_num_registers (&debug_target);
455 fprintf_unfiltered (gdb_stdlog, "<- %s->to_ranged_break_num_registers (", debug_target.to_shortname);
456 target_debug_print_struct_target_ops_p (&debug_target);
457 fputs_unfiltered (") = ", gdb_stdlog);
458 target_debug_print_int (result);
459 fputs_unfiltered ("\n", gdb_stdlog);
460 return result;
461}
462
61b371f9
TT
463static int
464delegate_insert_hw_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
465{
466 self = self->beneath;
467 return self->to_insert_hw_breakpoint (self, arg1, arg2);
468}
469
470static int
471tdefault_insert_hw_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
472{
473 return -1;
474}
475
a7068b60
TT
476static int
477debug_insert_hw_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
478{
479 int result;
480 fprintf_unfiltered (gdb_stdlog, "-> %s->to_insert_hw_breakpoint (...)\n", debug_target.to_shortname);
481 result = debug_target.to_insert_hw_breakpoint (&debug_target, arg1, arg2);
482 fprintf_unfiltered (gdb_stdlog, "<- %s->to_insert_hw_breakpoint (", debug_target.to_shortname);
483 target_debug_print_struct_target_ops_p (&debug_target);
484 fputs_unfiltered (", ", gdb_stdlog);
485 target_debug_print_struct_gdbarch_p (arg1);
486 fputs_unfiltered (", ", gdb_stdlog);
487 target_debug_print_struct_bp_target_info_p (arg2);
488 fputs_unfiltered (") = ", gdb_stdlog);
489 target_debug_print_int (result);
490 fputs_unfiltered ("\n", gdb_stdlog);
491 return result;
492}
493
418dabac
TT
494static int
495delegate_remove_hw_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
496{
497 self = self->beneath;
498 return self->to_remove_hw_breakpoint (self, arg1, arg2);
499}
500
501static int
502tdefault_remove_hw_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
503{
504 return -1;
505}
506
a7068b60
TT
507static int
508debug_remove_hw_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
509{
510 int result;
511 fprintf_unfiltered (gdb_stdlog, "-> %s->to_remove_hw_breakpoint (...)\n", debug_target.to_shortname);
512 result = debug_target.to_remove_hw_breakpoint (&debug_target, arg1, arg2);
513 fprintf_unfiltered (gdb_stdlog, "<- %s->to_remove_hw_breakpoint (", debug_target.to_shortname);
514 target_debug_print_struct_target_ops_p (&debug_target);
515 fputs_unfiltered (", ", gdb_stdlog);
516 target_debug_print_struct_gdbarch_p (arg1);
517 fputs_unfiltered (", ", gdb_stdlog);
518 target_debug_print_struct_bp_target_info_p (arg2);
519 fputs_unfiltered (") = ", gdb_stdlog);
520 target_debug_print_int (result);
521 fputs_unfiltered ("\n", gdb_stdlog);
522 return result;
523}
524
61dd109f 525static int
f486487f 526delegate_remove_watchpoint (struct target_ops *self, CORE_ADDR arg1, int arg2, enum target_hw_bp_type arg3, struct expression *arg4)
61dd109f
TT
527{
528 self = self->beneath;
529 return self->to_remove_watchpoint (self, arg1, arg2, arg3, arg4);
530}
531
532static int
f486487f 533tdefault_remove_watchpoint (struct target_ops *self, CORE_ADDR arg1, int arg2, enum target_hw_bp_type arg3, struct expression *arg4)
61dd109f
TT
534{
535 return -1;
536}
537
a7068b60 538static int
f486487f 539debug_remove_watchpoint (struct target_ops *self, CORE_ADDR arg1, int arg2, enum target_hw_bp_type arg3, struct expression *arg4)
a7068b60
TT
540{
541 int result;
542 fprintf_unfiltered (gdb_stdlog, "-> %s->to_remove_watchpoint (...)\n", debug_target.to_shortname);
543 result = debug_target.to_remove_watchpoint (&debug_target, arg1, arg2, arg3, arg4);
544 fprintf_unfiltered (gdb_stdlog, "<- %s->to_remove_watchpoint (", debug_target.to_shortname);
545 target_debug_print_struct_target_ops_p (&debug_target);
546 fputs_unfiltered (", ", gdb_stdlog);
547 target_debug_print_CORE_ADDR (arg1);
548 fputs_unfiltered (", ", gdb_stdlog);
549 target_debug_print_int (arg2);
550 fputs_unfiltered (", ", gdb_stdlog);
f486487f 551 target_debug_print_enum_target_hw_bp_type (arg3);
a7068b60
TT
552 fputs_unfiltered (", ", gdb_stdlog);
553 target_debug_print_struct_expression_p (arg4);
554 fputs_unfiltered (") = ", gdb_stdlog);
555 target_debug_print_int (result);
556 fputs_unfiltered ("\n", gdb_stdlog);
557 return result;
558}
559
016facd4 560static int
f486487f 561delegate_insert_watchpoint (struct target_ops *self, CORE_ADDR arg1, int arg2, enum target_hw_bp_type arg3, struct expression *arg4)
016facd4
TT
562{
563 self = self->beneath;
564 return self->to_insert_watchpoint (self, arg1, arg2, arg3, arg4);
565}
566
567static int
f486487f 568tdefault_insert_watchpoint (struct target_ops *self, CORE_ADDR arg1, int arg2, enum target_hw_bp_type arg3, struct expression *arg4)
016facd4
TT
569{
570 return -1;
571}
572
a7068b60 573static int
f486487f 574debug_insert_watchpoint (struct target_ops *self, CORE_ADDR arg1, int arg2, enum target_hw_bp_type arg3, struct expression *arg4)
a7068b60
TT
575{
576 int result;
577 fprintf_unfiltered (gdb_stdlog, "-> %s->to_insert_watchpoint (...)\n", debug_target.to_shortname);
578 result = debug_target.to_insert_watchpoint (&debug_target, arg1, arg2, arg3, arg4);
579 fprintf_unfiltered (gdb_stdlog, "<- %s->to_insert_watchpoint (", debug_target.to_shortname);
580 target_debug_print_struct_target_ops_p (&debug_target);
581 fputs_unfiltered (", ", gdb_stdlog);
582 target_debug_print_CORE_ADDR (arg1);
583 fputs_unfiltered (", ", gdb_stdlog);
584 target_debug_print_int (arg2);
585 fputs_unfiltered (", ", gdb_stdlog);
f486487f 586 target_debug_print_enum_target_hw_bp_type (arg3);
a7068b60
TT
587 fputs_unfiltered (", ", gdb_stdlog);
588 target_debug_print_struct_expression_p (arg4);
589 fputs_unfiltered (") = ", gdb_stdlog);
590 target_debug_print_int (result);
591 fputs_unfiltered ("\n", gdb_stdlog);
592 return result;
593}
594
cd4ae029
TT
595static int
596delegate_insert_mask_watchpoint (struct target_ops *self, CORE_ADDR arg1, CORE_ADDR arg2, int arg3)
597{
598 self = self->beneath;
599 return self->to_insert_mask_watchpoint (self, arg1, arg2, arg3);
600}
601
602static int
603tdefault_insert_mask_watchpoint (struct target_ops *self, CORE_ADDR arg1, CORE_ADDR arg2, int arg3)
604{
605 return 1;
606}
607
a7068b60
TT
608static int
609debug_insert_mask_watchpoint (struct target_ops *self, CORE_ADDR arg1, CORE_ADDR arg2, int arg3)
610{
611 int result;
612 fprintf_unfiltered (gdb_stdlog, "-> %s->to_insert_mask_watchpoint (...)\n", debug_target.to_shortname);
613 result = debug_target.to_insert_mask_watchpoint (&debug_target, arg1, arg2, arg3);
614 fprintf_unfiltered (gdb_stdlog, "<- %s->to_insert_mask_watchpoint (", debug_target.to_shortname);
615 target_debug_print_struct_target_ops_p (&debug_target);
616 fputs_unfiltered (", ", gdb_stdlog);
617 target_debug_print_CORE_ADDR (arg1);
618 fputs_unfiltered (", ", gdb_stdlog);
619 target_debug_print_CORE_ADDR (arg2);
620 fputs_unfiltered (", ", gdb_stdlog);
621 target_debug_print_int (arg3);
622 fputs_unfiltered (") = ", gdb_stdlog);
623 target_debug_print_int (result);
624 fputs_unfiltered ("\n", gdb_stdlog);
625 return result;
626}
627
8b1c364c
TT
628static int
629delegate_remove_mask_watchpoint (struct target_ops *self, CORE_ADDR arg1, CORE_ADDR arg2, int arg3)
630{
631 self = self->beneath;
632 return self->to_remove_mask_watchpoint (self, arg1, arg2, arg3);
633}
634
635static int
636tdefault_remove_mask_watchpoint (struct target_ops *self, CORE_ADDR arg1, CORE_ADDR arg2, int arg3)
637{
638 return 1;
639}
640
a7068b60
TT
641static int
642debug_remove_mask_watchpoint (struct target_ops *self, CORE_ADDR arg1, CORE_ADDR arg2, int arg3)
643{
644 int result;
645 fprintf_unfiltered (gdb_stdlog, "-> %s->to_remove_mask_watchpoint (...)\n", debug_target.to_shortname);
646 result = debug_target.to_remove_mask_watchpoint (&debug_target, arg1, arg2, arg3);
647 fprintf_unfiltered (gdb_stdlog, "<- %s->to_remove_mask_watchpoint (", debug_target.to_shortname);
648 target_debug_print_struct_target_ops_p (&debug_target);
649 fputs_unfiltered (", ", gdb_stdlog);
650 target_debug_print_CORE_ADDR (arg1);
651 fputs_unfiltered (", ", gdb_stdlog);
652 target_debug_print_CORE_ADDR (arg2);
653 fputs_unfiltered (", ", gdb_stdlog);
654 target_debug_print_int (arg3);
655 fputs_unfiltered (") = ", gdb_stdlog);
656 target_debug_print_int (result);
657 fputs_unfiltered ("\n", gdb_stdlog);
658 return result;
659}
660
6b84065d
TT
661static int
662delegate_stopped_by_watchpoint (struct target_ops *self)
663{
664 self = self->beneath;
665 return self->to_stopped_by_watchpoint (self);
666}
667
668static int
669tdefault_stopped_by_watchpoint (struct target_ops *self)
670{
671 return 0;
672}
673
a7068b60
TT
674static int
675debug_stopped_by_watchpoint (struct target_ops *self)
676{
677 int result;
678 fprintf_unfiltered (gdb_stdlog, "-> %s->to_stopped_by_watchpoint (...)\n", debug_target.to_shortname);
679 result = debug_target.to_stopped_by_watchpoint (&debug_target);
680 fprintf_unfiltered (gdb_stdlog, "<- %s->to_stopped_by_watchpoint (", debug_target.to_shortname);
681 target_debug_print_struct_target_ops_p (&debug_target);
682 fputs_unfiltered (") = ", gdb_stdlog);
683 target_debug_print_int (result);
684 fputs_unfiltered ("\n", gdb_stdlog);
685 return result;
686}
687
6b84065d
TT
688static int
689delegate_stopped_data_address (struct target_ops *self, CORE_ADDR *arg1)
690{
691 self = self->beneath;
692 return self->to_stopped_data_address (self, arg1);
693}
694
695static int
696tdefault_stopped_data_address (struct target_ops *self, CORE_ADDR *arg1)
697{
698 return 0;
699}
700
a7068b60
TT
701static int
702debug_stopped_data_address (struct target_ops *self, CORE_ADDR *arg1)
703{
704 int result;
705 fprintf_unfiltered (gdb_stdlog, "-> %s->to_stopped_data_address (...)\n", debug_target.to_shortname);
706 result = debug_target.to_stopped_data_address (&debug_target, arg1);
707 fprintf_unfiltered (gdb_stdlog, "<- %s->to_stopped_data_address (", debug_target.to_shortname);
708 target_debug_print_struct_target_ops_p (&debug_target);
709 fputs_unfiltered (", ", gdb_stdlog);
710 target_debug_print_CORE_ADDR_p (arg1);
711 fputs_unfiltered (") = ", gdb_stdlog);
712 target_debug_print_int (result);
713 fputs_unfiltered ("\n", gdb_stdlog);
714 return result;
715}
716
65f160a9
TT
717static int
718delegate_watchpoint_addr_within_range (struct target_ops *self, CORE_ADDR arg1, CORE_ADDR arg2, int arg3)
719{
720 self = self->beneath;
721 return self->to_watchpoint_addr_within_range (self, arg1, arg2, arg3);
722}
723
a7068b60
TT
724static int
725debug_watchpoint_addr_within_range (struct target_ops *self, CORE_ADDR arg1, CORE_ADDR arg2, int arg3)
726{
727 int result;
728 fprintf_unfiltered (gdb_stdlog, "-> %s->to_watchpoint_addr_within_range (...)\n", debug_target.to_shortname);
729 result = debug_target.to_watchpoint_addr_within_range (&debug_target, arg1, arg2, arg3);
730 fprintf_unfiltered (gdb_stdlog, "<- %s->to_watchpoint_addr_within_range (", debug_target.to_shortname);
731 target_debug_print_struct_target_ops_p (&debug_target);
732 fputs_unfiltered (", ", gdb_stdlog);
733 target_debug_print_CORE_ADDR (arg1);
734 fputs_unfiltered (", ", gdb_stdlog);
735 target_debug_print_CORE_ADDR (arg2);
736 fputs_unfiltered (", ", gdb_stdlog);
737 target_debug_print_int (arg3);
738 fputs_unfiltered (") = ", gdb_stdlog);
739 target_debug_print_int (result);
740 fputs_unfiltered ("\n", gdb_stdlog);
741 return result;
742}
743
d03655e4
TT
744static int
745delegate_region_ok_for_hw_watchpoint (struct target_ops *self, CORE_ADDR arg1, int arg2)
746{
747 self = self->beneath;
748 return self->to_region_ok_for_hw_watchpoint (self, arg1, arg2);
749}
750
a7068b60
TT
751static int
752debug_region_ok_for_hw_watchpoint (struct target_ops *self, CORE_ADDR arg1, int arg2)
753{
754 int result;
755 fprintf_unfiltered (gdb_stdlog, "-> %s->to_region_ok_for_hw_watchpoint (...)\n", debug_target.to_shortname);
756 result = debug_target.to_region_ok_for_hw_watchpoint (&debug_target, arg1, arg2);
757 fprintf_unfiltered (gdb_stdlog, "<- %s->to_region_ok_for_hw_watchpoint (", debug_target.to_shortname);
758 target_debug_print_struct_target_ops_p (&debug_target);
759 fputs_unfiltered (", ", gdb_stdlog);
760 target_debug_print_CORE_ADDR (arg1);
761 fputs_unfiltered (", ", gdb_stdlog);
762 target_debug_print_int (arg2);
763 fputs_unfiltered (") = ", gdb_stdlog);
764 target_debug_print_int (result);
765 fputs_unfiltered ("\n", gdb_stdlog);
766 return result;
767}
768
77cdffe9
TT
769static int
770delegate_can_accel_watchpoint_condition (struct target_ops *self, CORE_ADDR arg1, int arg2, int arg3, struct expression *arg4)
771{
772 self = self->beneath;
773 return self->to_can_accel_watchpoint_condition (self, arg1, arg2, arg3, arg4);
774}
775
776static int
777tdefault_can_accel_watchpoint_condition (struct target_ops *self, CORE_ADDR arg1, int arg2, int arg3, struct expression *arg4)
778{
779 return 0;
780}
781
a7068b60
TT
782static int
783debug_can_accel_watchpoint_condition (struct target_ops *self, CORE_ADDR arg1, int arg2, int arg3, struct expression *arg4)
784{
785 int result;
786 fprintf_unfiltered (gdb_stdlog, "-> %s->to_can_accel_watchpoint_condition (...)\n", debug_target.to_shortname);
787 result = debug_target.to_can_accel_watchpoint_condition (&debug_target, arg1, arg2, arg3, arg4);
788 fprintf_unfiltered (gdb_stdlog, "<- %s->to_can_accel_watchpoint_condition (", debug_target.to_shortname);
789 target_debug_print_struct_target_ops_p (&debug_target);
790 fputs_unfiltered (", ", gdb_stdlog);
791 target_debug_print_CORE_ADDR (arg1);
792 fputs_unfiltered (", ", gdb_stdlog);
793 target_debug_print_int (arg2);
794 fputs_unfiltered (", ", gdb_stdlog);
795 target_debug_print_int (arg3);
796 fputs_unfiltered (", ", gdb_stdlog);
797 target_debug_print_struct_expression_p (arg4);
798 fputs_unfiltered (") = ", gdb_stdlog);
799 target_debug_print_int (result);
800 fputs_unfiltered ("\n", gdb_stdlog);
801 return result;
802}
803
6c7e5e5c
TT
804static int
805delegate_masked_watch_num_registers (struct target_ops *self, CORE_ADDR arg1, CORE_ADDR arg2)
806{
807 self = self->beneath;
808 return self->to_masked_watch_num_registers (self, arg1, arg2);
809}
810
811static int
812tdefault_masked_watch_num_registers (struct target_ops *self, CORE_ADDR arg1, CORE_ADDR arg2)
813{
814 return -1;
815}
816
a7068b60
TT
817static int
818debug_masked_watch_num_registers (struct target_ops *self, CORE_ADDR arg1, CORE_ADDR arg2)
819{
820 int result;
821 fprintf_unfiltered (gdb_stdlog, "-> %s->to_masked_watch_num_registers (...)\n", debug_target.to_shortname);
822 result = debug_target.to_masked_watch_num_registers (&debug_target, arg1, arg2);
823 fprintf_unfiltered (gdb_stdlog, "<- %s->to_masked_watch_num_registers (", debug_target.to_shortname);
824 target_debug_print_struct_target_ops_p (&debug_target);
825 fputs_unfiltered (", ", gdb_stdlog);
826 target_debug_print_CORE_ADDR (arg1);
827 fputs_unfiltered (", ", gdb_stdlog);
828 target_debug_print_CORE_ADDR (arg2);
829 fputs_unfiltered (") = ", gdb_stdlog);
830 target_debug_print_int (result);
831 fputs_unfiltered ("\n", gdb_stdlog);
832 return result;
833}
834
0343661d
TT
835static void
836delegate_terminal_init (struct target_ops *self)
837{
838 self = self->beneath;
839 self->to_terminal_init (self);
840}
841
842static void
843tdefault_terminal_init (struct target_ops *self)
844{
845}
846
a7068b60
TT
847static void
848debug_terminal_init (struct target_ops *self)
849{
850 fprintf_unfiltered (gdb_stdlog, "-> %s->to_terminal_init (...)\n", debug_target.to_shortname);
851 debug_target.to_terminal_init (&debug_target);
852 fprintf_unfiltered (gdb_stdlog, "<- %s->to_terminal_init (", debug_target.to_shortname);
853 target_debug_print_struct_target_ops_p (&debug_target);
854 fputs_unfiltered (")\n", gdb_stdlog);
855}
856
ddeaacc9
TT
857static void
858delegate_terminal_inferior (struct target_ops *self)
859{
860 self = self->beneath;
861 self->to_terminal_inferior (self);
862}
863
864static void
865tdefault_terminal_inferior (struct target_ops *self)
866{
867}
868
a7068b60
TT
869static void
870debug_terminal_inferior (struct target_ops *self)
871{
872 fprintf_unfiltered (gdb_stdlog, "-> %s->to_terminal_inferior (...)\n", debug_target.to_shortname);
873 debug_target.to_terminal_inferior (&debug_target);
874 fprintf_unfiltered (gdb_stdlog, "<- %s->to_terminal_inferior (", debug_target.to_shortname);
875 target_debug_print_struct_target_ops_p (&debug_target);
876 fputs_unfiltered (")\n", gdb_stdlog);
877}
878
74fcbef9
TT
879static void
880delegate_terminal_ours_for_output (struct target_ops *self)
881{
882 self = self->beneath;
883 self->to_terminal_ours_for_output (self);
884}
885
886static void
887tdefault_terminal_ours_for_output (struct target_ops *self)
888{
889}
890
a7068b60
TT
891static void
892debug_terminal_ours_for_output (struct target_ops *self)
893{
894 fprintf_unfiltered (gdb_stdlog, "-> %s->to_terminal_ours_for_output (...)\n", debug_target.to_shortname);
895 debug_target.to_terminal_ours_for_output (&debug_target);
896 fprintf_unfiltered (gdb_stdlog, "<- %s->to_terminal_ours_for_output (", debug_target.to_shortname);
897 target_debug_print_struct_target_ops_p (&debug_target);
898 fputs_unfiltered (")\n", gdb_stdlog);
899}
900
e4a733f1
TT
901static void
902delegate_terminal_ours (struct target_ops *self)
903{
904 self = self->beneath;
905 self->to_terminal_ours (self);
906}
907
908static void
909tdefault_terminal_ours (struct target_ops *self)
910{
911}
912
a7068b60
TT
913static void
914debug_terminal_ours (struct target_ops *self)
915{
916 fprintf_unfiltered (gdb_stdlog, "-> %s->to_terminal_ours (...)\n", debug_target.to_shortname);
917 debug_target.to_terminal_ours (&debug_target);
918 fprintf_unfiltered (gdb_stdlog, "<- %s->to_terminal_ours (", debug_target.to_shortname);
919 target_debug_print_struct_target_ops_p (&debug_target);
920 fputs_unfiltered (")\n", gdb_stdlog);
921}
922
e19e919f
TT
923static void
924delegate_terminal_info (struct target_ops *self, const char *arg1, int arg2)
925{
926 self = self->beneath;
927 self->to_terminal_info (self, arg1, arg2);
928}
929
a7068b60
TT
930static void
931debug_terminal_info (struct target_ops *self, const char *arg1, int arg2)
932{
933 fprintf_unfiltered (gdb_stdlog, "-> %s->to_terminal_info (...)\n", debug_target.to_shortname);
934 debug_target.to_terminal_info (&debug_target, arg1, arg2);
935 fprintf_unfiltered (gdb_stdlog, "<- %s->to_terminal_info (", debug_target.to_shortname);
936 target_debug_print_struct_target_ops_p (&debug_target);
937 fputs_unfiltered (", ", gdb_stdlog);
938 target_debug_print_const_char_p (arg1);
939 fputs_unfiltered (", ", gdb_stdlog);
940 target_debug_print_int (arg2);
941 fputs_unfiltered (")\n", gdb_stdlog);
942}
943
423a4807
TT
944static void
945delegate_kill (struct target_ops *self)
946{
947 self = self->beneath;
948 self->to_kill (self);
949}
950
951static void
952tdefault_kill (struct target_ops *self)
953{
954 noprocess ();
955}
956
a7068b60
TT
957static void
958debug_kill (struct target_ops *self)
959{
960 fprintf_unfiltered (gdb_stdlog, "-> %s->to_kill (...)\n", debug_target.to_shortname);
961 debug_target.to_kill (&debug_target);
962 fprintf_unfiltered (gdb_stdlog, "<- %s->to_kill (", debug_target.to_shortname);
963 target_debug_print_struct_target_ops_p (&debug_target);
964 fputs_unfiltered (")\n", gdb_stdlog);
965}
966
7634da87 967static void
9cbe5fff 968delegate_load (struct target_ops *self, const char *arg1, int arg2)
7634da87
TT
969{
970 self = self->beneath;
971 self->to_load (self, arg1, arg2);
972}
973
974static void
9cbe5fff 975tdefault_load (struct target_ops *self, const char *arg1, int arg2)
7634da87
TT
976{
977 tcomplain ();
978}
979
a7068b60
TT
980static void
981debug_load (struct target_ops *self, const char *arg1, int arg2)
982{
983 fprintf_unfiltered (gdb_stdlog, "-> %s->to_load (...)\n", debug_target.to_shortname);
984 debug_target.to_load (&debug_target, arg1, arg2);
985 fprintf_unfiltered (gdb_stdlog, "<- %s->to_load (", debug_target.to_shortname);
986 target_debug_print_struct_target_ops_p (&debug_target);
987 fputs_unfiltered (", ", gdb_stdlog);
988 target_debug_print_const_char_p (arg1);
989 fputs_unfiltered (", ", gdb_stdlog);
990 target_debug_print_int (arg2);
991 fputs_unfiltered (")\n", gdb_stdlog);
992}
993
340ba4bf
TT
994static void
995delegate_post_startup_inferior (struct target_ops *self, ptid_t arg1)
996{
997 self = self->beneath;
998 self->to_post_startup_inferior (self, arg1);
999}
1000
1001static void
1002tdefault_post_startup_inferior (struct target_ops *self, ptid_t arg1)
1003{
1004}
1005
a7068b60
TT
1006static void
1007debug_post_startup_inferior (struct target_ops *self, ptid_t arg1)
1008{
1009 fprintf_unfiltered (gdb_stdlog, "-> %s->to_post_startup_inferior (...)\n", debug_target.to_shortname);
1010 debug_target.to_post_startup_inferior (&debug_target, arg1);
1011 fprintf_unfiltered (gdb_stdlog, "<- %s->to_post_startup_inferior (", debug_target.to_shortname);
1012 target_debug_print_struct_target_ops_p (&debug_target);
1013 fputs_unfiltered (", ", gdb_stdlog);
1014 target_debug_print_ptid_t (arg1);
1015 fputs_unfiltered (")\n", gdb_stdlog);
1016}
1017
5958ebeb
TT
1018static int
1019delegate_insert_fork_catchpoint (struct target_ops *self, int arg1)
1020{
1021 self = self->beneath;
1022 return self->to_insert_fork_catchpoint (self, arg1);
1023}
1024
1025static int
1026tdefault_insert_fork_catchpoint (struct target_ops *self, int arg1)
1027{
1028 return 1;
1029}
1030
a7068b60
TT
1031static int
1032debug_insert_fork_catchpoint (struct target_ops *self, int arg1)
1033{
1034 int result;
1035 fprintf_unfiltered (gdb_stdlog, "-> %s->to_insert_fork_catchpoint (...)\n", debug_target.to_shortname);
1036 result = debug_target.to_insert_fork_catchpoint (&debug_target, arg1);
1037 fprintf_unfiltered (gdb_stdlog, "<- %s->to_insert_fork_catchpoint (", debug_target.to_shortname);
1038 target_debug_print_struct_target_ops_p (&debug_target);
1039 fputs_unfiltered (", ", gdb_stdlog);
1040 target_debug_print_int (arg1);
1041 fputs_unfiltered (") = ", gdb_stdlog);
1042 target_debug_print_int (result);
1043 fputs_unfiltered ("\n", gdb_stdlog);
1044 return result;
1045}
1046
e1a21fb7
TT
1047static int
1048delegate_remove_fork_catchpoint (struct target_ops *self, int arg1)
1049{
1050 self = self->beneath;
1051 return self->to_remove_fork_catchpoint (self, arg1);
1052}
1053
1054static int
1055tdefault_remove_fork_catchpoint (struct target_ops *self, int arg1)
1056{
1057 return 1;
1058}
1059
a7068b60
TT
1060static int
1061debug_remove_fork_catchpoint (struct target_ops *self, int arg1)
1062{
1063 int result;
1064 fprintf_unfiltered (gdb_stdlog, "-> %s->to_remove_fork_catchpoint (...)\n", debug_target.to_shortname);
1065 result = debug_target.to_remove_fork_catchpoint (&debug_target, arg1);
1066 fprintf_unfiltered (gdb_stdlog, "<- %s->to_remove_fork_catchpoint (", debug_target.to_shortname);
1067 target_debug_print_struct_target_ops_p (&debug_target);
1068 fputs_unfiltered (", ", gdb_stdlog);
1069 target_debug_print_int (arg1);
1070 fputs_unfiltered (") = ", gdb_stdlog);
1071 target_debug_print_int (result);
1072 fputs_unfiltered ("\n", gdb_stdlog);
1073 return result;
1074}
1075
7e18a8dc
TT
1076static int
1077delegate_insert_vfork_catchpoint (struct target_ops *self, int arg1)
1078{
1079 self = self->beneath;
1080 return self->to_insert_vfork_catchpoint (self, arg1);
1081}
1082
1083static int
1084tdefault_insert_vfork_catchpoint (struct target_ops *self, int arg1)
1085{
1086 return 1;
1087}
1088
a7068b60
TT
1089static int
1090debug_insert_vfork_catchpoint (struct target_ops *self, int arg1)
1091{
1092 int result;
1093 fprintf_unfiltered (gdb_stdlog, "-> %s->to_insert_vfork_catchpoint (...)\n", debug_target.to_shortname);
1094 result = debug_target.to_insert_vfork_catchpoint (&debug_target, arg1);
1095 fprintf_unfiltered (gdb_stdlog, "<- %s->to_insert_vfork_catchpoint (", debug_target.to_shortname);
1096 target_debug_print_struct_target_ops_p (&debug_target);
1097 fputs_unfiltered (", ", gdb_stdlog);
1098 target_debug_print_int (arg1);
1099 fputs_unfiltered (") = ", gdb_stdlog);
1100 target_debug_print_int (result);
1101 fputs_unfiltered ("\n", gdb_stdlog);
1102 return result;
1103}
1104
95c3375e
TT
1105static int
1106delegate_remove_vfork_catchpoint (struct target_ops *self, int arg1)
1107{
1108 self = self->beneath;
1109 return self->to_remove_vfork_catchpoint (self, arg1);
1110}
1111
1112static int
1113tdefault_remove_vfork_catchpoint (struct target_ops *self, int arg1)
1114{
1115 return 1;
1116}
1117
a7068b60
TT
1118static int
1119debug_remove_vfork_catchpoint (struct target_ops *self, int arg1)
1120{
1121 int result;
1122 fprintf_unfiltered (gdb_stdlog, "-> %s->to_remove_vfork_catchpoint (...)\n", debug_target.to_shortname);
1123 result = debug_target.to_remove_vfork_catchpoint (&debug_target, arg1);
1124 fprintf_unfiltered (gdb_stdlog, "<- %s->to_remove_vfork_catchpoint (", debug_target.to_shortname);
1125 target_debug_print_struct_target_ops_p (&debug_target);
1126 fputs_unfiltered (", ", gdb_stdlog);
1127 target_debug_print_int (arg1);
1128 fputs_unfiltered (") = ", gdb_stdlog);
1129 target_debug_print_int (result);
1130 fputs_unfiltered ("\n", gdb_stdlog);
1131 return result;
1132}
1133
098dba18
TT
1134static int
1135delegate_follow_fork (struct target_ops *self, int arg1, int arg2)
1136{
1137 self = self->beneath;
1138 return self->to_follow_fork (self, arg1, arg2);
1139}
1140
a7068b60
TT
1141static int
1142debug_follow_fork (struct target_ops *self, int arg1, int arg2)
1143{
1144 int result;
1145 fprintf_unfiltered (gdb_stdlog, "-> %s->to_follow_fork (...)\n", debug_target.to_shortname);
1146 result = debug_target.to_follow_fork (&debug_target, arg1, arg2);
1147 fprintf_unfiltered (gdb_stdlog, "<- %s->to_follow_fork (", debug_target.to_shortname);
1148 target_debug_print_struct_target_ops_p (&debug_target);
1149 fputs_unfiltered (", ", gdb_stdlog);
1150 target_debug_print_int (arg1);
1151 fputs_unfiltered (", ", gdb_stdlog);
1152 target_debug_print_int (arg2);
1153 fputs_unfiltered (") = ", gdb_stdlog);
1154 target_debug_print_int (result);
1155 fputs_unfiltered ("\n", gdb_stdlog);
1156 return result;
1157}
1158
62f64d7a
TT
1159static int
1160delegate_insert_exec_catchpoint (struct target_ops *self, int arg1)
1161{
1162 self = self->beneath;
1163 return self->to_insert_exec_catchpoint (self, arg1);
1164}
1165
1166static int
1167tdefault_insert_exec_catchpoint (struct target_ops *self, int arg1)
1168{
1169 return 1;
1170}
1171
a7068b60
TT
1172static int
1173debug_insert_exec_catchpoint (struct target_ops *self, int arg1)
1174{
1175 int result;
1176 fprintf_unfiltered (gdb_stdlog, "-> %s->to_insert_exec_catchpoint (...)\n", debug_target.to_shortname);
1177 result = debug_target.to_insert_exec_catchpoint (&debug_target, arg1);
1178 fprintf_unfiltered (gdb_stdlog, "<- %s->to_insert_exec_catchpoint (", debug_target.to_shortname);
1179 target_debug_print_struct_target_ops_p (&debug_target);
1180 fputs_unfiltered (", ", gdb_stdlog);
1181 target_debug_print_int (arg1);
1182 fputs_unfiltered (") = ", gdb_stdlog);
1183 target_debug_print_int (result);
1184 fputs_unfiltered ("\n", gdb_stdlog);
1185 return result;
1186}
1187
cda0f38c
TT
1188static int
1189delegate_remove_exec_catchpoint (struct target_ops *self, int arg1)
1190{
1191 self = self->beneath;
1192 return self->to_remove_exec_catchpoint (self, arg1);
1193}
1194
1195static int
1196tdefault_remove_exec_catchpoint (struct target_ops *self, int arg1)
1197{
1198 return 1;
1199}
1200
a7068b60
TT
1201static int
1202debug_remove_exec_catchpoint (struct target_ops *self, int arg1)
1203{
1204 int result;
1205 fprintf_unfiltered (gdb_stdlog, "-> %s->to_remove_exec_catchpoint (...)\n", debug_target.to_shortname);
1206 result = debug_target.to_remove_exec_catchpoint (&debug_target, arg1);
1207 fprintf_unfiltered (gdb_stdlog, "<- %s->to_remove_exec_catchpoint (", debug_target.to_shortname);
1208 target_debug_print_struct_target_ops_p (&debug_target);
1209 fputs_unfiltered (", ", gdb_stdlog);
1210 target_debug_print_int (arg1);
1211 fputs_unfiltered (") = ", gdb_stdlog);
1212 target_debug_print_int (result);
1213 fputs_unfiltered ("\n", gdb_stdlog);
1214 return result;
1215}
1216
6a9fa051
TT
1217static int
1218delegate_set_syscall_catchpoint (struct target_ops *self, int arg1, int arg2, int arg3, int arg4, int *arg5)
1219{
1220 self = self->beneath;
1221 return self->to_set_syscall_catchpoint (self, arg1, arg2, arg3, arg4, arg5);
1222}
1223
1224static int
1225tdefault_set_syscall_catchpoint (struct target_ops *self, int arg1, int arg2, int arg3, int arg4, int *arg5)
1226{
1227 return 1;
1228}
1229
a7068b60
TT
1230static int
1231debug_set_syscall_catchpoint (struct target_ops *self, int arg1, int arg2, int arg3, int arg4, int *arg5)
1232{
1233 int result;
1234 fprintf_unfiltered (gdb_stdlog, "-> %s->to_set_syscall_catchpoint (...)\n", debug_target.to_shortname);
1235 result = debug_target.to_set_syscall_catchpoint (&debug_target, arg1, arg2, arg3, arg4, arg5);
1236 fprintf_unfiltered (gdb_stdlog, "<- %s->to_set_syscall_catchpoint (", debug_target.to_shortname);
1237 target_debug_print_struct_target_ops_p (&debug_target);
1238 fputs_unfiltered (", ", gdb_stdlog);
1239 target_debug_print_int (arg1);
1240 fputs_unfiltered (", ", gdb_stdlog);
1241 target_debug_print_int (arg2);
1242 fputs_unfiltered (", ", gdb_stdlog);
1243 target_debug_print_int (arg3);
1244 fputs_unfiltered (", ", gdb_stdlog);
1245 target_debug_print_int (arg4);
1246 fputs_unfiltered (", ", gdb_stdlog);
1247 target_debug_print_int_p (arg5);
1248 fputs_unfiltered (") = ", gdb_stdlog);
1249 target_debug_print_int (result);
1250 fputs_unfiltered ("\n", gdb_stdlog);
1251 return result;
1252}
1253
0db88c1d
TT
1254static int
1255delegate_has_exited (struct target_ops *self, int arg1, int arg2, int *arg3)
1256{
1257 self = self->beneath;
1258 return self->to_has_exited (self, arg1, arg2, arg3);
1259}
1260
1261static int
1262tdefault_has_exited (struct target_ops *self, int arg1, int arg2, int *arg3)
1263{
1264 return 0;
1265}
1266
a7068b60
TT
1267static int
1268debug_has_exited (struct target_ops *self, int arg1, int arg2, int *arg3)
1269{
1270 int result;
1271 fprintf_unfiltered (gdb_stdlog, "-> %s->to_has_exited (...)\n", debug_target.to_shortname);
1272 result = debug_target.to_has_exited (&debug_target, arg1, arg2, arg3);
1273 fprintf_unfiltered (gdb_stdlog, "<- %s->to_has_exited (", debug_target.to_shortname);
1274 target_debug_print_struct_target_ops_p (&debug_target);
1275 fputs_unfiltered (", ", gdb_stdlog);
1276 target_debug_print_int (arg1);
1277 fputs_unfiltered (", ", gdb_stdlog);
1278 target_debug_print_int (arg2);
1279 fputs_unfiltered (", ", gdb_stdlog);
1280 target_debug_print_int_p (arg3);
1281 fputs_unfiltered (") = ", gdb_stdlog);
1282 target_debug_print_int (result);
1283 fputs_unfiltered ("\n", gdb_stdlog);
1284 return result;
1285}
1286
8d657035
TT
1287static void
1288delegate_mourn_inferior (struct target_ops *self)
1289{
1290 self = self->beneath;
1291 self->to_mourn_inferior (self);
1292}
1293
a7068b60
TT
1294static void
1295debug_mourn_inferior (struct target_ops *self)
1296{
1297 fprintf_unfiltered (gdb_stdlog, "-> %s->to_mourn_inferior (...)\n", debug_target.to_shortname);
1298 debug_target.to_mourn_inferior (&debug_target);
1299 fprintf_unfiltered (gdb_stdlog, "<- %s->to_mourn_inferior (", debug_target.to_shortname);
1300 target_debug_print_struct_target_ops_p (&debug_target);
1301 fputs_unfiltered (")\n", gdb_stdlog);
1302}
1303
e88ef65c
TT
1304static int
1305delegate_can_run (struct target_ops *self)
1306{
1307 self = self->beneath;
1308 return self->to_can_run (self);
1309}
1310
1311static int
1312tdefault_can_run (struct target_ops *self)
1313{
1314 return 0;
1315}
1316
a7068b60
TT
1317static int
1318debug_can_run (struct target_ops *self)
1319{
1320 int result;
1321 fprintf_unfiltered (gdb_stdlog, "-> %s->to_can_run (...)\n", debug_target.to_shortname);
1322 result = debug_target.to_can_run (&debug_target);
1323 fprintf_unfiltered (gdb_stdlog, "<- %s->to_can_run (", debug_target.to_shortname);
1324 target_debug_print_struct_target_ops_p (&debug_target);
1325 fputs_unfiltered (") = ", gdb_stdlog);
1326 target_debug_print_int (result);
1327 fputs_unfiltered ("\n", gdb_stdlog);
1328 return result;
1329}
1330
035cad7f 1331static void
a7068b60 1332delegate_pass_signals (struct target_ops *self, int arg1, unsigned char * arg2)
035cad7f
TT
1333{
1334 self = self->beneath;
1335 self->to_pass_signals (self, arg1, arg2);
1336}
1337
1338static void
a7068b60
TT
1339tdefault_pass_signals (struct target_ops *self, int arg1, unsigned char * arg2)
1340{
1341}
1342
1343static void
1344debug_pass_signals (struct target_ops *self, int arg1, unsigned char * arg2)
035cad7f 1345{
a7068b60
TT
1346 fprintf_unfiltered (gdb_stdlog, "-> %s->to_pass_signals (...)\n", debug_target.to_shortname);
1347 debug_target.to_pass_signals (&debug_target, arg1, arg2);
1348 fprintf_unfiltered (gdb_stdlog, "<- %s->to_pass_signals (", debug_target.to_shortname);
1349 target_debug_print_struct_target_ops_p (&debug_target);
1350 fputs_unfiltered (", ", gdb_stdlog);
1351 target_debug_print_int (arg1);
1352 fputs_unfiltered (", ", gdb_stdlog);
1353 target_debug_print_signals (arg2);
1354 fputs_unfiltered (")\n", gdb_stdlog);
035cad7f
TT
1355}
1356
7d4f8efa 1357static void
a7068b60 1358delegate_program_signals (struct target_ops *self, int arg1, unsigned char * arg2)
7d4f8efa
TT
1359{
1360 self = self->beneath;
1361 self->to_program_signals (self, arg1, arg2);
1362}
1363
1364static void
a7068b60
TT
1365tdefault_program_signals (struct target_ops *self, int arg1, unsigned char * arg2)
1366{
1367}
1368
1369static void
1370debug_program_signals (struct target_ops *self, int arg1, unsigned char * arg2)
7d4f8efa 1371{
a7068b60
TT
1372 fprintf_unfiltered (gdb_stdlog, "-> %s->to_program_signals (...)\n", debug_target.to_shortname);
1373 debug_target.to_program_signals (&debug_target, arg1, arg2);
1374 fprintf_unfiltered (gdb_stdlog, "<- %s->to_program_signals (", debug_target.to_shortname);
1375 target_debug_print_struct_target_ops_p (&debug_target);
1376 fputs_unfiltered (", ", gdb_stdlog);
1377 target_debug_print_int (arg1);
1378 fputs_unfiltered (", ", gdb_stdlog);
1379 target_debug_print_signals (arg2);
1380 fputs_unfiltered (")\n", gdb_stdlog);
7d4f8efa
TT
1381}
1382
cbffc065
TT
1383static int
1384delegate_thread_alive (struct target_ops *self, ptid_t arg1)
1385{
1386 self = self->beneath;
1387 return self->to_thread_alive (self, arg1);
1388}
1389
1390static int
1391tdefault_thread_alive (struct target_ops *self, ptid_t arg1)
1392{
1393 return 0;
1394}
1395
a7068b60
TT
1396static int
1397debug_thread_alive (struct target_ops *self, ptid_t arg1)
1398{
1399 int result;
1400 fprintf_unfiltered (gdb_stdlog, "-> %s->to_thread_alive (...)\n", debug_target.to_shortname);
1401 result = debug_target.to_thread_alive (&debug_target, arg1);
1402 fprintf_unfiltered (gdb_stdlog, "<- %s->to_thread_alive (", debug_target.to_shortname);
1403 target_debug_print_struct_target_ops_p (&debug_target);
1404 fputs_unfiltered (", ", gdb_stdlog);
1405 target_debug_print_ptid_t (arg1);
1406 fputs_unfiltered (") = ", gdb_stdlog);
1407 target_debug_print_int (result);
1408 fputs_unfiltered ("\n", gdb_stdlog);
1409 return result;
1410}
1411
09b0dc2b 1412static void
e8032dde 1413delegate_update_thread_list (struct target_ops *self)
09b0dc2b
TT
1414{
1415 self = self->beneath;
e8032dde 1416 self->to_update_thread_list (self);
09b0dc2b
TT
1417}
1418
1419static void
e8032dde 1420tdefault_update_thread_list (struct target_ops *self)
09b0dc2b
TT
1421{
1422}
1423
a7068b60 1424static void
e8032dde 1425debug_update_thread_list (struct target_ops *self)
a7068b60 1426{
e8032dde
PA
1427 fprintf_unfiltered (gdb_stdlog, "-> %s->to_update_thread_list (...)\n", debug_target.to_shortname);
1428 debug_target.to_update_thread_list (&debug_target);
1429 fprintf_unfiltered (gdb_stdlog, "<- %s->to_update_thread_list (", debug_target.to_shortname);
a7068b60
TT
1430 target_debug_print_struct_target_ops_p (&debug_target);
1431 fputs_unfiltered (")\n", gdb_stdlog);
1432}
1433
770234d3
TT
1434static char *
1435delegate_pid_to_str (struct target_ops *self, ptid_t arg1)
1436{
1437 self = self->beneath;
1438 return self->to_pid_to_str (self, arg1);
1439}
1440
a7068b60
TT
1441static char *
1442debug_pid_to_str (struct target_ops *self, ptid_t arg1)
1443{
1444 char * result;
1445 fprintf_unfiltered (gdb_stdlog, "-> %s->to_pid_to_str (...)\n", debug_target.to_shortname);
1446 result = debug_target.to_pid_to_str (&debug_target, arg1);
1447 fprintf_unfiltered (gdb_stdlog, "<- %s->to_pid_to_str (", debug_target.to_shortname);
1448 target_debug_print_struct_target_ops_p (&debug_target);
1449 fputs_unfiltered (", ", gdb_stdlog);
1450 target_debug_print_ptid_t (arg1);
1451 fputs_unfiltered (") = ", gdb_stdlog);
1452 target_debug_print_char_p (result);
1453 fputs_unfiltered ("\n", gdb_stdlog);
1454 return result;
1455}
1456
4a7e6dda
TT
1457static char *
1458delegate_extra_thread_info (struct target_ops *self, struct thread_info *arg1)
1459{
1460 self = self->beneath;
1461 return self->to_extra_thread_info (self, arg1);
1462}
1463
1464static char *
1465tdefault_extra_thread_info (struct target_ops *self, struct thread_info *arg1)
1466{
9b144037 1467 return NULL;
4a7e6dda
TT
1468}
1469
a7068b60
TT
1470static char *
1471debug_extra_thread_info (struct target_ops *self, struct thread_info *arg1)
1472{
1473 char * result;
1474 fprintf_unfiltered (gdb_stdlog, "-> %s->to_extra_thread_info (...)\n", debug_target.to_shortname);
1475 result = debug_target.to_extra_thread_info (&debug_target, arg1);
1476 fprintf_unfiltered (gdb_stdlog, "<- %s->to_extra_thread_info (", debug_target.to_shortname);
1477 target_debug_print_struct_target_ops_p (&debug_target);
1478 fputs_unfiltered (", ", gdb_stdlog);
1479 target_debug_print_struct_thread_info_p (arg1);
1480 fputs_unfiltered (") = ", gdb_stdlog);
1481 target_debug_print_char_p (result);
1482 fputs_unfiltered ("\n", gdb_stdlog);
1483 return result;
1484}
1485
825828fc
TT
1486static char *
1487delegate_thread_name (struct target_ops *self, struct thread_info *arg1)
1488{
1489 self = self->beneath;
1490 return self->to_thread_name (self, arg1);
1491}
1492
1493static char *
1494tdefault_thread_name (struct target_ops *self, struct thread_info *arg1)
1495{
9b144037 1496 return NULL;
825828fc
TT
1497}
1498
a7068b60
TT
1499static char *
1500debug_thread_name (struct target_ops *self, struct thread_info *arg1)
1501{
1502 char * result;
1503 fprintf_unfiltered (gdb_stdlog, "-> %s->to_thread_name (...)\n", debug_target.to_shortname);
1504 result = debug_target.to_thread_name (&debug_target, arg1);
1505 fprintf_unfiltered (gdb_stdlog, "<- %s->to_thread_name (", debug_target.to_shortname);
1506 target_debug_print_struct_target_ops_p (&debug_target);
1507 fputs_unfiltered (", ", gdb_stdlog);
1508 target_debug_print_struct_thread_info_p (arg1);
1509 fputs_unfiltered (") = ", gdb_stdlog);
1510 target_debug_print_char_p (result);
1511 fputs_unfiltered ("\n", gdb_stdlog);
1512 return result;
1513}
1514
46ee7e8d
TT
1515static void
1516delegate_stop (struct target_ops *self, ptid_t arg1)
1517{
1518 self = self->beneath;
1519 self->to_stop (self, arg1);
1520}
1521
1522static void
1523tdefault_stop (struct target_ops *self, ptid_t arg1)
1524{
1525}
1526
a7068b60
TT
1527static void
1528debug_stop (struct target_ops *self, ptid_t arg1)
1529{
1530 fprintf_unfiltered (gdb_stdlog, "-> %s->to_stop (...)\n", debug_target.to_shortname);
1531 debug_target.to_stop (&debug_target, arg1);
1532 fprintf_unfiltered (gdb_stdlog, "<- %s->to_stop (", debug_target.to_shortname);
1533 target_debug_print_struct_target_ops_p (&debug_target);
1534 fputs_unfiltered (", ", gdb_stdlog);
1535 target_debug_print_ptid_t (arg1);
1536 fputs_unfiltered (")\n", gdb_stdlog);
1537}
1538
a53f3625 1539static void
a30bf1f1 1540delegate_rcmd (struct target_ops *self, const char *arg1, struct ui_file *arg2)
a53f3625
TT
1541{
1542 self = self->beneath;
1543 self->to_rcmd (self, arg1, arg2);
1544}
1545
a7068b60
TT
1546static void
1547debug_rcmd (struct target_ops *self, const char *arg1, struct ui_file *arg2)
1548{
1549 fprintf_unfiltered (gdb_stdlog, "-> %s->to_rcmd (...)\n", debug_target.to_shortname);
1550 debug_target.to_rcmd (&debug_target, arg1, arg2);
1551 fprintf_unfiltered (gdb_stdlog, "<- %s->to_rcmd (", debug_target.to_shortname);
1552 target_debug_print_struct_target_ops_p (&debug_target);
1553 fputs_unfiltered (", ", gdb_stdlog);
1554 target_debug_print_const_char_p (arg1);
1555 fputs_unfiltered (", ", gdb_stdlog);
1556 target_debug_print_struct_ui_file_p (arg2);
1557 fputs_unfiltered (")\n", gdb_stdlog);
1558}
1559
830ca330
TT
1560static char *
1561delegate_pid_to_exec_file (struct target_ops *self, int arg1)
1562{
1563 self = self->beneath;
1564 return self->to_pid_to_exec_file (self, arg1);
1565}
1566
1567static char *
1568tdefault_pid_to_exec_file (struct target_ops *self, int arg1)
1569{
9b144037 1570 return NULL;
830ca330
TT
1571}
1572
a7068b60
TT
1573static char *
1574debug_pid_to_exec_file (struct target_ops *self, int arg1)
1575{
1576 char * result;
1577 fprintf_unfiltered (gdb_stdlog, "-> %s->to_pid_to_exec_file (...)\n", debug_target.to_shortname);
1578 result = debug_target.to_pid_to_exec_file (&debug_target, arg1);
1579 fprintf_unfiltered (gdb_stdlog, "<- %s->to_pid_to_exec_file (", debug_target.to_shortname);
1580 target_debug_print_struct_target_ops_p (&debug_target);
1581 fputs_unfiltered (", ", gdb_stdlog);
1582 target_debug_print_int (arg1);
1583 fputs_unfiltered (") = ", gdb_stdlog);
1584 target_debug_print_char_p (result);
1585 fputs_unfiltered ("\n", gdb_stdlog);
1586 return result;
1587}
1588
d9cb0195
TT
1589static void
1590delegate_log_command (struct target_ops *self, const char *arg1)
1591{
1592 self = self->beneath;
1593 self->to_log_command (self, arg1);
1594}
1595
1596static void
1597tdefault_log_command (struct target_ops *self, const char *arg1)
1598{
1599}
1600
a7068b60
TT
1601static void
1602debug_log_command (struct target_ops *self, const char *arg1)
1603{
1604 fprintf_unfiltered (gdb_stdlog, "-> %s->to_log_command (...)\n", debug_target.to_shortname);
1605 debug_target.to_log_command (&debug_target, arg1);
1606 fprintf_unfiltered (gdb_stdlog, "<- %s->to_log_command (", debug_target.to_shortname);
1607 target_debug_print_struct_target_ops_p (&debug_target);
1608 fputs_unfiltered (", ", gdb_stdlog);
1609 target_debug_print_const_char_p (arg1);
1610 fputs_unfiltered (")\n", gdb_stdlog);
1611}
1612
7e35c012
TT
1613static struct target_section_table *
1614delegate_get_section_table (struct target_ops *self)
1615{
1616 self = self->beneath;
1617 return self->to_get_section_table (self);
1618}
1619
1620static struct target_section_table *
1621tdefault_get_section_table (struct target_ops *self)
1622{
9b144037 1623 return NULL;
7e35c012
TT
1624}
1625
a7068b60
TT
1626static struct target_section_table *
1627debug_get_section_table (struct target_ops *self)
1628{
1629 struct target_section_table * result;
1630 fprintf_unfiltered (gdb_stdlog, "-> %s->to_get_section_table (...)\n", debug_target.to_shortname);
1631 result = debug_target.to_get_section_table (&debug_target);
1632 fprintf_unfiltered (gdb_stdlog, "<- %s->to_get_section_table (", debug_target.to_shortname);
1633 target_debug_print_struct_target_ops_p (&debug_target);
1634 fputs_unfiltered (") = ", gdb_stdlog);
1635 target_debug_print_struct_target_section_table_p (result);
1636 fputs_unfiltered ("\n", gdb_stdlog);
1637 return result;
1638}
1639
6b84065d
TT
1640static int
1641delegate_can_async_p (struct target_ops *self)
1642{
1643 self = self->beneath;
1644 return self->to_can_async_p (self);
1645}
1646
b3ccfe11
TT
1647static int
1648tdefault_can_async_p (struct target_ops *self)
1649{
1650 return 0;
1651}
1652
a7068b60
TT
1653static int
1654debug_can_async_p (struct target_ops *self)
1655{
1656 int result;
1657 fprintf_unfiltered (gdb_stdlog, "-> %s->to_can_async_p (...)\n", debug_target.to_shortname);
1658 result = debug_target.to_can_async_p (&debug_target);
1659 fprintf_unfiltered (gdb_stdlog, "<- %s->to_can_async_p (", debug_target.to_shortname);
1660 target_debug_print_struct_target_ops_p (&debug_target);
1661 fputs_unfiltered (") = ", gdb_stdlog);
1662 target_debug_print_int (result);
1663 fputs_unfiltered ("\n", gdb_stdlog);
1664 return result;
1665}
1666
6b84065d
TT
1667static int
1668delegate_is_async_p (struct target_ops *self)
1669{
1670 self = self->beneath;
1671 return self->to_is_async_p (self);
1672}
1673
b3ccfe11
TT
1674static int
1675tdefault_is_async_p (struct target_ops *self)
1676{
1677 return 0;
1678}
1679
a7068b60
TT
1680static int
1681debug_is_async_p (struct target_ops *self)
1682{
1683 int result;
1684 fprintf_unfiltered (gdb_stdlog, "-> %s->to_is_async_p (...)\n", debug_target.to_shortname);
1685 result = debug_target.to_is_async_p (&debug_target);
1686 fprintf_unfiltered (gdb_stdlog, "<- %s->to_is_async_p (", debug_target.to_shortname);
1687 target_debug_print_struct_target_ops_p (&debug_target);
1688 fputs_unfiltered (") = ", gdb_stdlog);
1689 target_debug_print_int (result);
1690 fputs_unfiltered ("\n", gdb_stdlog);
1691 return result;
1692}
1693
6b84065d 1694static void
6a3753b3 1695delegate_async (struct target_ops *self, int arg1)
6b84065d
TT
1696{
1697 self = self->beneath;
6a3753b3 1698 self->to_async (self, arg1);
6b84065d
TT
1699}
1700
1701static void
6a3753b3 1702tdefault_async (struct target_ops *self, int arg1)
6b84065d
TT
1703{
1704 tcomplain ();
1705}
1706
a7068b60 1707static void
6a3753b3 1708debug_async (struct target_ops *self, int arg1)
a7068b60
TT
1709{
1710 fprintf_unfiltered (gdb_stdlog, "-> %s->to_async (...)\n", debug_target.to_shortname);
6a3753b3 1711 debug_target.to_async (&debug_target, arg1);
a7068b60
TT
1712 fprintf_unfiltered (gdb_stdlog, "<- %s->to_async (", debug_target.to_shortname);
1713 target_debug_print_struct_target_ops_p (&debug_target);
1714 fputs_unfiltered (", ", gdb_stdlog);
6a3753b3 1715 target_debug_print_int (arg1);
a7068b60
TT
1716 fputs_unfiltered (")\n", gdb_stdlog);
1717}
1718
b3ccfe11
TT
1719static int
1720delegate_supports_non_stop (struct target_ops *self)
1721{
1722 self = self->beneath;
1723 return self->to_supports_non_stop (self);
1724}
1725
1726static int
1727tdefault_supports_non_stop (struct target_ops *self)
1728{
1729 return 0;
1730}
1731
a7068b60
TT
1732static int
1733debug_supports_non_stop (struct target_ops *self)
1734{
1735 int result;
1736 fprintf_unfiltered (gdb_stdlog, "-> %s->to_supports_non_stop (...)\n", debug_target.to_shortname);
1737 result = debug_target.to_supports_non_stop (&debug_target);
1738 fprintf_unfiltered (gdb_stdlog, "<- %s->to_supports_non_stop (", debug_target.to_shortname);
1739 target_debug_print_struct_target_ops_p (&debug_target);
1740 fputs_unfiltered (") = ", gdb_stdlog);
1741 target_debug_print_int (result);
1742 fputs_unfiltered ("\n", gdb_stdlog);
1743 return result;
1744}
1745
fbea99ea
PA
1746static int
1747delegate_always_non_stop_p (struct target_ops *self)
1748{
1749 self = self->beneath;
1750 return self->to_always_non_stop_p (self);
1751}
1752
1753static int
1754tdefault_always_non_stop_p (struct target_ops *self)
1755{
1756 return 0;
1757}
1758
1759static int
1760debug_always_non_stop_p (struct target_ops *self)
1761{
1762 int result;
1763 fprintf_unfiltered (gdb_stdlog, "-> %s->to_always_non_stop_p (...)\n", debug_target.to_shortname);
1764 result = debug_target.to_always_non_stop_p (&debug_target);
1765 fprintf_unfiltered (gdb_stdlog, "<- %s->to_always_non_stop_p (", debug_target.to_shortname);
1766 target_debug_print_struct_target_ops_p (&debug_target);
1767 fputs_unfiltered (") = ", gdb_stdlog);
1768 target_debug_print_int (result);
1769 fputs_unfiltered ("\n", gdb_stdlog);
1770 return result;
1771}
1772
0b5a2719
TT
1773static int
1774delegate_find_memory_regions (struct target_ops *self, find_memory_region_ftype arg1, void *arg2)
1775{
1776 self = self->beneath;
1777 return self->to_find_memory_regions (self, arg1, arg2);
1778}
1779
a7068b60
TT
1780static int
1781debug_find_memory_regions (struct target_ops *self, find_memory_region_ftype arg1, void *arg2)
1782{
1783 int result;
1784 fprintf_unfiltered (gdb_stdlog, "-> %s->to_find_memory_regions (...)\n", debug_target.to_shortname);
1785 result = debug_target.to_find_memory_regions (&debug_target, arg1, arg2);
1786 fprintf_unfiltered (gdb_stdlog, "<- %s->to_find_memory_regions (", debug_target.to_shortname);
1787 target_debug_print_struct_target_ops_p (&debug_target);
1788 fputs_unfiltered (", ", gdb_stdlog);
1789 target_debug_print_find_memory_region_ftype (arg1);
1790 fputs_unfiltered (", ", gdb_stdlog);
1791 target_debug_print_void_p (arg2);
1792 fputs_unfiltered (") = ", gdb_stdlog);
1793 target_debug_print_int (result);
1794 fputs_unfiltered ("\n", gdb_stdlog);
1795 return result;
1796}
1797
a8bdc56b 1798static char *
16f796b1
TT
1799delegate_make_corefile_notes (struct target_ops *self, bfd *arg1, int *arg2)
1800{
1801 self = self->beneath;
1802 return self->to_make_corefile_notes (self, arg1, arg2);
1803}
1804
a7068b60
TT
1805static char *
1806debug_make_corefile_notes (struct target_ops *self, bfd *arg1, int *arg2)
1807{
1808 char * result;
1809 fprintf_unfiltered (gdb_stdlog, "-> %s->to_make_corefile_notes (...)\n", debug_target.to_shortname);
1810 result = debug_target.to_make_corefile_notes (&debug_target, arg1, arg2);
1811 fprintf_unfiltered (gdb_stdlog, "<- %s->to_make_corefile_notes (", debug_target.to_shortname);
1812 target_debug_print_struct_target_ops_p (&debug_target);
1813 fputs_unfiltered (", ", gdb_stdlog);
1814 target_debug_print_bfd_p (arg1);
1815 fputs_unfiltered (", ", gdb_stdlog);
1816 target_debug_print_int_p (arg2);
1817 fputs_unfiltered (") = ", gdb_stdlog);
1818 target_debug_print_char_p (result);
1819 fputs_unfiltered ("\n", gdb_stdlog);
1820 return result;
1821}
1822
a8bdc56b 1823static gdb_byte *
c2bcbb1d 1824delegate_get_bookmark (struct target_ops *self, const char *arg1, int arg2)
3dbafbbb
TT
1825{
1826 self = self->beneath;
1827 return self->to_get_bookmark (self, arg1, arg2);
1828}
1829
a8bdc56b 1830static gdb_byte *
c2bcbb1d 1831tdefault_get_bookmark (struct target_ops *self, const char *arg1, int arg2)
3dbafbbb
TT
1832{
1833 tcomplain ();
1834}
1835
a7068b60
TT
1836static gdb_byte *
1837debug_get_bookmark (struct target_ops *self, const char *arg1, int arg2)
1838{
1839 gdb_byte * result;
1840 fprintf_unfiltered (gdb_stdlog, "-> %s->to_get_bookmark (...)\n", debug_target.to_shortname);
1841 result = debug_target.to_get_bookmark (&debug_target, arg1, arg2);
1842 fprintf_unfiltered (gdb_stdlog, "<- %s->to_get_bookmark (", debug_target.to_shortname);
1843 target_debug_print_struct_target_ops_p (&debug_target);
1844 fputs_unfiltered (", ", gdb_stdlog);
1845 target_debug_print_const_char_p (arg1);
1846 fputs_unfiltered (", ", gdb_stdlog);
1847 target_debug_print_int (arg2);
1848 fputs_unfiltered (") = ", gdb_stdlog);
1849 target_debug_print_gdb_byte_p (result);
1850 fputs_unfiltered ("\n", gdb_stdlog);
1851 return result;
1852}
1853
9bb9d61d 1854static void
c2bcbb1d 1855delegate_goto_bookmark (struct target_ops *self, const gdb_byte *arg1, int arg2)
9bb9d61d
TT
1856{
1857 self = self->beneath;
1858 self->to_goto_bookmark (self, arg1, arg2);
1859}
1860
1861static void
c2bcbb1d 1862tdefault_goto_bookmark (struct target_ops *self, const gdb_byte *arg1, int arg2)
9bb9d61d
TT
1863{
1864 tcomplain ();
1865}
1866
a7068b60
TT
1867static void
1868debug_goto_bookmark (struct target_ops *self, const gdb_byte *arg1, int arg2)
1869{
1870 fprintf_unfiltered (gdb_stdlog, "-> %s->to_goto_bookmark (...)\n", debug_target.to_shortname);
1871 debug_target.to_goto_bookmark (&debug_target, arg1, arg2);
1872 fprintf_unfiltered (gdb_stdlog, "<- %s->to_goto_bookmark (", debug_target.to_shortname);
1873 target_debug_print_struct_target_ops_p (&debug_target);
1874 fputs_unfiltered (", ", gdb_stdlog);
1875 target_debug_print_const_gdb_byte_p (arg1);
1876 fputs_unfiltered (", ", gdb_stdlog);
1877 target_debug_print_int (arg2);
1878 fputs_unfiltered (")\n", gdb_stdlog);
1879}
1880
f0f9ff95
TT
1881static CORE_ADDR
1882delegate_get_thread_local_address (struct target_ops *self, ptid_t arg1, CORE_ADDR arg2, CORE_ADDR arg3)
1883{
1884 self = self->beneath;
1885 return self->to_get_thread_local_address (self, arg1, arg2, arg3);
1886}
1887
1888static CORE_ADDR
1889tdefault_get_thread_local_address (struct target_ops *self, ptid_t arg1, CORE_ADDR arg2, CORE_ADDR arg3)
1890{
1891 generic_tls_error ();
1892}
1893
a7068b60
TT
1894static CORE_ADDR
1895debug_get_thread_local_address (struct target_ops *self, ptid_t arg1, CORE_ADDR arg2, CORE_ADDR arg3)
1896{
1897 CORE_ADDR result;
1898 fprintf_unfiltered (gdb_stdlog, "-> %s->to_get_thread_local_address (...)\n", debug_target.to_shortname);
1899 result = debug_target.to_get_thread_local_address (&debug_target, arg1, arg2, arg3);
1900 fprintf_unfiltered (gdb_stdlog, "<- %s->to_get_thread_local_address (", debug_target.to_shortname);
1901 target_debug_print_struct_target_ops_p (&debug_target);
1902 fputs_unfiltered (", ", gdb_stdlog);
1903 target_debug_print_ptid_t (arg1);
1904 fputs_unfiltered (", ", gdb_stdlog);
1905 target_debug_print_CORE_ADDR (arg2);
1906 fputs_unfiltered (", ", gdb_stdlog);
1907 target_debug_print_CORE_ADDR (arg3);
1908 fputs_unfiltered (") = ", gdb_stdlog);
1909 target_debug_print_CORE_ADDR (result);
1910 fputs_unfiltered ("\n", gdb_stdlog);
1911 return result;
1912}
1913
a8bdc56b
TT
1914static enum target_xfer_status
1915delegate_xfer_partial (struct target_ops *self, enum target_object arg1, const char *arg2, gdb_byte *arg3, const gdb_byte *arg4, ULONGEST arg5, ULONGEST arg6, ULONGEST *arg7)
6b84065d
TT
1916{
1917 self = self->beneath;
1918 return self->to_xfer_partial (self, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
1919}
1920
a8bdc56b
TT
1921static enum target_xfer_status
1922tdefault_xfer_partial (struct target_ops *self, enum target_object arg1, const char *arg2, gdb_byte *arg3, const gdb_byte *arg4, ULONGEST arg5, ULONGEST arg6, ULONGEST *arg7)
6b84065d
TT
1923{
1924 return TARGET_XFER_E_IO;
1925}
1926
a7068b60
TT
1927static enum target_xfer_status
1928debug_xfer_partial (struct target_ops *self, enum target_object arg1, const char *arg2, gdb_byte *arg3, const gdb_byte *arg4, ULONGEST arg5, ULONGEST arg6, ULONGEST *arg7)
1929{
1930 enum target_xfer_status result;
1931 fprintf_unfiltered (gdb_stdlog, "-> %s->to_xfer_partial (...)\n", debug_target.to_shortname);
1932 result = debug_target.to_xfer_partial (&debug_target, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
1933 fprintf_unfiltered (gdb_stdlog, "<- %s->to_xfer_partial (", debug_target.to_shortname);
1934 target_debug_print_struct_target_ops_p (&debug_target);
1935 fputs_unfiltered (", ", gdb_stdlog);
1936 target_debug_print_enum_target_object (arg1);
1937 fputs_unfiltered (", ", gdb_stdlog);
1938 target_debug_print_const_char_p (arg2);
1939 fputs_unfiltered (", ", gdb_stdlog);
1940 target_debug_print_gdb_byte_p (arg3);
1941 fputs_unfiltered (", ", gdb_stdlog);
1942 target_debug_print_const_gdb_byte_p (arg4);
1943 fputs_unfiltered (", ", gdb_stdlog);
1944 target_debug_print_ULONGEST (arg5);
1945 fputs_unfiltered (", ", gdb_stdlog);
1946 target_debug_print_ULONGEST (arg6);
1947 fputs_unfiltered (", ", gdb_stdlog);
1948 target_debug_print_ULONGEST_p (arg7);
1949 fputs_unfiltered (") = ", gdb_stdlog);
1950 target_debug_print_enum_target_xfer_status (result);
1951 fputs_unfiltered ("\n", gdb_stdlog);
1952 return result;
1953}
1954
6b2c5a57
TT
1955static VEC(mem_region_s) *
1956delegate_memory_map (struct target_ops *self)
1957{
1958 self = self->beneath;
1959 return self->to_memory_map (self);
1960}
1961
1962static VEC(mem_region_s) *
1963tdefault_memory_map (struct target_ops *self)
1964{
9b144037 1965 return NULL;
6b2c5a57
TT
1966}
1967
a7068b60
TT
1968static VEC(mem_region_s) *
1969debug_memory_map (struct target_ops *self)
1970{
1971 VEC(mem_region_s) * result;
1972 fprintf_unfiltered (gdb_stdlog, "-> %s->to_memory_map (...)\n", debug_target.to_shortname);
1973 result = debug_target.to_memory_map (&debug_target);
1974 fprintf_unfiltered (gdb_stdlog, "<- %s->to_memory_map (", debug_target.to_shortname);
1975 target_debug_print_struct_target_ops_p (&debug_target);
1976 fputs_unfiltered (") = ", gdb_stdlog);
1977 target_debug_print_VEC_mem_region_s__p (result);
1978 fputs_unfiltered ("\n", gdb_stdlog);
1979 return result;
1980}
1981
e8a6c6ac
TT
1982static void
1983delegate_flash_erase (struct target_ops *self, ULONGEST arg1, LONGEST arg2)
1984{
1985 self = self->beneath;
1986 self->to_flash_erase (self, arg1, arg2);
1987}
1988
1989static void
1990tdefault_flash_erase (struct target_ops *self, ULONGEST arg1, LONGEST arg2)
1991{
1992 tcomplain ();
1993}
1994
a7068b60
TT
1995static void
1996debug_flash_erase (struct target_ops *self, ULONGEST arg1, LONGEST arg2)
1997{
1998 fprintf_unfiltered (gdb_stdlog, "-> %s->to_flash_erase (...)\n", debug_target.to_shortname);
1999 debug_target.to_flash_erase (&debug_target, arg1, arg2);
2000 fprintf_unfiltered (gdb_stdlog, "<- %s->to_flash_erase (", debug_target.to_shortname);
2001 target_debug_print_struct_target_ops_p (&debug_target);
2002 fputs_unfiltered (", ", gdb_stdlog);
2003 target_debug_print_ULONGEST (arg1);
2004 fputs_unfiltered (", ", gdb_stdlog);
2005 target_debug_print_LONGEST (arg2);
2006 fputs_unfiltered (")\n", gdb_stdlog);
2007}
2008
f6fb2925
TT
2009static void
2010delegate_flash_done (struct target_ops *self)
2011{
2012 self = self->beneath;
2013 self->to_flash_done (self);
2014}
2015
2016static void
2017tdefault_flash_done (struct target_ops *self)
2018{
2019 tcomplain ();
2020}
2021
a7068b60
TT
2022static void
2023debug_flash_done (struct target_ops *self)
2024{
2025 fprintf_unfiltered (gdb_stdlog, "-> %s->to_flash_done (...)\n", debug_target.to_shortname);
2026 debug_target.to_flash_done (&debug_target);
2027 fprintf_unfiltered (gdb_stdlog, "<- %s->to_flash_done (", debug_target.to_shortname);
2028 target_debug_print_struct_target_ops_p (&debug_target);
2029 fputs_unfiltered (")\n", gdb_stdlog);
2030}
2031
2117c711
TT
2032static const struct target_desc *
2033delegate_read_description (struct target_ops *self)
2034{
2035 self = self->beneath;
2036 return self->to_read_description (self);
2037}
2038
2039static const struct target_desc *
2040tdefault_read_description (struct target_ops *self)
2041{
9b144037 2042 return NULL;
2117c711
TT
2043}
2044
a7068b60
TT
2045static const struct target_desc *
2046debug_read_description (struct target_ops *self)
2047{
2048 const struct target_desc * result;
2049 fprintf_unfiltered (gdb_stdlog, "-> %s->to_read_description (...)\n", debug_target.to_shortname);
2050 result = debug_target.to_read_description (&debug_target);
2051 fprintf_unfiltered (gdb_stdlog, "<- %s->to_read_description (", debug_target.to_shortname);
2052 target_debug_print_struct_target_ops_p (&debug_target);
2053 fputs_unfiltered (") = ", gdb_stdlog);
2054 target_debug_print_const_struct_target_desc_p (result);
2055 fputs_unfiltered ("\n", gdb_stdlog);
2056 return result;
2057}
2058
4229b31d
TT
2059static ptid_t
2060delegate_get_ada_task_ptid (struct target_ops *self, long arg1, long arg2)
2061{
2062 self = self->beneath;
2063 return self->to_get_ada_task_ptid (self, arg1, arg2);
2064}
2065
a7068b60
TT
2066static ptid_t
2067debug_get_ada_task_ptid (struct target_ops *self, long arg1, long arg2)
2068{
2069 ptid_t result;
2070 fprintf_unfiltered (gdb_stdlog, "-> %s->to_get_ada_task_ptid (...)\n", debug_target.to_shortname);
2071 result = debug_target.to_get_ada_task_ptid (&debug_target, arg1, arg2);
2072 fprintf_unfiltered (gdb_stdlog, "<- %s->to_get_ada_task_ptid (", debug_target.to_shortname);
2073 target_debug_print_struct_target_ops_p (&debug_target);
2074 fputs_unfiltered (", ", gdb_stdlog);
2075 target_debug_print_long (arg1);
2076 fputs_unfiltered (", ", gdb_stdlog);
2077 target_debug_print_long (arg2);
2078 fputs_unfiltered (") = ", gdb_stdlog);
2079 target_debug_print_ptid_t (result);
2080 fputs_unfiltered ("\n", gdb_stdlog);
2081 return result;
2082}
2083
8de71aab
TT
2084static int
2085delegate_auxv_parse (struct target_ops *self, gdb_byte **arg1, gdb_byte *arg2, CORE_ADDR *arg3, CORE_ADDR *arg4)
2086{
2087 self = self->beneath;
2088 return self->to_auxv_parse (self, arg1, arg2, arg3, arg4);
2089}
2090
a7068b60
TT
2091static int
2092debug_auxv_parse (struct target_ops *self, gdb_byte **arg1, gdb_byte *arg2, CORE_ADDR *arg3, CORE_ADDR *arg4)
2093{
2094 int result;
2095 fprintf_unfiltered (gdb_stdlog, "-> %s->to_auxv_parse (...)\n", debug_target.to_shortname);
2096 result = debug_target.to_auxv_parse (&debug_target, arg1, arg2, arg3, arg4);
2097 fprintf_unfiltered (gdb_stdlog, "<- %s->to_auxv_parse (", debug_target.to_shortname);
2098 target_debug_print_struct_target_ops_p (&debug_target);
2099 fputs_unfiltered (", ", gdb_stdlog);
2100 target_debug_print_gdb_byte_pp (arg1);
2101 fputs_unfiltered (", ", gdb_stdlog);
2102 target_debug_print_gdb_byte_p (arg2);
2103 fputs_unfiltered (", ", gdb_stdlog);
2104 target_debug_print_CORE_ADDR_p (arg3);
2105 fputs_unfiltered (", ", gdb_stdlog);
2106 target_debug_print_CORE_ADDR_p (arg4);
2107 fputs_unfiltered (") = ", gdb_stdlog);
2108 target_debug_print_int (result);
2109 fputs_unfiltered ("\n", gdb_stdlog);
2110 return result;
2111}
2112
58a5184e
TT
2113static int
2114delegate_search_memory (struct target_ops *self, CORE_ADDR arg1, ULONGEST arg2, const gdb_byte *arg3, ULONGEST arg4, CORE_ADDR *arg5)
2115{
2116 self = self->beneath;
2117 return self->to_search_memory (self, arg1, arg2, arg3, arg4, arg5);
2118}
2119
a7068b60
TT
2120static int
2121debug_search_memory (struct target_ops *self, CORE_ADDR arg1, ULONGEST arg2, const gdb_byte *arg3, ULONGEST arg4, CORE_ADDR *arg5)
2122{
2123 int result;
2124 fprintf_unfiltered (gdb_stdlog, "-> %s->to_search_memory (...)\n", debug_target.to_shortname);
2125 result = debug_target.to_search_memory (&debug_target, arg1, arg2, arg3, arg4, arg5);
2126 fprintf_unfiltered (gdb_stdlog, "<- %s->to_search_memory (", debug_target.to_shortname);
2127 target_debug_print_struct_target_ops_p (&debug_target);
2128 fputs_unfiltered (", ", gdb_stdlog);
2129 target_debug_print_CORE_ADDR (arg1);
2130 fputs_unfiltered (", ", gdb_stdlog);
2131 target_debug_print_ULONGEST (arg2);
2132 fputs_unfiltered (", ", gdb_stdlog);
2133 target_debug_print_const_gdb_byte_p (arg3);
2134 fputs_unfiltered (", ", gdb_stdlog);
2135 target_debug_print_ULONGEST (arg4);
2136 fputs_unfiltered (", ", gdb_stdlog);
2137 target_debug_print_CORE_ADDR_p (arg5);
2138 fputs_unfiltered (") = ", gdb_stdlog);
2139 target_debug_print_int (result);
2140 fputs_unfiltered ("\n", gdb_stdlog);
2141 return result;
2142}
2143
53e1cfc7
TT
2144static int
2145delegate_can_execute_reverse (struct target_ops *self)
2146{
2147 self = self->beneath;
2148 return self->to_can_execute_reverse (self);
2149}
2150
2151static int
2152tdefault_can_execute_reverse (struct target_ops *self)
2153{
2154 return 0;
2155}
2156
a7068b60
TT
2157static int
2158debug_can_execute_reverse (struct target_ops *self)
2159{
2160 int result;
2161 fprintf_unfiltered (gdb_stdlog, "-> %s->to_can_execute_reverse (...)\n", debug_target.to_shortname);
2162 result = debug_target.to_can_execute_reverse (&debug_target);
2163 fprintf_unfiltered (gdb_stdlog, "<- %s->to_can_execute_reverse (", debug_target.to_shortname);
2164 target_debug_print_struct_target_ops_p (&debug_target);
2165 fputs_unfiltered (") = ", gdb_stdlog);
2166 target_debug_print_int (result);
2167 fputs_unfiltered ("\n", gdb_stdlog);
2168 return result;
2169}
2170
a8bdc56b 2171static enum exec_direction_kind
fe31bf5b
TT
2172delegate_execution_direction (struct target_ops *self)
2173{
2174 self = self->beneath;
2175 return self->to_execution_direction (self);
2176}
2177
a7068b60
TT
2178static enum exec_direction_kind
2179debug_execution_direction (struct target_ops *self)
2180{
2181 enum exec_direction_kind result;
2182 fprintf_unfiltered (gdb_stdlog, "-> %s->to_execution_direction (...)\n", debug_target.to_shortname);
2183 result = debug_target.to_execution_direction (&debug_target);
2184 fprintf_unfiltered (gdb_stdlog, "<- %s->to_execution_direction (", debug_target.to_shortname);
2185 target_debug_print_struct_target_ops_p (&debug_target);
2186 fputs_unfiltered (") = ", gdb_stdlog);
2187 target_debug_print_enum_exec_direction_kind (result);
2188 fputs_unfiltered ("\n", gdb_stdlog);
2189 return result;
2190}
2191
a7304748
TT
2192static int
2193delegate_supports_multi_process (struct target_ops *self)
2194{
2195 self = self->beneath;
2196 return self->to_supports_multi_process (self);
2197}
2198
2199static int
2200tdefault_supports_multi_process (struct target_ops *self)
2201{
2202 return 0;
2203}
2204
a7068b60
TT
2205static int
2206debug_supports_multi_process (struct target_ops *self)
2207{
2208 int result;
2209 fprintf_unfiltered (gdb_stdlog, "-> %s->to_supports_multi_process (...)\n", debug_target.to_shortname);
2210 result = debug_target.to_supports_multi_process (&debug_target);
2211 fprintf_unfiltered (gdb_stdlog, "<- %s->to_supports_multi_process (", debug_target.to_shortname);
2212 target_debug_print_struct_target_ops_p (&debug_target);
2213 fputs_unfiltered (") = ", gdb_stdlog);
2214 target_debug_print_int (result);
2215 fputs_unfiltered ("\n", gdb_stdlog);
2216 return result;
2217}
2218
aab1b22d
TT
2219static int
2220delegate_supports_enable_disable_tracepoint (struct target_ops *self)
2221{
2222 self = self->beneath;
2223 return self->to_supports_enable_disable_tracepoint (self);
2224}
2225
2226static int
2227tdefault_supports_enable_disable_tracepoint (struct target_ops *self)
2228{
2229 return 0;
2230}
2231
a7068b60
TT
2232static int
2233debug_supports_enable_disable_tracepoint (struct target_ops *self)
2234{
2235 int result;
2236 fprintf_unfiltered (gdb_stdlog, "-> %s->to_supports_enable_disable_tracepoint (...)\n", debug_target.to_shortname);
2237 result = debug_target.to_supports_enable_disable_tracepoint (&debug_target);
2238 fprintf_unfiltered (gdb_stdlog, "<- %s->to_supports_enable_disable_tracepoint (", debug_target.to_shortname);
2239 target_debug_print_struct_target_ops_p (&debug_target);
2240 fputs_unfiltered (") = ", gdb_stdlog);
2241 target_debug_print_int (result);
2242 fputs_unfiltered ("\n", gdb_stdlog);
2243 return result;
2244}
2245
9409d39e
TT
2246static int
2247delegate_supports_string_tracing (struct target_ops *self)
2248{
2249 self = self->beneath;
2250 return self->to_supports_string_tracing (self);
2251}
2252
2253static int
2254tdefault_supports_string_tracing (struct target_ops *self)
2255{
2256 return 0;
2257}
2258
a7068b60
TT
2259static int
2260debug_supports_string_tracing (struct target_ops *self)
2261{
2262 int result;
2263 fprintf_unfiltered (gdb_stdlog, "-> %s->to_supports_string_tracing (...)\n", debug_target.to_shortname);
2264 result = debug_target.to_supports_string_tracing (&debug_target);
2265 fprintf_unfiltered (gdb_stdlog, "<- %s->to_supports_string_tracing (", debug_target.to_shortname);
2266 target_debug_print_struct_target_ops_p (&debug_target);
2267 fputs_unfiltered (") = ", gdb_stdlog);
2268 target_debug_print_int (result);
2269 fputs_unfiltered ("\n", gdb_stdlog);
2270 return result;
2271}
2272
ccfde2a0
TT
2273static int
2274delegate_supports_evaluation_of_breakpoint_conditions (struct target_ops *self)
2275{
2276 self = self->beneath;
2277 return self->to_supports_evaluation_of_breakpoint_conditions (self);
2278}
2279
2280static int
2281tdefault_supports_evaluation_of_breakpoint_conditions (struct target_ops *self)
2282{
2283 return 0;
2284}
2285
a7068b60
TT
2286static int
2287debug_supports_evaluation_of_breakpoint_conditions (struct target_ops *self)
2288{
2289 int result;
2290 fprintf_unfiltered (gdb_stdlog, "-> %s->to_supports_evaluation_of_breakpoint_conditions (...)\n", debug_target.to_shortname);
2291 result = debug_target.to_supports_evaluation_of_breakpoint_conditions (&debug_target);
2292 fprintf_unfiltered (gdb_stdlog, "<- %s->to_supports_evaluation_of_breakpoint_conditions (", debug_target.to_shortname);
2293 target_debug_print_struct_target_ops_p (&debug_target);
2294 fputs_unfiltered (") = ", gdb_stdlog);
2295 target_debug_print_int (result);
2296 fputs_unfiltered ("\n", gdb_stdlog);
2297 return result;
2298}
2299
843f59ed
TT
2300static int
2301delegate_can_run_breakpoint_commands (struct target_ops *self)
2302{
2303 self = self->beneath;
2304 return self->to_can_run_breakpoint_commands (self);
2305}
2306
2307static int
2308tdefault_can_run_breakpoint_commands (struct target_ops *self)
2309{
2310 return 0;
2311}
2312
a7068b60
TT
2313static int
2314debug_can_run_breakpoint_commands (struct target_ops *self)
2315{
2316 int result;
2317 fprintf_unfiltered (gdb_stdlog, "-> %s->to_can_run_breakpoint_commands (...)\n", debug_target.to_shortname);
2318 result = debug_target.to_can_run_breakpoint_commands (&debug_target);
2319 fprintf_unfiltered (gdb_stdlog, "<- %s->to_can_run_breakpoint_commands (", debug_target.to_shortname);
2320 target_debug_print_struct_target_ops_p (&debug_target);
2321 fputs_unfiltered (") = ", gdb_stdlog);
2322 target_debug_print_int (result);
2323 fputs_unfiltered ("\n", gdb_stdlog);
2324 return result;
2325}
2326
43eba180
TT
2327static struct gdbarch *
2328delegate_thread_architecture (struct target_ops *self, ptid_t arg1)
2329{
2330 self = self->beneath;
2331 return self->to_thread_architecture (self, arg1);
2332}
2333
a7068b60
TT
2334static struct gdbarch *
2335debug_thread_architecture (struct target_ops *self, ptid_t arg1)
2336{
2337 struct gdbarch * result;
2338 fprintf_unfiltered (gdb_stdlog, "-> %s->to_thread_architecture (...)\n", debug_target.to_shortname);
2339 result = debug_target.to_thread_architecture (&debug_target, arg1);
2340 fprintf_unfiltered (gdb_stdlog, "<- %s->to_thread_architecture (", debug_target.to_shortname);
2341 target_debug_print_struct_target_ops_p (&debug_target);
2342 fputs_unfiltered (", ", gdb_stdlog);
2343 target_debug_print_ptid_t (arg1);
2344 fputs_unfiltered (") = ", gdb_stdlog);
2345 target_debug_print_struct_gdbarch_p (result);
2346 fputs_unfiltered ("\n", gdb_stdlog);
2347 return result;
2348}
2349
8eaff7cd
TT
2350static struct address_space *
2351delegate_thread_address_space (struct target_ops *self, ptid_t arg1)
2352{
2353 self = self->beneath;
2354 return self->to_thread_address_space (self, arg1);
2355}
2356
a7068b60
TT
2357static struct address_space *
2358debug_thread_address_space (struct target_ops *self, ptid_t arg1)
2359{
2360 struct address_space * result;
2361 fprintf_unfiltered (gdb_stdlog, "-> %s->to_thread_address_space (...)\n", debug_target.to_shortname);
2362 result = debug_target.to_thread_address_space (&debug_target, arg1);
2363 fprintf_unfiltered (gdb_stdlog, "<- %s->to_thread_address_space (", debug_target.to_shortname);
2364 target_debug_print_struct_target_ops_p (&debug_target);
2365 fputs_unfiltered (", ", gdb_stdlog);
2366 target_debug_print_ptid_t (arg1);
2367 fputs_unfiltered (") = ", gdb_stdlog);
2368 target_debug_print_struct_address_space_p (result);
2369 fputs_unfiltered ("\n", gdb_stdlog);
2370 return result;
2371}
2372
4bd7dc42
GB
2373static int
2374delegate_filesystem_is_local (struct target_ops *self)
2375{
2376 self = self->beneath;
2377 return self->to_filesystem_is_local (self);
2378}
2379
2380static int
2381tdefault_filesystem_is_local (struct target_ops *self)
2382{
2383 return 1;
2384}
2385
2386static int
2387debug_filesystem_is_local (struct target_ops *self)
2388{
2389 int result;
2390 fprintf_unfiltered (gdb_stdlog, "-> %s->to_filesystem_is_local (...)\n", debug_target.to_shortname);
2391 result = debug_target.to_filesystem_is_local (&debug_target);
2392 fprintf_unfiltered (gdb_stdlog, "<- %s->to_filesystem_is_local (", debug_target.to_shortname);
2393 target_debug_print_struct_target_ops_p (&debug_target);
2394 fputs_unfiltered (") = ", gdb_stdlog);
2395 target_debug_print_int (result);
2396 fputs_unfiltered ("\n", gdb_stdlog);
2397 return result;
2398}
2399
5536135b
TT
2400static void
2401delegate_trace_init (struct target_ops *self)
2402{
2403 self = self->beneath;
2404 self->to_trace_init (self);
2405}
2406
2407static void
2408tdefault_trace_init (struct target_ops *self)
2409{
2410 tcomplain ();
2411}
2412
a7068b60
TT
2413static void
2414debug_trace_init (struct target_ops *self)
2415{
2416 fprintf_unfiltered (gdb_stdlog, "-> %s->to_trace_init (...)\n", debug_target.to_shortname);
2417 debug_target.to_trace_init (&debug_target);
2418 fprintf_unfiltered (gdb_stdlog, "<- %s->to_trace_init (", debug_target.to_shortname);
2419 target_debug_print_struct_target_ops_p (&debug_target);
2420 fputs_unfiltered (")\n", gdb_stdlog);
2421}
2422
9a980a22
TT
2423static void
2424delegate_download_tracepoint (struct target_ops *self, struct bp_location *arg1)
2425{
2426 self = self->beneath;
2427 self->to_download_tracepoint (self, arg1);
2428}
2429
2430static void
2431tdefault_download_tracepoint (struct target_ops *self, struct bp_location *arg1)
2432{
2433 tcomplain ();
2434}
2435
a7068b60
TT
2436static void
2437debug_download_tracepoint (struct target_ops *self, struct bp_location *arg1)
2438{
2439 fprintf_unfiltered (gdb_stdlog, "-> %s->to_download_tracepoint (...)\n", debug_target.to_shortname);
2440 debug_target.to_download_tracepoint (&debug_target, arg1);
2441 fprintf_unfiltered (gdb_stdlog, "<- %s->to_download_tracepoint (", debug_target.to_shortname);
2442 target_debug_print_struct_target_ops_p (&debug_target);
2443 fputs_unfiltered (", ", gdb_stdlog);
2444 target_debug_print_struct_bp_location_p (arg1);
2445 fputs_unfiltered (")\n", gdb_stdlog);
2446}
2447
719acc4a
TT
2448static int
2449delegate_can_download_tracepoint (struct target_ops *self)
2450{
2451 self = self->beneath;
2452 return self->to_can_download_tracepoint (self);
2453}
2454
2455static int
2456tdefault_can_download_tracepoint (struct target_ops *self)
2457{
2458 return 0;
2459}
2460
a7068b60
TT
2461static int
2462debug_can_download_tracepoint (struct target_ops *self)
2463{
2464 int result;
2465 fprintf_unfiltered (gdb_stdlog, "-> %s->to_can_download_tracepoint (...)\n", debug_target.to_shortname);
2466 result = debug_target.to_can_download_tracepoint (&debug_target);
2467 fprintf_unfiltered (gdb_stdlog, "<- %s->to_can_download_tracepoint (", debug_target.to_shortname);
2468 target_debug_print_struct_target_ops_p (&debug_target);
2469 fputs_unfiltered (") = ", gdb_stdlog);
2470 target_debug_print_int (result);
2471 fputs_unfiltered ("\n", gdb_stdlog);
2472 return result;
2473}
2474
94eb98b9
TT
2475static void
2476delegate_download_trace_state_variable (struct target_ops *self, struct trace_state_variable *arg1)
2477{
2478 self = self->beneath;
2479 self->to_download_trace_state_variable (self, arg1);
2480}
2481
2482static void
2483tdefault_download_trace_state_variable (struct target_ops *self, struct trace_state_variable *arg1)
2484{
2485 tcomplain ();
2486}
2487
a7068b60
TT
2488static void
2489debug_download_trace_state_variable (struct target_ops *self, struct trace_state_variable *arg1)
2490{
2491 fprintf_unfiltered (gdb_stdlog, "-> %s->to_download_trace_state_variable (...)\n", debug_target.to_shortname);
2492 debug_target.to_download_trace_state_variable (&debug_target, arg1);
2493 fprintf_unfiltered (gdb_stdlog, "<- %s->to_download_trace_state_variable (", debug_target.to_shortname);
2494 target_debug_print_struct_target_ops_p (&debug_target);
2495 fputs_unfiltered (", ", gdb_stdlog);
2496 target_debug_print_struct_trace_state_variable_p (arg1);
2497 fputs_unfiltered (")\n", gdb_stdlog);
2498}
2499
151f70f1
TT
2500static void
2501delegate_enable_tracepoint (struct target_ops *self, struct bp_location *arg1)
2502{
2503 self = self->beneath;
2504 self->to_enable_tracepoint (self, arg1);
2505}
2506
2507static void
2508tdefault_enable_tracepoint (struct target_ops *self, struct bp_location *arg1)
2509{
2510 tcomplain ();
2511}
2512
a7068b60
TT
2513static void
2514debug_enable_tracepoint (struct target_ops *self, struct bp_location *arg1)
2515{
2516 fprintf_unfiltered (gdb_stdlog, "-> %s->to_enable_tracepoint (...)\n", debug_target.to_shortname);
2517 debug_target.to_enable_tracepoint (&debug_target, arg1);
2518 fprintf_unfiltered (gdb_stdlog, "<- %s->to_enable_tracepoint (", debug_target.to_shortname);
2519 target_debug_print_struct_target_ops_p (&debug_target);
2520 fputs_unfiltered (", ", gdb_stdlog);
2521 target_debug_print_struct_bp_location_p (arg1);
2522 fputs_unfiltered (")\n", gdb_stdlog);
2523}
2524
05c41993
TT
2525static void
2526delegate_disable_tracepoint (struct target_ops *self, struct bp_location *arg1)
2527{
2528 self = self->beneath;
2529 self->to_disable_tracepoint (self, arg1);
2530}
2531
2532static void
2533tdefault_disable_tracepoint (struct target_ops *self, struct bp_location *arg1)
2534{
2535 tcomplain ();
2536}
2537
a7068b60
TT
2538static void
2539debug_disable_tracepoint (struct target_ops *self, struct bp_location *arg1)
2540{
2541 fprintf_unfiltered (gdb_stdlog, "-> %s->to_disable_tracepoint (...)\n", debug_target.to_shortname);
2542 debug_target.to_disable_tracepoint (&debug_target, arg1);
2543 fprintf_unfiltered (gdb_stdlog, "<- %s->to_disable_tracepoint (", debug_target.to_shortname);
2544 target_debug_print_struct_target_ops_p (&debug_target);
2545 fputs_unfiltered (", ", gdb_stdlog);
2546 target_debug_print_struct_bp_location_p (arg1);
2547 fputs_unfiltered (")\n", gdb_stdlog);
2548}
2549
86dd181d
TT
2550static void
2551delegate_trace_set_readonly_regions (struct target_ops *self)
2552{
2553 self = self->beneath;
2554 self->to_trace_set_readonly_regions (self);
2555}
2556
2557static void
2558tdefault_trace_set_readonly_regions (struct target_ops *self)
2559{
2560 tcomplain ();
2561}
2562
a7068b60
TT
2563static void
2564debug_trace_set_readonly_regions (struct target_ops *self)
2565{
2566 fprintf_unfiltered (gdb_stdlog, "-> %s->to_trace_set_readonly_regions (...)\n", debug_target.to_shortname);
2567 debug_target.to_trace_set_readonly_regions (&debug_target);
2568 fprintf_unfiltered (gdb_stdlog, "<- %s->to_trace_set_readonly_regions (", debug_target.to_shortname);
2569 target_debug_print_struct_target_ops_p (&debug_target);
2570 fputs_unfiltered (")\n", gdb_stdlog);
2571}
2572
25da2e80
TT
2573static void
2574delegate_trace_start (struct target_ops *self)
2575{
2576 self = self->beneath;
2577 self->to_trace_start (self);
2578}
2579
2580static void
2581tdefault_trace_start (struct target_ops *self)
2582{
2583 tcomplain ();
2584}
2585
a7068b60
TT
2586static void
2587debug_trace_start (struct target_ops *self)
2588{
2589 fprintf_unfiltered (gdb_stdlog, "-> %s->to_trace_start (...)\n", debug_target.to_shortname);
2590 debug_target.to_trace_start (&debug_target);
2591 fprintf_unfiltered (gdb_stdlog, "<- %s->to_trace_start (", debug_target.to_shortname);
2592 target_debug_print_struct_target_ops_p (&debug_target);
2593 fputs_unfiltered (")\n", gdb_stdlog);
2594}
2595
4072d4ff
TT
2596static int
2597delegate_get_trace_status (struct target_ops *self, struct trace_status *arg1)
2598{
2599 self = self->beneath;
2600 return self->to_get_trace_status (self, arg1);
2601}
2602
2603static int
2604tdefault_get_trace_status (struct target_ops *self, struct trace_status *arg1)
2605{
2606 return -1;
2607}
2608
a7068b60
TT
2609static int
2610debug_get_trace_status (struct target_ops *self, struct trace_status *arg1)
2611{
2612 int result;
2613 fprintf_unfiltered (gdb_stdlog, "-> %s->to_get_trace_status (...)\n", debug_target.to_shortname);
2614 result = debug_target.to_get_trace_status (&debug_target, arg1);
2615 fprintf_unfiltered (gdb_stdlog, "<- %s->to_get_trace_status (", debug_target.to_shortname);
2616 target_debug_print_struct_target_ops_p (&debug_target);
2617 fputs_unfiltered (", ", gdb_stdlog);
2618 target_debug_print_struct_trace_status_p (arg1);
2619 fputs_unfiltered (") = ", gdb_stdlog);
2620 target_debug_print_int (result);
2621 fputs_unfiltered ("\n", gdb_stdlog);
2622 return result;
2623}
2624
6fea14cd
TT
2625static void
2626delegate_get_tracepoint_status (struct target_ops *self, struct breakpoint *arg1, struct uploaded_tp *arg2)
2627{
2628 self = self->beneath;
2629 self->to_get_tracepoint_status (self, arg1, arg2);
2630}
2631
2632static void
2633tdefault_get_tracepoint_status (struct target_ops *self, struct breakpoint *arg1, struct uploaded_tp *arg2)
2634{
2635 tcomplain ();
2636}
2637
a7068b60
TT
2638static void
2639debug_get_tracepoint_status (struct target_ops *self, struct breakpoint *arg1, struct uploaded_tp *arg2)
2640{
2641 fprintf_unfiltered (gdb_stdlog, "-> %s->to_get_tracepoint_status (...)\n", debug_target.to_shortname);
2642 debug_target.to_get_tracepoint_status (&debug_target, arg1, arg2);
2643 fprintf_unfiltered (gdb_stdlog, "<- %s->to_get_tracepoint_status (", debug_target.to_shortname);
2644 target_debug_print_struct_target_ops_p (&debug_target);
2645 fputs_unfiltered (", ", gdb_stdlog);
2646 target_debug_print_struct_breakpoint_p (arg1);
2647 fputs_unfiltered (", ", gdb_stdlog);
2648 target_debug_print_struct_uploaded_tp_p (arg2);
2649 fputs_unfiltered (")\n", gdb_stdlog);
2650}
2651
e51c07ea
TT
2652static void
2653delegate_trace_stop (struct target_ops *self)
2654{
2655 self = self->beneath;
2656 self->to_trace_stop (self);
2657}
2658
2659static void
2660tdefault_trace_stop (struct target_ops *self)
2661{
2662 tcomplain ();
2663}
2664
a7068b60
TT
2665static void
2666debug_trace_stop (struct target_ops *self)
2667{
2668 fprintf_unfiltered (gdb_stdlog, "-> %s->to_trace_stop (...)\n", debug_target.to_shortname);
2669 debug_target.to_trace_stop (&debug_target);
2670 fprintf_unfiltered (gdb_stdlog, "<- %s->to_trace_stop (", debug_target.to_shortname);
2671 target_debug_print_struct_target_ops_p (&debug_target);
2672 fputs_unfiltered (")\n", gdb_stdlog);
2673}
2674
afc94e66 2675static int
a8bdc56b 2676delegate_trace_find (struct target_ops *self, enum trace_find_type arg1, int arg2, CORE_ADDR arg3, CORE_ADDR arg4, int *arg5)
afc94e66
TT
2677{
2678 self = self->beneath;
2679 return self->to_trace_find (self, arg1, arg2, arg3, arg4, arg5);
2680}
2681
2682static int
a8bdc56b 2683tdefault_trace_find (struct target_ops *self, enum trace_find_type arg1, int arg2, CORE_ADDR arg3, CORE_ADDR arg4, int *arg5)
afc94e66
TT
2684{
2685 return -1;
2686}
2687
a7068b60
TT
2688static int
2689debug_trace_find (struct target_ops *self, enum trace_find_type arg1, int arg2, CORE_ADDR arg3, CORE_ADDR arg4, int *arg5)
2690{
2691 int result;
2692 fprintf_unfiltered (gdb_stdlog, "-> %s->to_trace_find (...)\n", debug_target.to_shortname);
2693 result = debug_target.to_trace_find (&debug_target, arg1, arg2, arg3, arg4, arg5);
2694 fprintf_unfiltered (gdb_stdlog, "<- %s->to_trace_find (", debug_target.to_shortname);
2695 target_debug_print_struct_target_ops_p (&debug_target);
2696 fputs_unfiltered (", ", gdb_stdlog);
2697 target_debug_print_enum_trace_find_type (arg1);
2698 fputs_unfiltered (", ", gdb_stdlog);
2699 target_debug_print_int (arg2);
2700 fputs_unfiltered (", ", gdb_stdlog);
2701 target_debug_print_CORE_ADDR (arg3);
2702 fputs_unfiltered (", ", gdb_stdlog);
2703 target_debug_print_CORE_ADDR (arg4);
2704 fputs_unfiltered (", ", gdb_stdlog);
2705 target_debug_print_int_p (arg5);
2706 fputs_unfiltered (") = ", gdb_stdlog);
2707 target_debug_print_int (result);
2708 fputs_unfiltered ("\n", gdb_stdlog);
2709 return result;
2710}
2711
959bcd0b
TT
2712static int
2713delegate_get_trace_state_variable_value (struct target_ops *self, int arg1, LONGEST *arg2)
2714{
2715 self = self->beneath;
2716 return self->to_get_trace_state_variable_value (self, arg1, arg2);
2717}
2718
2719static int
2720tdefault_get_trace_state_variable_value (struct target_ops *self, int arg1, LONGEST *arg2)
2721{
2722 return 0;
2723}
2724
a7068b60
TT
2725static int
2726debug_get_trace_state_variable_value (struct target_ops *self, int arg1, LONGEST *arg2)
2727{
2728 int result;
2729 fprintf_unfiltered (gdb_stdlog, "-> %s->to_get_trace_state_variable_value (...)\n", debug_target.to_shortname);
2730 result = debug_target.to_get_trace_state_variable_value (&debug_target, arg1, arg2);
2731 fprintf_unfiltered (gdb_stdlog, "<- %s->to_get_trace_state_variable_value (", debug_target.to_shortname);
2732 target_debug_print_struct_target_ops_p (&debug_target);
2733 fputs_unfiltered (", ", gdb_stdlog);
2734 target_debug_print_int (arg1);
2735 fputs_unfiltered (", ", gdb_stdlog);
2736 target_debug_print_LONGEST_p (arg2);
2737 fputs_unfiltered (") = ", gdb_stdlog);
2738 target_debug_print_int (result);
2739 fputs_unfiltered ("\n", gdb_stdlog);
2740 return result;
2741}
2742
a2e6c147
TT
2743static int
2744delegate_save_trace_data (struct target_ops *self, const char *arg1)
2745{
2746 self = self->beneath;
2747 return self->to_save_trace_data (self, arg1);
2748}
2749
2750static int
2751tdefault_save_trace_data (struct target_ops *self, const char *arg1)
2752{
2753 tcomplain ();
2754}
2755
a7068b60
TT
2756static int
2757debug_save_trace_data (struct target_ops *self, const char *arg1)
2758{
2759 int result;
2760 fprintf_unfiltered (gdb_stdlog, "-> %s->to_save_trace_data (...)\n", debug_target.to_shortname);
2761 result = debug_target.to_save_trace_data (&debug_target, arg1);
2762 fprintf_unfiltered (gdb_stdlog, "<- %s->to_save_trace_data (", debug_target.to_shortname);
2763 target_debug_print_struct_target_ops_p (&debug_target);
2764 fputs_unfiltered (", ", gdb_stdlog);
2765 target_debug_print_const_char_p (arg1);
2766 fputs_unfiltered (") = ", gdb_stdlog);
2767 target_debug_print_int (result);
2768 fputs_unfiltered ("\n", gdb_stdlog);
2769 return result;
2770}
2771
1e949b00
TT
2772static int
2773delegate_upload_tracepoints (struct target_ops *self, struct uploaded_tp **arg1)
2774{
2775 self = self->beneath;
2776 return self->to_upload_tracepoints (self, arg1);
2777}
2778
2779static int
2780tdefault_upload_tracepoints (struct target_ops *self, struct uploaded_tp **arg1)
2781{
2782 return 0;
2783}
2784
a7068b60
TT
2785static int
2786debug_upload_tracepoints (struct target_ops *self, struct uploaded_tp **arg1)
2787{
2788 int result;
2789 fprintf_unfiltered (gdb_stdlog, "-> %s->to_upload_tracepoints (...)\n", debug_target.to_shortname);
2790 result = debug_target.to_upload_tracepoints (&debug_target, arg1);
2791 fprintf_unfiltered (gdb_stdlog, "<- %s->to_upload_tracepoints (", debug_target.to_shortname);
2792 target_debug_print_struct_target_ops_p (&debug_target);
2793 fputs_unfiltered (", ", gdb_stdlog);
2794 target_debug_print_struct_uploaded_tp_pp (arg1);
2795 fputs_unfiltered (") = ", gdb_stdlog);
2796 target_debug_print_int (result);
2797 fputs_unfiltered ("\n", gdb_stdlog);
2798 return result;
2799}
2800
08120467
TT
2801static int
2802delegate_upload_trace_state_variables (struct target_ops *self, struct uploaded_tsv **arg1)
2803{
2804 self = self->beneath;
2805 return self->to_upload_trace_state_variables (self, arg1);
2806}
2807
2808static int
2809tdefault_upload_trace_state_variables (struct target_ops *self, struct uploaded_tsv **arg1)
2810{
2811 return 0;
2812}
2813
a7068b60
TT
2814static int
2815debug_upload_trace_state_variables (struct target_ops *self, struct uploaded_tsv **arg1)
2816{
2817 int result;
2818 fprintf_unfiltered (gdb_stdlog, "-> %s->to_upload_trace_state_variables (...)\n", debug_target.to_shortname);
2819 result = debug_target.to_upload_trace_state_variables (&debug_target, arg1);
2820 fprintf_unfiltered (gdb_stdlog, "<- %s->to_upload_trace_state_variables (", debug_target.to_shortname);
2821 target_debug_print_struct_target_ops_p (&debug_target);
2822 fputs_unfiltered (", ", gdb_stdlog);
2823 target_debug_print_struct_uploaded_tsv_pp (arg1);
2824 fputs_unfiltered (") = ", gdb_stdlog);
2825 target_debug_print_int (result);
2826 fputs_unfiltered ("\n", gdb_stdlog);
2827 return result;
2828}
2829
ace92e7d
TT
2830static LONGEST
2831delegate_get_raw_trace_data (struct target_ops *self, gdb_byte *arg1, ULONGEST arg2, LONGEST arg3)
2832{
2833 self = self->beneath;
2834 return self->to_get_raw_trace_data (self, arg1, arg2, arg3);
2835}
2836
2837static LONGEST
2838tdefault_get_raw_trace_data (struct target_ops *self, gdb_byte *arg1, ULONGEST arg2, LONGEST arg3)
2839{
2840 tcomplain ();
2841}
2842
a7068b60
TT
2843static LONGEST
2844debug_get_raw_trace_data (struct target_ops *self, gdb_byte *arg1, ULONGEST arg2, LONGEST arg3)
2845{
2846 LONGEST result;
2847 fprintf_unfiltered (gdb_stdlog, "-> %s->to_get_raw_trace_data (...)\n", debug_target.to_shortname);
2848 result = debug_target.to_get_raw_trace_data (&debug_target, arg1, arg2, arg3);
2849 fprintf_unfiltered (gdb_stdlog, "<- %s->to_get_raw_trace_data (", debug_target.to_shortname);
2850 target_debug_print_struct_target_ops_p (&debug_target);
2851 fputs_unfiltered (", ", gdb_stdlog);
2852 target_debug_print_gdb_byte_p (arg1);
2853 fputs_unfiltered (", ", gdb_stdlog);
2854 target_debug_print_ULONGEST (arg2);
2855 fputs_unfiltered (", ", gdb_stdlog);
2856 target_debug_print_LONGEST (arg3);
2857 fputs_unfiltered (") = ", gdb_stdlog);
2858 target_debug_print_LONGEST (result);
2859 fputs_unfiltered ("\n", gdb_stdlog);
2860 return result;
2861}
2862
9249843f
TT
2863static int
2864delegate_get_min_fast_tracepoint_insn_len (struct target_ops *self)
2865{
2866 self = self->beneath;
2867 return self->to_get_min_fast_tracepoint_insn_len (self);
2868}
2869
2870static int
2871tdefault_get_min_fast_tracepoint_insn_len (struct target_ops *self)
2872{
2873 return -1;
2874}
2875
a7068b60
TT
2876static int
2877debug_get_min_fast_tracepoint_insn_len (struct target_ops *self)
2878{
2879 int result;
2880 fprintf_unfiltered (gdb_stdlog, "-> %s->to_get_min_fast_tracepoint_insn_len (...)\n", debug_target.to_shortname);
2881 result = debug_target.to_get_min_fast_tracepoint_insn_len (&debug_target);
2882 fprintf_unfiltered (gdb_stdlog, "<- %s->to_get_min_fast_tracepoint_insn_len (", debug_target.to_shortname);
2883 target_debug_print_struct_target_ops_p (&debug_target);
2884 fputs_unfiltered (") = ", gdb_stdlog);
2885 target_debug_print_int (result);
2886 fputs_unfiltered ("\n", gdb_stdlog);
2887 return result;
2888}
2889
0bcfeddf
TT
2890static void
2891delegate_set_disconnected_tracing (struct target_ops *self, int arg1)
2892{
2893 self = self->beneath;
2894 self->to_set_disconnected_tracing (self, arg1);
2895}
2896
2897static void
2898tdefault_set_disconnected_tracing (struct target_ops *self, int arg1)
2899{
2900}
2901
a7068b60
TT
2902static void
2903debug_set_disconnected_tracing (struct target_ops *self, int arg1)
2904{
2905 fprintf_unfiltered (gdb_stdlog, "-> %s->to_set_disconnected_tracing (...)\n", debug_target.to_shortname);
2906 debug_target.to_set_disconnected_tracing (&debug_target, arg1);
2907 fprintf_unfiltered (gdb_stdlog, "<- %s->to_set_disconnected_tracing (", debug_target.to_shortname);
2908 target_debug_print_struct_target_ops_p (&debug_target);
2909 fputs_unfiltered (", ", gdb_stdlog);
2910 target_debug_print_int (arg1);
2911 fputs_unfiltered (")\n", gdb_stdlog);
2912}
2913
8d526939
TT
2914static void
2915delegate_set_circular_trace_buffer (struct target_ops *self, int arg1)
2916{
2917 self = self->beneath;
2918 self->to_set_circular_trace_buffer (self, arg1);
2919}
2920
2921static void
2922tdefault_set_circular_trace_buffer (struct target_ops *self, int arg1)
2923{
2924}
2925
a7068b60
TT
2926static void
2927debug_set_circular_trace_buffer (struct target_ops *self, int arg1)
2928{
2929 fprintf_unfiltered (gdb_stdlog, "-> %s->to_set_circular_trace_buffer (...)\n", debug_target.to_shortname);
2930 debug_target.to_set_circular_trace_buffer (&debug_target, arg1);
2931 fprintf_unfiltered (gdb_stdlog, "<- %s->to_set_circular_trace_buffer (", debug_target.to_shortname);
2932 target_debug_print_struct_target_ops_p (&debug_target);
2933 fputs_unfiltered (", ", gdb_stdlog);
2934 target_debug_print_int (arg1);
2935 fputs_unfiltered (")\n", gdb_stdlog);
2936}
2937
91df8d1d
TT
2938static void
2939delegate_set_trace_buffer_size (struct target_ops *self, LONGEST arg1)
2940{
2941 self = self->beneath;
2942 self->to_set_trace_buffer_size (self, arg1);
2943}
2944
2945static void
2946tdefault_set_trace_buffer_size (struct target_ops *self, LONGEST arg1)
2947{
2948}
2949
a7068b60
TT
2950static void
2951debug_set_trace_buffer_size (struct target_ops *self, LONGEST arg1)
2952{
2953 fprintf_unfiltered (gdb_stdlog, "-> %s->to_set_trace_buffer_size (...)\n", debug_target.to_shortname);
2954 debug_target.to_set_trace_buffer_size (&debug_target, arg1);
2955 fprintf_unfiltered (gdb_stdlog, "<- %s->to_set_trace_buffer_size (", debug_target.to_shortname);
2956 target_debug_print_struct_target_ops_p (&debug_target);
2957 fputs_unfiltered (", ", gdb_stdlog);
2958 target_debug_print_LONGEST (arg1);
2959 fputs_unfiltered (")\n", gdb_stdlog);
2960}
2961
8586ccaa
TT
2962static int
2963delegate_set_trace_notes (struct target_ops *self, const char *arg1, const char *arg2, const char *arg3)
2964{
2965 self = self->beneath;
2966 return self->to_set_trace_notes (self, arg1, arg2, arg3);
2967}
2968
2969static int
2970tdefault_set_trace_notes (struct target_ops *self, const char *arg1, const char *arg2, const char *arg3)
2971{
2972 return 0;
2973}
2974
a7068b60
TT
2975static int
2976debug_set_trace_notes (struct target_ops *self, const char *arg1, const char *arg2, const char *arg3)
2977{
2978 int result;
2979 fprintf_unfiltered (gdb_stdlog, "-> %s->to_set_trace_notes (...)\n", debug_target.to_shortname);
2980 result = debug_target.to_set_trace_notes (&debug_target, arg1, arg2, arg3);
2981 fprintf_unfiltered (gdb_stdlog, "<- %s->to_set_trace_notes (", debug_target.to_shortname);
2982 target_debug_print_struct_target_ops_p (&debug_target);
2983 fputs_unfiltered (", ", gdb_stdlog);
2984 target_debug_print_const_char_p (arg1);
2985 fputs_unfiltered (", ", gdb_stdlog);
2986 target_debug_print_const_char_p (arg2);
2987 fputs_unfiltered (", ", gdb_stdlog);
2988 target_debug_print_const_char_p (arg3);
2989 fputs_unfiltered (") = ", gdb_stdlog);
2990 target_debug_print_int (result);
2991 fputs_unfiltered ("\n", gdb_stdlog);
2992 return result;
2993}
2994
9e538d0d
TT
2995static int
2996delegate_core_of_thread (struct target_ops *self, ptid_t arg1)
2997{
2998 self = self->beneath;
2999 return self->to_core_of_thread (self, arg1);
3000}
3001
3002static int
3003tdefault_core_of_thread (struct target_ops *self, ptid_t arg1)
3004{
3005 return -1;
3006}
3007
a7068b60
TT
3008static int
3009debug_core_of_thread (struct target_ops *self, ptid_t arg1)
3010{
3011 int result;
3012 fprintf_unfiltered (gdb_stdlog, "-> %s->to_core_of_thread (...)\n", debug_target.to_shortname);
3013 result = debug_target.to_core_of_thread (&debug_target, arg1);
3014 fprintf_unfiltered (gdb_stdlog, "<- %s->to_core_of_thread (", debug_target.to_shortname);
3015 target_debug_print_struct_target_ops_p (&debug_target);
3016 fputs_unfiltered (", ", gdb_stdlog);
3017 target_debug_print_ptid_t (arg1);
3018 fputs_unfiltered (") = ", gdb_stdlog);
3019 target_debug_print_int (result);
3020 fputs_unfiltered ("\n", gdb_stdlog);
3021 return result;
3022}
3023
eb276a6b
TT
3024static int
3025delegate_verify_memory (struct target_ops *self, const gdb_byte *arg1, CORE_ADDR arg2, ULONGEST arg3)
3026{
3027 self = self->beneath;
3028 return self->to_verify_memory (self, arg1, arg2, arg3);
3029}
3030
a7068b60
TT
3031static int
3032debug_verify_memory (struct target_ops *self, const gdb_byte *arg1, CORE_ADDR arg2, ULONGEST arg3)
3033{
3034 int result;
3035 fprintf_unfiltered (gdb_stdlog, "-> %s->to_verify_memory (...)\n", debug_target.to_shortname);
3036 result = debug_target.to_verify_memory (&debug_target, arg1, arg2, arg3);
3037 fprintf_unfiltered (gdb_stdlog, "<- %s->to_verify_memory (", debug_target.to_shortname);
3038 target_debug_print_struct_target_ops_p (&debug_target);
3039 fputs_unfiltered (", ", gdb_stdlog);
3040 target_debug_print_const_gdb_byte_p (arg1);
3041 fputs_unfiltered (", ", gdb_stdlog);
3042 target_debug_print_CORE_ADDR (arg2);
3043 fputs_unfiltered (", ", gdb_stdlog);
3044 target_debug_print_ULONGEST (arg3);
3045 fputs_unfiltered (") = ", gdb_stdlog);
3046 target_debug_print_int (result);
3047 fputs_unfiltered ("\n", gdb_stdlog);
3048 return result;
3049}
3050
22bcceee
TT
3051static int
3052delegate_get_tib_address (struct target_ops *self, ptid_t arg1, CORE_ADDR *arg2)
3053{
3054 self = self->beneath;
3055 return self->to_get_tib_address (self, arg1, arg2);
3056}
3057
3058static int
3059tdefault_get_tib_address (struct target_ops *self, ptid_t arg1, CORE_ADDR *arg2)
3060{
3061 tcomplain ();
3062}
3063
a7068b60
TT
3064static int
3065debug_get_tib_address (struct target_ops *self, ptid_t arg1, CORE_ADDR *arg2)
3066{
3067 int result;
3068 fprintf_unfiltered (gdb_stdlog, "-> %s->to_get_tib_address (...)\n", debug_target.to_shortname);
3069 result = debug_target.to_get_tib_address (&debug_target, arg1, arg2);
3070 fprintf_unfiltered (gdb_stdlog, "<- %s->to_get_tib_address (", debug_target.to_shortname);
3071 target_debug_print_struct_target_ops_p (&debug_target);
3072 fputs_unfiltered (", ", gdb_stdlog);
3073 target_debug_print_ptid_t (arg1);
3074 fputs_unfiltered (", ", gdb_stdlog);
3075 target_debug_print_CORE_ADDR_p (arg2);
3076 fputs_unfiltered (") = ", gdb_stdlog);
3077 target_debug_print_int (result);
3078 fputs_unfiltered ("\n", gdb_stdlog);
3079 return result;
3080}
3081
dcd6917f
TT
3082static void
3083delegate_set_permissions (struct target_ops *self)
3084{
3085 self = self->beneath;
3086 self->to_set_permissions (self);
3087}
3088
3089static void
3090tdefault_set_permissions (struct target_ops *self)
3091{
3092}
3093
a7068b60
TT
3094static void
3095debug_set_permissions (struct target_ops *self)
3096{
3097 fprintf_unfiltered (gdb_stdlog, "-> %s->to_set_permissions (...)\n", debug_target.to_shortname);
3098 debug_target.to_set_permissions (&debug_target);
3099 fprintf_unfiltered (gdb_stdlog, "<- %s->to_set_permissions (", debug_target.to_shortname);
3100 target_debug_print_struct_target_ops_p (&debug_target);
3101 fputs_unfiltered (")\n", gdb_stdlog);
3102}
3103
4c3e4425
TT
3104static int
3105delegate_static_tracepoint_marker_at (struct target_ops *self, CORE_ADDR arg1, struct static_tracepoint_marker *arg2)
3106{
3107 self = self->beneath;
3108 return self->to_static_tracepoint_marker_at (self, arg1, arg2);
3109}
3110
3111static int
3112tdefault_static_tracepoint_marker_at (struct target_ops *self, CORE_ADDR arg1, struct static_tracepoint_marker *arg2)
3113{
3114 return 0;
3115}
3116
a7068b60
TT
3117static int
3118debug_static_tracepoint_marker_at (struct target_ops *self, CORE_ADDR arg1, struct static_tracepoint_marker *arg2)
3119{
3120 int result;
3121 fprintf_unfiltered (gdb_stdlog, "-> %s->to_static_tracepoint_marker_at (...)\n", debug_target.to_shortname);
3122 result = debug_target.to_static_tracepoint_marker_at (&debug_target, arg1, arg2);
3123 fprintf_unfiltered (gdb_stdlog, "<- %s->to_static_tracepoint_marker_at (", debug_target.to_shortname);
3124 target_debug_print_struct_target_ops_p (&debug_target);
3125 fputs_unfiltered (", ", gdb_stdlog);
3126 target_debug_print_CORE_ADDR (arg1);
3127 fputs_unfiltered (", ", gdb_stdlog);
3128 target_debug_print_struct_static_tracepoint_marker_p (arg2);
3129 fputs_unfiltered (") = ", gdb_stdlog);
3130 target_debug_print_int (result);
3131 fputs_unfiltered ("\n", gdb_stdlog);
3132 return result;
3133}
3134
d6522a22
TT
3135static VEC(static_tracepoint_marker_p) *
3136delegate_static_tracepoint_markers_by_strid (struct target_ops *self, const char *arg1)
3137{
3138 self = self->beneath;
3139 return self->to_static_tracepoint_markers_by_strid (self, arg1);
3140}
3141
3142static VEC(static_tracepoint_marker_p) *
3143tdefault_static_tracepoint_markers_by_strid (struct target_ops *self, const char *arg1)
3144{
3145 tcomplain ();
3146}
3147
a7068b60
TT
3148static VEC(static_tracepoint_marker_p) *
3149debug_static_tracepoint_markers_by_strid (struct target_ops *self, const char *arg1)
3150{
3151 VEC(static_tracepoint_marker_p) * result;
3152 fprintf_unfiltered (gdb_stdlog, "-> %s->to_static_tracepoint_markers_by_strid (...)\n", debug_target.to_shortname);
3153 result = debug_target.to_static_tracepoint_markers_by_strid (&debug_target, arg1);
3154 fprintf_unfiltered (gdb_stdlog, "<- %s->to_static_tracepoint_markers_by_strid (", debug_target.to_shortname);
3155 target_debug_print_struct_target_ops_p (&debug_target);
3156 fputs_unfiltered (", ", gdb_stdlog);
3157 target_debug_print_const_char_p (arg1);
3158 fputs_unfiltered (") = ", gdb_stdlog);
3159 target_debug_print_VEC_static_tracepoint_marker_p__p (result);
3160 fputs_unfiltered ("\n", gdb_stdlog);
3161 return result;
3162}
3163
92155eeb
TT
3164static struct traceframe_info *
3165delegate_traceframe_info (struct target_ops *self)
3166{
3167 self = self->beneath;
3168 return self->to_traceframe_info (self);
3169}
3170
3171static struct traceframe_info *
3172tdefault_traceframe_info (struct target_ops *self)
3173{
6a5f844b 3174 tcomplain ();
92155eeb
TT
3175}
3176
a7068b60
TT
3177static struct traceframe_info *
3178debug_traceframe_info (struct target_ops *self)
3179{
3180 struct traceframe_info * result;
3181 fprintf_unfiltered (gdb_stdlog, "-> %s->to_traceframe_info (...)\n", debug_target.to_shortname);
3182 result = debug_target.to_traceframe_info (&debug_target);
3183 fprintf_unfiltered (gdb_stdlog, "<- %s->to_traceframe_info (", debug_target.to_shortname);
3184 target_debug_print_struct_target_ops_p (&debug_target);
3185 fputs_unfiltered (") = ", gdb_stdlog);
3186 target_debug_print_struct_traceframe_info_p (result);
3187 fputs_unfiltered ("\n", gdb_stdlog);
3188 return result;
3189}
3190
d9db5b21
TT
3191static int
3192delegate_use_agent (struct target_ops *self, int arg1)
3193{
3194 self = self->beneath;
3195 return self->to_use_agent (self, arg1);
3196}
3197
3198static int
3199tdefault_use_agent (struct target_ops *self, int arg1)
3200{
3201 tcomplain ();
3202}
3203
a7068b60
TT
3204static int
3205debug_use_agent (struct target_ops *self, int arg1)
3206{
3207 int result;
3208 fprintf_unfiltered (gdb_stdlog, "-> %s->to_use_agent (...)\n", debug_target.to_shortname);
3209 result = debug_target.to_use_agent (&debug_target, arg1);
3210 fprintf_unfiltered (gdb_stdlog, "<- %s->to_use_agent (", debug_target.to_shortname);
3211 target_debug_print_struct_target_ops_p (&debug_target);
3212 fputs_unfiltered (", ", gdb_stdlog);
3213 target_debug_print_int (arg1);
3214 fputs_unfiltered (") = ", gdb_stdlog);
3215 target_debug_print_int (result);
3216 fputs_unfiltered ("\n", gdb_stdlog);
3217 return result;
3218}
3219
9a7d8b48
TT
3220static int
3221delegate_can_use_agent (struct target_ops *self)
3222{
3223 self = self->beneath;
3224 return self->to_can_use_agent (self);
3225}
3226
3227static int
3228tdefault_can_use_agent (struct target_ops *self)
3229{
3230 return 0;
3231}
3232
a7068b60
TT
3233static int
3234debug_can_use_agent (struct target_ops *self)
3235{
3236 int result;
3237 fprintf_unfiltered (gdb_stdlog, "-> %s->to_can_use_agent (...)\n", debug_target.to_shortname);
3238 result = debug_target.to_can_use_agent (&debug_target);
3239 fprintf_unfiltered (gdb_stdlog, "<- %s->to_can_use_agent (", debug_target.to_shortname);
3240 target_debug_print_struct_target_ops_p (&debug_target);
3241 fputs_unfiltered (") = ", gdb_stdlog);
3242 target_debug_print_int (result);
3243 fputs_unfiltered ("\n", gdb_stdlog);
3244 return result;
3245}
3246
46917d26 3247static int
043c3577 3248delegate_supports_btrace (struct target_ops *self, enum btrace_format arg1)
46917d26
TT
3249{
3250 self = self->beneath;
043c3577 3251 return self->to_supports_btrace (self, arg1);
46917d26
TT
3252}
3253
3254static int
043c3577 3255tdefault_supports_btrace (struct target_ops *self, enum btrace_format arg1)
46917d26
TT
3256{
3257 return 0;
3258}
3259
a7068b60 3260static int
043c3577 3261debug_supports_btrace (struct target_ops *self, enum btrace_format arg1)
a7068b60
TT
3262{
3263 int result;
3264 fprintf_unfiltered (gdb_stdlog, "-> %s->to_supports_btrace (...)\n", debug_target.to_shortname);
043c3577 3265 result = debug_target.to_supports_btrace (&debug_target, arg1);
a7068b60
TT
3266 fprintf_unfiltered (gdb_stdlog, "<- %s->to_supports_btrace (", debug_target.to_shortname);
3267 target_debug_print_struct_target_ops_p (&debug_target);
043c3577
MM
3268 fputs_unfiltered (", ", gdb_stdlog);
3269 target_debug_print_enum_btrace_format (arg1);
a7068b60
TT
3270 fputs_unfiltered (") = ", gdb_stdlog);
3271 target_debug_print_int (result);
3272 fputs_unfiltered ("\n", gdb_stdlog);
3273 return result;
3274}
3275
6dc7fcf4 3276static struct btrace_target_info *
f4abbc16 3277delegate_enable_btrace (struct target_ops *self, ptid_t arg1, const struct btrace_config *arg2)
6dc7fcf4
TT
3278{
3279 self = self->beneath;
f4abbc16 3280 return self->to_enable_btrace (self, arg1, arg2);
6dc7fcf4
TT
3281}
3282
3283static struct btrace_target_info *
f4abbc16 3284tdefault_enable_btrace (struct target_ops *self, ptid_t arg1, const struct btrace_config *arg2)
6dc7fcf4
TT
3285{
3286 tcomplain ();
3287}
3288
a7068b60 3289static struct btrace_target_info *
f4abbc16 3290debug_enable_btrace (struct target_ops *self, ptid_t arg1, const struct btrace_config *arg2)
a7068b60
TT
3291{
3292 struct btrace_target_info * result;
3293 fprintf_unfiltered (gdb_stdlog, "-> %s->to_enable_btrace (...)\n", debug_target.to_shortname);
f4abbc16 3294 result = debug_target.to_enable_btrace (&debug_target, arg1, arg2);
a7068b60
TT
3295 fprintf_unfiltered (gdb_stdlog, "<- %s->to_enable_btrace (", debug_target.to_shortname);
3296 target_debug_print_struct_target_ops_p (&debug_target);
3297 fputs_unfiltered (", ", gdb_stdlog);
3298 target_debug_print_ptid_t (arg1);
f4abbc16
MM
3299 fputs_unfiltered (", ", gdb_stdlog);
3300 target_debug_print_const_struct_btrace_config_p (arg2);
a7068b60
TT
3301 fputs_unfiltered (") = ", gdb_stdlog);
3302 target_debug_print_struct_btrace_target_info_p (result);
3303 fputs_unfiltered ("\n", gdb_stdlog);
3304 return result;
3305}
3306
8dc292d3
TT
3307static void
3308delegate_disable_btrace (struct target_ops *self, struct btrace_target_info *arg1)
3309{
3310 self = self->beneath;
3311 self->to_disable_btrace (self, arg1);
3312}
3313
3314static void
3315tdefault_disable_btrace (struct target_ops *self, struct btrace_target_info *arg1)
3316{
3317 tcomplain ();
3318}
3319
a7068b60
TT
3320static void
3321debug_disable_btrace (struct target_ops *self, struct btrace_target_info *arg1)
3322{
3323 fprintf_unfiltered (gdb_stdlog, "-> %s->to_disable_btrace (...)\n", debug_target.to_shortname);
3324 debug_target.to_disable_btrace (&debug_target, arg1);
3325 fprintf_unfiltered (gdb_stdlog, "<- %s->to_disable_btrace (", debug_target.to_shortname);
3326 target_debug_print_struct_target_ops_p (&debug_target);
3327 fputs_unfiltered (", ", gdb_stdlog);
3328 target_debug_print_struct_btrace_target_info_p (arg1);
3329 fputs_unfiltered (")\n", gdb_stdlog);
3330}
3331
9ace480d
TT
3332static void
3333delegate_teardown_btrace (struct target_ops *self, struct btrace_target_info *arg1)
3334{
3335 self = self->beneath;
3336 self->to_teardown_btrace (self, arg1);
3337}
3338
3339static void
3340tdefault_teardown_btrace (struct target_ops *self, struct btrace_target_info *arg1)
3341{
3342 tcomplain ();
3343}
3344
a7068b60
TT
3345static void
3346debug_teardown_btrace (struct target_ops *self, struct btrace_target_info *arg1)
3347{
3348 fprintf_unfiltered (gdb_stdlog, "-> %s->to_teardown_btrace (...)\n", debug_target.to_shortname);
3349 debug_target.to_teardown_btrace (&debug_target, arg1);
3350 fprintf_unfiltered (gdb_stdlog, "<- %s->to_teardown_btrace (", debug_target.to_shortname);
3351 target_debug_print_struct_target_ops_p (&debug_target);
3352 fputs_unfiltered (", ", gdb_stdlog);
3353 target_debug_print_struct_btrace_target_info_p (arg1);
3354 fputs_unfiltered (")\n", gdb_stdlog);
3355}
3356
a8bdc56b 3357static enum btrace_error
734b0e4b 3358delegate_read_btrace (struct target_ops *self, struct btrace_data *arg1, struct btrace_target_info *arg2, enum btrace_read_type arg3)
eb5b20d4
TT
3359{
3360 self = self->beneath;
3361 return self->to_read_btrace (self, arg1, arg2, arg3);
3362}
3363
a8bdc56b 3364static enum btrace_error
734b0e4b 3365tdefault_read_btrace (struct target_ops *self, struct btrace_data *arg1, struct btrace_target_info *arg2, enum btrace_read_type arg3)
eb5b20d4
TT
3366{
3367 tcomplain ();
3368}
3369
a7068b60 3370static enum btrace_error
734b0e4b 3371debug_read_btrace (struct target_ops *self, struct btrace_data *arg1, struct btrace_target_info *arg2, enum btrace_read_type arg3)
a7068b60
TT
3372{
3373 enum btrace_error result;
3374 fprintf_unfiltered (gdb_stdlog, "-> %s->to_read_btrace (...)\n", debug_target.to_shortname);
3375 result = debug_target.to_read_btrace (&debug_target, arg1, arg2, arg3);
3376 fprintf_unfiltered (gdb_stdlog, "<- %s->to_read_btrace (", debug_target.to_shortname);
3377 target_debug_print_struct_target_ops_p (&debug_target);
3378 fputs_unfiltered (", ", gdb_stdlog);
734b0e4b 3379 target_debug_print_struct_btrace_data_p (arg1);
a7068b60
TT
3380 fputs_unfiltered (", ", gdb_stdlog);
3381 target_debug_print_struct_btrace_target_info_p (arg2);
3382 fputs_unfiltered (", ", gdb_stdlog);
3383 target_debug_print_enum_btrace_read_type (arg3);
3384 fputs_unfiltered (") = ", gdb_stdlog);
3385 target_debug_print_enum_btrace_error (result);
3386 fputs_unfiltered ("\n", gdb_stdlog);
3387 return result;
3388}
3389
f4abbc16
MM
3390static const struct btrace_config *
3391delegate_btrace_conf (struct target_ops *self, const struct btrace_target_info *arg1)
3392{
3393 self = self->beneath;
3394 return self->to_btrace_conf (self, arg1);
3395}
3396
3397static const struct btrace_config *
3398tdefault_btrace_conf (struct target_ops *self, const struct btrace_target_info *arg1)
3399{
3400 return NULL;
3401}
3402
3403static const struct btrace_config *
3404debug_btrace_conf (struct target_ops *self, const struct btrace_target_info *arg1)
3405{
3406 const struct btrace_config * result;
3407 fprintf_unfiltered (gdb_stdlog, "-> %s->to_btrace_conf (...)\n", debug_target.to_shortname);
3408 result = debug_target.to_btrace_conf (&debug_target, arg1);
3409 fprintf_unfiltered (gdb_stdlog, "<- %s->to_btrace_conf (", debug_target.to_shortname);
3410 target_debug_print_struct_target_ops_p (&debug_target);
3411 fputs_unfiltered (", ", gdb_stdlog);
3412 target_debug_print_const_struct_btrace_target_info_p (arg1);
3413 fputs_unfiltered (") = ", gdb_stdlog);
3414 target_debug_print_const_struct_btrace_config_p (result);
3415 fputs_unfiltered ("\n", gdb_stdlog);
3416 return result;
3417}
3418
ee97f592
TT
3419static void
3420delegate_stop_recording (struct target_ops *self)
3421{
3422 self = self->beneath;
3423 self->to_stop_recording (self);
3424}
3425
3426static void
3427tdefault_stop_recording (struct target_ops *self)
3428{
3429}
3430
a7068b60
TT
3431static void
3432debug_stop_recording (struct target_ops *self)
3433{
3434 fprintf_unfiltered (gdb_stdlog, "-> %s->to_stop_recording (...)\n", debug_target.to_shortname);
3435 debug_target.to_stop_recording (&debug_target);
3436 fprintf_unfiltered (gdb_stdlog, "<- %s->to_stop_recording (", debug_target.to_shortname);
3437 target_debug_print_struct_target_ops_p (&debug_target);
3438 fputs_unfiltered (")\n", gdb_stdlog);
3439}
3440
a432721e
TT
3441static void
3442delegate_info_record (struct target_ops *self)
3443{
3444 self = self->beneath;
3445 self->to_info_record (self);
3446}
3447
3448static void
3449tdefault_info_record (struct target_ops *self)
3450{
3451}
3452
a7068b60
TT
3453static void
3454debug_info_record (struct target_ops *self)
3455{
3456 fprintf_unfiltered (gdb_stdlog, "-> %s->to_info_record (...)\n", debug_target.to_shortname);
3457 debug_target.to_info_record (&debug_target);
3458 fprintf_unfiltered (gdb_stdlog, "<- %s->to_info_record (", debug_target.to_shortname);
3459 target_debug_print_struct_target_ops_p (&debug_target);
3460 fputs_unfiltered (")\n", gdb_stdlog);
3461}
3462
f09e2107
TT
3463static void
3464delegate_save_record (struct target_ops *self, const char *arg1)
3465{
3466 self = self->beneath;
3467 self->to_save_record (self, arg1);
3468}
3469
3470static void
3471tdefault_save_record (struct target_ops *self, const char *arg1)
3472{
3473 tcomplain ();
3474}
3475
a7068b60
TT
3476static void
3477debug_save_record (struct target_ops *self, const char *arg1)
3478{
3479 fprintf_unfiltered (gdb_stdlog, "-> %s->to_save_record (...)\n", debug_target.to_shortname);
3480 debug_target.to_save_record (&debug_target, arg1);
3481 fprintf_unfiltered (gdb_stdlog, "<- %s->to_save_record (", debug_target.to_shortname);
3482 target_debug_print_struct_target_ops_p (&debug_target);
3483 fputs_unfiltered (", ", gdb_stdlog);
3484 target_debug_print_const_char_p (arg1);
3485 fputs_unfiltered (")\n", gdb_stdlog);
3486}
3487
07366925
TT
3488static void
3489delegate_delete_record (struct target_ops *self)
3490{
3491 self = self->beneath;
3492 self->to_delete_record (self);
3493}
3494
3495static void
3496tdefault_delete_record (struct target_ops *self)
3497{
3498 tcomplain ();
3499}
3500
a7068b60
TT
3501static void
3502debug_delete_record (struct target_ops *self)
3503{
3504 fprintf_unfiltered (gdb_stdlog, "-> %s->to_delete_record (...)\n", debug_target.to_shortname);
3505 debug_target.to_delete_record (&debug_target);
3506 fprintf_unfiltered (gdb_stdlog, "<- %s->to_delete_record (", debug_target.to_shortname);
3507 target_debug_print_struct_target_ops_p (&debug_target);
3508 fputs_unfiltered (")\n", gdb_stdlog);
3509}
3510
dd2e9d25
TT
3511static int
3512delegate_record_is_replaying (struct target_ops *self)
3513{
3514 self = self->beneath;
3515 return self->to_record_is_replaying (self);
3516}
3517
3518static int
3519tdefault_record_is_replaying (struct target_ops *self)
3520{
3521 return 0;
3522}
3523
a7068b60
TT
3524static int
3525debug_record_is_replaying (struct target_ops *self)
3526{
3527 int result;
3528 fprintf_unfiltered (gdb_stdlog, "-> %s->to_record_is_replaying (...)\n", debug_target.to_shortname);
3529 result = debug_target.to_record_is_replaying (&debug_target);
3530 fprintf_unfiltered (gdb_stdlog, "<- %s->to_record_is_replaying (", debug_target.to_shortname);
3531 target_debug_print_struct_target_ops_p (&debug_target);
3532 fputs_unfiltered (") = ", gdb_stdlog);
3533 target_debug_print_int (result);
3534 fputs_unfiltered ("\n", gdb_stdlog);
3535 return result;
3536}
3537
671e76cc
TT
3538static void
3539delegate_goto_record_begin (struct target_ops *self)
3540{
3541 self = self->beneath;
3542 self->to_goto_record_begin (self);
3543}
3544
3545static void
3546tdefault_goto_record_begin (struct target_ops *self)
3547{
3548 tcomplain ();
3549}
3550
a7068b60
TT
3551static void
3552debug_goto_record_begin (struct target_ops *self)
3553{
3554 fprintf_unfiltered (gdb_stdlog, "-> %s->to_goto_record_begin (...)\n", debug_target.to_shortname);
3555 debug_target.to_goto_record_begin (&debug_target);
3556 fprintf_unfiltered (gdb_stdlog, "<- %s->to_goto_record_begin (", debug_target.to_shortname);
3557 target_debug_print_struct_target_ops_p (&debug_target);
3558 fputs_unfiltered (")\n", gdb_stdlog);
3559}
3560
e9179bb3
TT
3561static void
3562delegate_goto_record_end (struct target_ops *self)
3563{
3564 self = self->beneath;
3565 self->to_goto_record_end (self);
3566}
3567
3568static void
3569tdefault_goto_record_end (struct target_ops *self)
3570{
3571 tcomplain ();
3572}
3573
a7068b60
TT
3574static void
3575debug_goto_record_end (struct target_ops *self)
3576{
3577 fprintf_unfiltered (gdb_stdlog, "-> %s->to_goto_record_end (...)\n", debug_target.to_shortname);
3578 debug_target.to_goto_record_end (&debug_target);
3579 fprintf_unfiltered (gdb_stdlog, "<- %s->to_goto_record_end (", debug_target.to_shortname);
3580 target_debug_print_struct_target_ops_p (&debug_target);
3581 fputs_unfiltered (")\n", gdb_stdlog);
3582}
3583
05969c84
TT
3584static void
3585delegate_goto_record (struct target_ops *self, ULONGEST arg1)
3586{
3587 self = self->beneath;
3588 self->to_goto_record (self, arg1);
3589}
3590
3591static void
3592tdefault_goto_record (struct target_ops *self, ULONGEST arg1)
3593{
3594 tcomplain ();
3595}
3596
a7068b60
TT
3597static void
3598debug_goto_record (struct target_ops *self, ULONGEST arg1)
3599{
3600 fprintf_unfiltered (gdb_stdlog, "-> %s->to_goto_record (...)\n", debug_target.to_shortname);
3601 debug_target.to_goto_record (&debug_target, arg1);
3602 fprintf_unfiltered (gdb_stdlog, "<- %s->to_goto_record (", debug_target.to_shortname);
3603 target_debug_print_struct_target_ops_p (&debug_target);
3604 fputs_unfiltered (", ", gdb_stdlog);
3605 target_debug_print_ULONGEST (arg1);
3606 fputs_unfiltered (")\n", gdb_stdlog);
3607}
3608
3679abfa
TT
3609static void
3610delegate_insn_history (struct target_ops *self, int arg1, int arg2)
3611{
3612 self = self->beneath;
3613 self->to_insn_history (self, arg1, arg2);
3614}
3615
3616static void
3617tdefault_insn_history (struct target_ops *self, int arg1, int arg2)
3618{
3619 tcomplain ();
3620}
3621
a7068b60
TT
3622static void
3623debug_insn_history (struct target_ops *self, int arg1, int arg2)
3624{
3625 fprintf_unfiltered (gdb_stdlog, "-> %s->to_insn_history (...)\n", debug_target.to_shortname);
3626 debug_target.to_insn_history (&debug_target, arg1, arg2);
3627 fprintf_unfiltered (gdb_stdlog, "<- %s->to_insn_history (", debug_target.to_shortname);
3628 target_debug_print_struct_target_ops_p (&debug_target);
3629 fputs_unfiltered (", ", gdb_stdlog);
3630 target_debug_print_int (arg1);
3631 fputs_unfiltered (", ", gdb_stdlog);
3632 target_debug_print_int (arg2);
3633 fputs_unfiltered (")\n", gdb_stdlog);
3634}
3635
8444ab58
TT
3636static void
3637delegate_insn_history_from (struct target_ops *self, ULONGEST arg1, int arg2, int arg3)
3638{
3639 self = self->beneath;
3640 self->to_insn_history_from (self, arg1, arg2, arg3);
3641}
3642
3643static void
3644tdefault_insn_history_from (struct target_ops *self, ULONGEST arg1, int arg2, int arg3)
3645{
3646 tcomplain ();
3647}
3648
a7068b60
TT
3649static void
3650debug_insn_history_from (struct target_ops *self, ULONGEST arg1, int arg2, int arg3)
3651{
3652 fprintf_unfiltered (gdb_stdlog, "-> %s->to_insn_history_from (...)\n", debug_target.to_shortname);
3653 debug_target.to_insn_history_from (&debug_target, arg1, arg2, arg3);
3654 fprintf_unfiltered (gdb_stdlog, "<- %s->to_insn_history_from (", debug_target.to_shortname);
3655 target_debug_print_struct_target_ops_p (&debug_target);
3656 fputs_unfiltered (", ", gdb_stdlog);
3657 target_debug_print_ULONGEST (arg1);
3658 fputs_unfiltered (", ", gdb_stdlog);
3659 target_debug_print_int (arg2);
3660 fputs_unfiltered (", ", gdb_stdlog);
3661 target_debug_print_int (arg3);
3662 fputs_unfiltered (")\n", gdb_stdlog);
3663}
3664
c29302cc
TT
3665static void
3666delegate_insn_history_range (struct target_ops *self, ULONGEST arg1, ULONGEST arg2, int arg3)
3667{
3668 self = self->beneath;
3669 self->to_insn_history_range (self, arg1, arg2, arg3);
3670}
3671
3672static void
3673tdefault_insn_history_range (struct target_ops *self, ULONGEST arg1, ULONGEST arg2, int arg3)
3674{
3675 tcomplain ();
3676}
3677
a7068b60
TT
3678static void
3679debug_insn_history_range (struct target_ops *self, ULONGEST arg1, ULONGEST arg2, int arg3)
3680{
3681 fprintf_unfiltered (gdb_stdlog, "-> %s->to_insn_history_range (...)\n", debug_target.to_shortname);
3682 debug_target.to_insn_history_range (&debug_target, arg1, arg2, arg3);
3683 fprintf_unfiltered (gdb_stdlog, "<- %s->to_insn_history_range (", debug_target.to_shortname);
3684 target_debug_print_struct_target_ops_p (&debug_target);
3685 fputs_unfiltered (", ", gdb_stdlog);
3686 target_debug_print_ULONGEST (arg1);
3687 fputs_unfiltered (", ", gdb_stdlog);
3688 target_debug_print_ULONGEST (arg2);
3689 fputs_unfiltered (", ", gdb_stdlog);
3690 target_debug_print_int (arg3);
3691 fputs_unfiltered (")\n", gdb_stdlog);
3692}
3693
170049d4
TT
3694static void
3695delegate_call_history (struct target_ops *self, int arg1, int arg2)
3696{
3697 self = self->beneath;
3698 self->to_call_history (self, arg1, arg2);
3699}
3700
3701static void
3702tdefault_call_history (struct target_ops *self, int arg1, int arg2)
3703{
3704 tcomplain ();
3705}
3706
a7068b60
TT
3707static void
3708debug_call_history (struct target_ops *self, int arg1, int arg2)
3709{
3710 fprintf_unfiltered (gdb_stdlog, "-> %s->to_call_history (...)\n", debug_target.to_shortname);
3711 debug_target.to_call_history (&debug_target, arg1, arg2);
3712 fprintf_unfiltered (gdb_stdlog, "<- %s->to_call_history (", debug_target.to_shortname);
3713 target_debug_print_struct_target_ops_p (&debug_target);
3714 fputs_unfiltered (", ", gdb_stdlog);
3715 target_debug_print_int (arg1);
3716 fputs_unfiltered (", ", gdb_stdlog);
3717 target_debug_print_int (arg2);
3718 fputs_unfiltered (")\n", gdb_stdlog);
3719}
3720
16fc27d6
TT
3721static void
3722delegate_call_history_from (struct target_ops *self, ULONGEST arg1, int arg2, int arg3)
3723{
3724 self = self->beneath;
3725 self->to_call_history_from (self, arg1, arg2, arg3);
3726}
3727
3728static void
3729tdefault_call_history_from (struct target_ops *self, ULONGEST arg1, int arg2, int arg3)
3730{
3731 tcomplain ();
3732}
3733
a7068b60
TT
3734static void
3735debug_call_history_from (struct target_ops *self, ULONGEST arg1, int arg2, int arg3)
3736{
3737 fprintf_unfiltered (gdb_stdlog, "-> %s->to_call_history_from (...)\n", debug_target.to_shortname);
3738 debug_target.to_call_history_from (&debug_target, arg1, arg2, arg3);
3739 fprintf_unfiltered (gdb_stdlog, "<- %s->to_call_history_from (", debug_target.to_shortname);
3740 target_debug_print_struct_target_ops_p (&debug_target);
3741 fputs_unfiltered (", ", gdb_stdlog);
3742 target_debug_print_ULONGEST (arg1);
3743 fputs_unfiltered (", ", gdb_stdlog);
3744 target_debug_print_int (arg2);
3745 fputs_unfiltered (", ", gdb_stdlog);
3746 target_debug_print_int (arg3);
3747 fputs_unfiltered (")\n", gdb_stdlog);
3748}
3749
115d9817
TT
3750static void
3751delegate_call_history_range (struct target_ops *self, ULONGEST arg1, ULONGEST arg2, int arg3)
3752{
3753 self = self->beneath;
3754 self->to_call_history_range (self, arg1, arg2, arg3);
3755}
3756
3757static void
3758tdefault_call_history_range (struct target_ops *self, ULONGEST arg1, ULONGEST arg2, int arg3)
3759{
3760 tcomplain ();
3761}
3762
a7068b60
TT
3763static void
3764debug_call_history_range (struct target_ops *self, ULONGEST arg1, ULONGEST arg2, int arg3)
3765{
3766 fprintf_unfiltered (gdb_stdlog, "-> %s->to_call_history_range (...)\n", debug_target.to_shortname);
3767 debug_target.to_call_history_range (&debug_target, arg1, arg2, arg3);
3768 fprintf_unfiltered (gdb_stdlog, "<- %s->to_call_history_range (", debug_target.to_shortname);
3769 target_debug_print_struct_target_ops_p (&debug_target);
3770 fputs_unfiltered (", ", gdb_stdlog);
3771 target_debug_print_ULONGEST (arg1);
3772 fputs_unfiltered (", ", gdb_stdlog);
3773 target_debug_print_ULONGEST (arg2);
3774 fputs_unfiltered (", ", gdb_stdlog);
3775 target_debug_print_int (arg3);
3776 fputs_unfiltered (")\n", gdb_stdlog);
3777}
3778
0de91722
TT
3779static int
3780delegate_augmented_libraries_svr4_read (struct target_ops *self)
3781{
3782 self = self->beneath;
3783 return self->to_augmented_libraries_svr4_read (self);
3784}
3785
3786static int
3787tdefault_augmented_libraries_svr4_read (struct target_ops *self)
3788{
3789 return 0;
3790}
3791
a7068b60
TT
3792static int
3793debug_augmented_libraries_svr4_read (struct target_ops *self)
3794{
3795 int result;
3796 fprintf_unfiltered (gdb_stdlog, "-> %s->to_augmented_libraries_svr4_read (...)\n", debug_target.to_shortname);
3797 result = debug_target.to_augmented_libraries_svr4_read (&debug_target);
3798 fprintf_unfiltered (gdb_stdlog, "<- %s->to_augmented_libraries_svr4_read (", debug_target.to_shortname);
3799 target_debug_print_struct_target_ops_p (&debug_target);
3800 fputs_unfiltered (") = ", gdb_stdlog);
3801 target_debug_print_int (result);
3802 fputs_unfiltered ("\n", gdb_stdlog);
3803 return result;
3804}
3805
ac01945b
TT
3806static const struct frame_unwind *
3807delegate_get_unwinder (struct target_ops *self)
3808{
3809 self = self->beneath;
3810 return self->to_get_unwinder (self);
3811}
3812
3813static const struct frame_unwind *
3814tdefault_get_unwinder (struct target_ops *self)
3815{
3816 return NULL;
3817}
3818
a7068b60
TT
3819static const struct frame_unwind *
3820debug_get_unwinder (struct target_ops *self)
3821{
3822 const struct frame_unwind * result;
3823 fprintf_unfiltered (gdb_stdlog, "-> %s->to_get_unwinder (...)\n", debug_target.to_shortname);
3824 result = debug_target.to_get_unwinder (&debug_target);
3825 fprintf_unfiltered (gdb_stdlog, "<- %s->to_get_unwinder (", debug_target.to_shortname);
3826 target_debug_print_struct_target_ops_p (&debug_target);
3827 fputs_unfiltered (") = ", gdb_stdlog);
3828 target_debug_print_const_struct_frame_unwind_p (result);
3829 fputs_unfiltered ("\n", gdb_stdlog);
3830 return result;
3831}
3832
ac01945b
TT
3833static const struct frame_unwind *
3834delegate_get_tailcall_unwinder (struct target_ops *self)
3835{
3836 self = self->beneath;
3837 return self->to_get_tailcall_unwinder (self);
3838}
3839
3840static const struct frame_unwind *
3841tdefault_get_tailcall_unwinder (struct target_ops *self)
3842{
3843 return NULL;
3844}
3845
a7068b60
TT
3846static const struct frame_unwind *
3847debug_get_tailcall_unwinder (struct target_ops *self)
3848{
3849 const struct frame_unwind * result;
3850 fprintf_unfiltered (gdb_stdlog, "-> %s->to_get_tailcall_unwinder (...)\n", debug_target.to_shortname);
3851 result = debug_target.to_get_tailcall_unwinder (&debug_target);
3852 fprintf_unfiltered (gdb_stdlog, "<- %s->to_get_tailcall_unwinder (", debug_target.to_shortname);
3853 target_debug_print_struct_target_ops_p (&debug_target);
3854 fputs_unfiltered (") = ", gdb_stdlog);
3855 target_debug_print_const_struct_frame_unwind_p (result);
3856 fputs_unfiltered ("\n", gdb_stdlog);
3857 return result;
3858}
3859
5fff78c4
MM
3860static void
3861delegate_prepare_to_generate_core (struct target_ops *self)
3862{
3863 self = self->beneath;
3864 self->to_prepare_to_generate_core (self);
3865}
3866
3867static void
3868tdefault_prepare_to_generate_core (struct target_ops *self)
3869{
3870}
3871
a7068b60
TT
3872static void
3873debug_prepare_to_generate_core (struct target_ops *self)
3874{
3875 fprintf_unfiltered (gdb_stdlog, "-> %s->to_prepare_to_generate_core (...)\n", debug_target.to_shortname);
3876 debug_target.to_prepare_to_generate_core (&debug_target);
3877 fprintf_unfiltered (gdb_stdlog, "<- %s->to_prepare_to_generate_core (", debug_target.to_shortname);
3878 target_debug_print_struct_target_ops_p (&debug_target);
3879 fputs_unfiltered (")\n", gdb_stdlog);
3880}
3881
5fff78c4
MM
3882static void
3883delegate_done_generating_core (struct target_ops *self)
3884{
3885 self = self->beneath;
3886 self->to_done_generating_core (self);
3887}
3888
3889static void
3890tdefault_done_generating_core (struct target_ops *self)
3891{
3892}
3893
a7068b60
TT
3894static void
3895debug_done_generating_core (struct target_ops *self)
3896{
3897 fprintf_unfiltered (gdb_stdlog, "-> %s->to_done_generating_core (...)\n", debug_target.to_shortname);
3898 debug_target.to_done_generating_core (&debug_target);
3899 fprintf_unfiltered (gdb_stdlog, "<- %s->to_done_generating_core (", debug_target.to_shortname);
3900 target_debug_print_struct_target_ops_p (&debug_target);
3901 fputs_unfiltered (")\n", gdb_stdlog);
3902}
3903
1101cb7b
TT
3904static void
3905install_delegators (struct target_ops *ops)
3906{
bebd3233
TT
3907 if (ops->to_post_attach == NULL)
3908 ops->to_post_attach = delegate_post_attach;
09da0d0a
TT
3909 if (ops->to_detach == NULL)
3910 ops->to_detach = delegate_detach;
86a0854a
TT
3911 if (ops->to_disconnect == NULL)
3912 ops->to_disconnect = delegate_disconnect;
6b84065d
TT
3913 if (ops->to_resume == NULL)
3914 ops->to_resume = delegate_resume;
3915 if (ops->to_wait == NULL)
3916 ops->to_wait = delegate_wait;
ad5989bd
TT
3917 if (ops->to_fetch_registers == NULL)
3918 ops->to_fetch_registers = delegate_fetch_registers;
6b84065d
TT
3919 if (ops->to_store_registers == NULL)
3920 ops->to_store_registers = delegate_store_registers;
6c628163
TT
3921 if (ops->to_prepare_to_store == NULL)
3922 ops->to_prepare_to_store = delegate_prepare_to_store;
f86e59b2
TT
3923 if (ops->to_files_info == NULL)
3924 ops->to_files_info = delegate_files_info;
6b84065d
TT
3925 if (ops->to_insert_breakpoint == NULL)
3926 ops->to_insert_breakpoint = delegate_insert_breakpoint;
3927 if (ops->to_remove_breakpoint == NULL)
3928 ops->to_remove_breakpoint = delegate_remove_breakpoint;
1cf4d951
PA
3929 if (ops->to_stopped_by_sw_breakpoint == NULL)
3930 ops->to_stopped_by_sw_breakpoint = delegate_stopped_by_sw_breakpoint;
3931 if (ops->to_supports_stopped_by_sw_breakpoint == NULL)
3932 ops->to_supports_stopped_by_sw_breakpoint = delegate_supports_stopped_by_sw_breakpoint;
3933 if (ops->to_stopped_by_hw_breakpoint == NULL)
3934 ops->to_stopped_by_hw_breakpoint = delegate_stopped_by_hw_breakpoint;
3935 if (ops->to_supports_stopped_by_hw_breakpoint == NULL)
3936 ops->to_supports_stopped_by_hw_breakpoint = delegate_supports_stopped_by_hw_breakpoint;
52b51d06
TT
3937 if (ops->to_can_use_hw_breakpoint == NULL)
3938 ops->to_can_use_hw_breakpoint = delegate_can_use_hw_breakpoint;
a134316b
TT
3939 if (ops->to_ranged_break_num_registers == NULL)
3940 ops->to_ranged_break_num_registers = delegate_ranged_break_num_registers;
61b371f9
TT
3941 if (ops->to_insert_hw_breakpoint == NULL)
3942 ops->to_insert_hw_breakpoint = delegate_insert_hw_breakpoint;
418dabac
TT
3943 if (ops->to_remove_hw_breakpoint == NULL)
3944 ops->to_remove_hw_breakpoint = delegate_remove_hw_breakpoint;
61dd109f
TT
3945 if (ops->to_remove_watchpoint == NULL)
3946 ops->to_remove_watchpoint = delegate_remove_watchpoint;
016facd4
TT
3947 if (ops->to_insert_watchpoint == NULL)
3948 ops->to_insert_watchpoint = delegate_insert_watchpoint;
cd4ae029
TT
3949 if (ops->to_insert_mask_watchpoint == NULL)
3950 ops->to_insert_mask_watchpoint = delegate_insert_mask_watchpoint;
8b1c364c
TT
3951 if (ops->to_remove_mask_watchpoint == NULL)
3952 ops->to_remove_mask_watchpoint = delegate_remove_mask_watchpoint;
6b84065d
TT
3953 if (ops->to_stopped_by_watchpoint == NULL)
3954 ops->to_stopped_by_watchpoint = delegate_stopped_by_watchpoint;
3955 if (ops->to_stopped_data_address == NULL)
3956 ops->to_stopped_data_address = delegate_stopped_data_address;
65f160a9
TT
3957 if (ops->to_watchpoint_addr_within_range == NULL)
3958 ops->to_watchpoint_addr_within_range = delegate_watchpoint_addr_within_range;
d03655e4
TT
3959 if (ops->to_region_ok_for_hw_watchpoint == NULL)
3960 ops->to_region_ok_for_hw_watchpoint = delegate_region_ok_for_hw_watchpoint;
77cdffe9
TT
3961 if (ops->to_can_accel_watchpoint_condition == NULL)
3962 ops->to_can_accel_watchpoint_condition = delegate_can_accel_watchpoint_condition;
6c7e5e5c
TT
3963 if (ops->to_masked_watch_num_registers == NULL)
3964 ops->to_masked_watch_num_registers = delegate_masked_watch_num_registers;
0343661d
TT
3965 if (ops->to_terminal_init == NULL)
3966 ops->to_terminal_init = delegate_terminal_init;
ddeaacc9
TT
3967 if (ops->to_terminal_inferior == NULL)
3968 ops->to_terminal_inferior = delegate_terminal_inferior;
74fcbef9
TT
3969 if (ops->to_terminal_ours_for_output == NULL)
3970 ops->to_terminal_ours_for_output = delegate_terminal_ours_for_output;
e4a733f1
TT
3971 if (ops->to_terminal_ours == NULL)
3972 ops->to_terminal_ours = delegate_terminal_ours;
e19e919f
TT
3973 if (ops->to_terminal_info == NULL)
3974 ops->to_terminal_info = delegate_terminal_info;
423a4807
TT
3975 if (ops->to_kill == NULL)
3976 ops->to_kill = delegate_kill;
7634da87
TT
3977 if (ops->to_load == NULL)
3978 ops->to_load = delegate_load;
340ba4bf
TT
3979 if (ops->to_post_startup_inferior == NULL)
3980 ops->to_post_startup_inferior = delegate_post_startup_inferior;
5958ebeb
TT
3981 if (ops->to_insert_fork_catchpoint == NULL)
3982 ops->to_insert_fork_catchpoint = delegate_insert_fork_catchpoint;
e1a21fb7
TT
3983 if (ops->to_remove_fork_catchpoint == NULL)
3984 ops->to_remove_fork_catchpoint = delegate_remove_fork_catchpoint;
7e18a8dc
TT
3985 if (ops->to_insert_vfork_catchpoint == NULL)
3986 ops->to_insert_vfork_catchpoint = delegate_insert_vfork_catchpoint;
95c3375e
TT
3987 if (ops->to_remove_vfork_catchpoint == NULL)
3988 ops->to_remove_vfork_catchpoint = delegate_remove_vfork_catchpoint;
098dba18
TT
3989 if (ops->to_follow_fork == NULL)
3990 ops->to_follow_fork = delegate_follow_fork;
62f64d7a
TT
3991 if (ops->to_insert_exec_catchpoint == NULL)
3992 ops->to_insert_exec_catchpoint = delegate_insert_exec_catchpoint;
cda0f38c
TT
3993 if (ops->to_remove_exec_catchpoint == NULL)
3994 ops->to_remove_exec_catchpoint = delegate_remove_exec_catchpoint;
6a9fa051
TT
3995 if (ops->to_set_syscall_catchpoint == NULL)
3996 ops->to_set_syscall_catchpoint = delegate_set_syscall_catchpoint;
0db88c1d
TT
3997 if (ops->to_has_exited == NULL)
3998 ops->to_has_exited = delegate_has_exited;
8d657035
TT
3999 if (ops->to_mourn_inferior == NULL)
4000 ops->to_mourn_inferior = delegate_mourn_inferior;
e88ef65c
TT
4001 if (ops->to_can_run == NULL)
4002 ops->to_can_run = delegate_can_run;
035cad7f
TT
4003 if (ops->to_pass_signals == NULL)
4004 ops->to_pass_signals = delegate_pass_signals;
7d4f8efa
TT
4005 if (ops->to_program_signals == NULL)
4006 ops->to_program_signals = delegate_program_signals;
cbffc065
TT
4007 if (ops->to_thread_alive == NULL)
4008 ops->to_thread_alive = delegate_thread_alive;
e8032dde
PA
4009 if (ops->to_update_thread_list == NULL)
4010 ops->to_update_thread_list = delegate_update_thread_list;
770234d3
TT
4011 if (ops->to_pid_to_str == NULL)
4012 ops->to_pid_to_str = delegate_pid_to_str;
4a7e6dda
TT
4013 if (ops->to_extra_thread_info == NULL)
4014 ops->to_extra_thread_info = delegate_extra_thread_info;
825828fc
TT
4015 if (ops->to_thread_name == NULL)
4016 ops->to_thread_name = delegate_thread_name;
46ee7e8d
TT
4017 if (ops->to_stop == NULL)
4018 ops->to_stop = delegate_stop;
a53f3625
TT
4019 if (ops->to_rcmd == NULL)
4020 ops->to_rcmd = delegate_rcmd;
830ca330
TT
4021 if (ops->to_pid_to_exec_file == NULL)
4022 ops->to_pid_to_exec_file = delegate_pid_to_exec_file;
d9cb0195
TT
4023 if (ops->to_log_command == NULL)
4024 ops->to_log_command = delegate_log_command;
7e35c012
TT
4025 if (ops->to_get_section_table == NULL)
4026 ops->to_get_section_table = delegate_get_section_table;
6b84065d
TT
4027 if (ops->to_can_async_p == NULL)
4028 ops->to_can_async_p = delegate_can_async_p;
4029 if (ops->to_is_async_p == NULL)
4030 ops->to_is_async_p = delegate_is_async_p;
4031 if (ops->to_async == NULL)
4032 ops->to_async = delegate_async;
b3ccfe11
TT
4033 if (ops->to_supports_non_stop == NULL)
4034 ops->to_supports_non_stop = delegate_supports_non_stop;
fbea99ea
PA
4035 if (ops->to_always_non_stop_p == NULL)
4036 ops->to_always_non_stop_p = delegate_always_non_stop_p;
0b5a2719
TT
4037 if (ops->to_find_memory_regions == NULL)
4038 ops->to_find_memory_regions = delegate_find_memory_regions;
16f796b1
TT
4039 if (ops->to_make_corefile_notes == NULL)
4040 ops->to_make_corefile_notes = delegate_make_corefile_notes;
3dbafbbb
TT
4041 if (ops->to_get_bookmark == NULL)
4042 ops->to_get_bookmark = delegate_get_bookmark;
9bb9d61d
TT
4043 if (ops->to_goto_bookmark == NULL)
4044 ops->to_goto_bookmark = delegate_goto_bookmark;
f0f9ff95
TT
4045 if (ops->to_get_thread_local_address == NULL)
4046 ops->to_get_thread_local_address = delegate_get_thread_local_address;
6b84065d
TT
4047 if (ops->to_xfer_partial == NULL)
4048 ops->to_xfer_partial = delegate_xfer_partial;
6b2c5a57
TT
4049 if (ops->to_memory_map == NULL)
4050 ops->to_memory_map = delegate_memory_map;
e8a6c6ac
TT
4051 if (ops->to_flash_erase == NULL)
4052 ops->to_flash_erase = delegate_flash_erase;
f6fb2925
TT
4053 if (ops->to_flash_done == NULL)
4054 ops->to_flash_done = delegate_flash_done;
2117c711
TT
4055 if (ops->to_read_description == NULL)
4056 ops->to_read_description = delegate_read_description;
4229b31d
TT
4057 if (ops->to_get_ada_task_ptid == NULL)
4058 ops->to_get_ada_task_ptid = delegate_get_ada_task_ptid;
8de71aab
TT
4059 if (ops->to_auxv_parse == NULL)
4060 ops->to_auxv_parse = delegate_auxv_parse;
58a5184e
TT
4061 if (ops->to_search_memory == NULL)
4062 ops->to_search_memory = delegate_search_memory;
53e1cfc7
TT
4063 if (ops->to_can_execute_reverse == NULL)
4064 ops->to_can_execute_reverse = delegate_can_execute_reverse;
fe31bf5b
TT
4065 if (ops->to_execution_direction == NULL)
4066 ops->to_execution_direction = delegate_execution_direction;
a7304748
TT
4067 if (ops->to_supports_multi_process == NULL)
4068 ops->to_supports_multi_process = delegate_supports_multi_process;
aab1b22d
TT
4069 if (ops->to_supports_enable_disable_tracepoint == NULL)
4070 ops->to_supports_enable_disable_tracepoint = delegate_supports_enable_disable_tracepoint;
9409d39e
TT
4071 if (ops->to_supports_string_tracing == NULL)
4072 ops->to_supports_string_tracing = delegate_supports_string_tracing;
ccfde2a0
TT
4073 if (ops->to_supports_evaluation_of_breakpoint_conditions == NULL)
4074 ops->to_supports_evaluation_of_breakpoint_conditions = delegate_supports_evaluation_of_breakpoint_conditions;
843f59ed
TT
4075 if (ops->to_can_run_breakpoint_commands == NULL)
4076 ops->to_can_run_breakpoint_commands = delegate_can_run_breakpoint_commands;
43eba180
TT
4077 if (ops->to_thread_architecture == NULL)
4078 ops->to_thread_architecture = delegate_thread_architecture;
8eaff7cd
TT
4079 if (ops->to_thread_address_space == NULL)
4080 ops->to_thread_address_space = delegate_thread_address_space;
4bd7dc42
GB
4081 if (ops->to_filesystem_is_local == NULL)
4082 ops->to_filesystem_is_local = delegate_filesystem_is_local;
5536135b
TT
4083 if (ops->to_trace_init == NULL)
4084 ops->to_trace_init = delegate_trace_init;
9a980a22
TT
4085 if (ops->to_download_tracepoint == NULL)
4086 ops->to_download_tracepoint = delegate_download_tracepoint;
719acc4a
TT
4087 if (ops->to_can_download_tracepoint == NULL)
4088 ops->to_can_download_tracepoint = delegate_can_download_tracepoint;
94eb98b9
TT
4089 if (ops->to_download_trace_state_variable == NULL)
4090 ops->to_download_trace_state_variable = delegate_download_trace_state_variable;
151f70f1
TT
4091 if (ops->to_enable_tracepoint == NULL)
4092 ops->to_enable_tracepoint = delegate_enable_tracepoint;
05c41993
TT
4093 if (ops->to_disable_tracepoint == NULL)
4094 ops->to_disable_tracepoint = delegate_disable_tracepoint;
86dd181d
TT
4095 if (ops->to_trace_set_readonly_regions == NULL)
4096 ops->to_trace_set_readonly_regions = delegate_trace_set_readonly_regions;
25da2e80
TT
4097 if (ops->to_trace_start == NULL)
4098 ops->to_trace_start = delegate_trace_start;
4072d4ff
TT
4099 if (ops->to_get_trace_status == NULL)
4100 ops->to_get_trace_status = delegate_get_trace_status;
6fea14cd
TT
4101 if (ops->to_get_tracepoint_status == NULL)
4102 ops->to_get_tracepoint_status = delegate_get_tracepoint_status;
e51c07ea
TT
4103 if (ops->to_trace_stop == NULL)
4104 ops->to_trace_stop = delegate_trace_stop;
afc94e66
TT
4105 if (ops->to_trace_find == NULL)
4106 ops->to_trace_find = delegate_trace_find;
959bcd0b
TT
4107 if (ops->to_get_trace_state_variable_value == NULL)
4108 ops->to_get_trace_state_variable_value = delegate_get_trace_state_variable_value;
a2e6c147
TT
4109 if (ops->to_save_trace_data == NULL)
4110 ops->to_save_trace_data = delegate_save_trace_data;
1e949b00
TT
4111 if (ops->to_upload_tracepoints == NULL)
4112 ops->to_upload_tracepoints = delegate_upload_tracepoints;
08120467
TT
4113 if (ops->to_upload_trace_state_variables == NULL)
4114 ops->to_upload_trace_state_variables = delegate_upload_trace_state_variables;
ace92e7d
TT
4115 if (ops->to_get_raw_trace_data == NULL)
4116 ops->to_get_raw_trace_data = delegate_get_raw_trace_data;
9249843f
TT
4117 if (ops->to_get_min_fast_tracepoint_insn_len == NULL)
4118 ops->to_get_min_fast_tracepoint_insn_len = delegate_get_min_fast_tracepoint_insn_len;
0bcfeddf
TT
4119 if (ops->to_set_disconnected_tracing == NULL)
4120 ops->to_set_disconnected_tracing = delegate_set_disconnected_tracing;
8d526939
TT
4121 if (ops->to_set_circular_trace_buffer == NULL)
4122 ops->to_set_circular_trace_buffer = delegate_set_circular_trace_buffer;
91df8d1d
TT
4123 if (ops->to_set_trace_buffer_size == NULL)
4124 ops->to_set_trace_buffer_size = delegate_set_trace_buffer_size;
8586ccaa
TT
4125 if (ops->to_set_trace_notes == NULL)
4126 ops->to_set_trace_notes = delegate_set_trace_notes;
9e538d0d
TT
4127 if (ops->to_core_of_thread == NULL)
4128 ops->to_core_of_thread = delegate_core_of_thread;
eb276a6b
TT
4129 if (ops->to_verify_memory == NULL)
4130 ops->to_verify_memory = delegate_verify_memory;
22bcceee
TT
4131 if (ops->to_get_tib_address == NULL)
4132 ops->to_get_tib_address = delegate_get_tib_address;
dcd6917f
TT
4133 if (ops->to_set_permissions == NULL)
4134 ops->to_set_permissions = delegate_set_permissions;
4c3e4425
TT
4135 if (ops->to_static_tracepoint_marker_at == NULL)
4136 ops->to_static_tracepoint_marker_at = delegate_static_tracepoint_marker_at;
d6522a22
TT
4137 if (ops->to_static_tracepoint_markers_by_strid == NULL)
4138 ops->to_static_tracepoint_markers_by_strid = delegate_static_tracepoint_markers_by_strid;
92155eeb
TT
4139 if (ops->to_traceframe_info == NULL)
4140 ops->to_traceframe_info = delegate_traceframe_info;
d9db5b21
TT
4141 if (ops->to_use_agent == NULL)
4142 ops->to_use_agent = delegate_use_agent;
9a7d8b48
TT
4143 if (ops->to_can_use_agent == NULL)
4144 ops->to_can_use_agent = delegate_can_use_agent;
46917d26
TT
4145 if (ops->to_supports_btrace == NULL)
4146 ops->to_supports_btrace = delegate_supports_btrace;
6dc7fcf4
TT
4147 if (ops->to_enable_btrace == NULL)
4148 ops->to_enable_btrace = delegate_enable_btrace;
8dc292d3
TT
4149 if (ops->to_disable_btrace == NULL)
4150 ops->to_disable_btrace = delegate_disable_btrace;
9ace480d
TT
4151 if (ops->to_teardown_btrace == NULL)
4152 ops->to_teardown_btrace = delegate_teardown_btrace;
eb5b20d4
TT
4153 if (ops->to_read_btrace == NULL)
4154 ops->to_read_btrace = delegate_read_btrace;
f4abbc16
MM
4155 if (ops->to_btrace_conf == NULL)
4156 ops->to_btrace_conf = delegate_btrace_conf;
ee97f592
TT
4157 if (ops->to_stop_recording == NULL)
4158 ops->to_stop_recording = delegate_stop_recording;
a432721e
TT
4159 if (ops->to_info_record == NULL)
4160 ops->to_info_record = delegate_info_record;
f09e2107
TT
4161 if (ops->to_save_record == NULL)
4162 ops->to_save_record = delegate_save_record;
07366925
TT
4163 if (ops->to_delete_record == NULL)
4164 ops->to_delete_record = delegate_delete_record;
dd2e9d25
TT
4165 if (ops->to_record_is_replaying == NULL)
4166 ops->to_record_is_replaying = delegate_record_is_replaying;
671e76cc
TT
4167 if (ops->to_goto_record_begin == NULL)
4168 ops->to_goto_record_begin = delegate_goto_record_begin;
e9179bb3
TT
4169 if (ops->to_goto_record_end == NULL)
4170 ops->to_goto_record_end = delegate_goto_record_end;
05969c84
TT
4171 if (ops->to_goto_record == NULL)
4172 ops->to_goto_record = delegate_goto_record;
3679abfa
TT
4173 if (ops->to_insn_history == NULL)
4174 ops->to_insn_history = delegate_insn_history;
8444ab58
TT
4175 if (ops->to_insn_history_from == NULL)
4176 ops->to_insn_history_from = delegate_insn_history_from;
c29302cc
TT
4177 if (ops->to_insn_history_range == NULL)
4178 ops->to_insn_history_range = delegate_insn_history_range;
170049d4
TT
4179 if (ops->to_call_history == NULL)
4180 ops->to_call_history = delegate_call_history;
16fc27d6
TT
4181 if (ops->to_call_history_from == NULL)
4182 ops->to_call_history_from = delegate_call_history_from;
115d9817
TT
4183 if (ops->to_call_history_range == NULL)
4184 ops->to_call_history_range = delegate_call_history_range;
0de91722
TT
4185 if (ops->to_augmented_libraries_svr4_read == NULL)
4186 ops->to_augmented_libraries_svr4_read = delegate_augmented_libraries_svr4_read;
ac01945b
TT
4187 if (ops->to_get_unwinder == NULL)
4188 ops->to_get_unwinder = delegate_get_unwinder;
4189 if (ops->to_get_tailcall_unwinder == NULL)
4190 ops->to_get_tailcall_unwinder = delegate_get_tailcall_unwinder;
5fff78c4
MM
4191 if (ops->to_prepare_to_generate_core == NULL)
4192 ops->to_prepare_to_generate_core = delegate_prepare_to_generate_core;
4193 if (ops->to_done_generating_core == NULL)
4194 ops->to_done_generating_core = delegate_done_generating_core;
1101cb7b
TT
4195}
4196
4197static void
4198install_dummy_methods (struct target_ops *ops)
4199{
bebd3233 4200 ops->to_post_attach = tdefault_post_attach;
09da0d0a 4201 ops->to_detach = tdefault_detach;
86a0854a 4202 ops->to_disconnect = tdefault_disconnect;
6b84065d
TT
4203 ops->to_resume = tdefault_resume;
4204 ops->to_wait = tdefault_wait;
ad5989bd 4205 ops->to_fetch_registers = tdefault_fetch_registers;
6b84065d 4206 ops->to_store_registers = tdefault_store_registers;
6c628163 4207 ops->to_prepare_to_store = tdefault_prepare_to_store;
f86e59b2 4208 ops->to_files_info = tdefault_files_info;
6b84065d
TT
4209 ops->to_insert_breakpoint = memory_insert_breakpoint;
4210 ops->to_remove_breakpoint = memory_remove_breakpoint;
1cf4d951
PA
4211 ops->to_stopped_by_sw_breakpoint = tdefault_stopped_by_sw_breakpoint;
4212 ops->to_supports_stopped_by_sw_breakpoint = tdefault_supports_stopped_by_sw_breakpoint;
4213 ops->to_stopped_by_hw_breakpoint = tdefault_stopped_by_hw_breakpoint;
4214 ops->to_supports_stopped_by_hw_breakpoint = tdefault_supports_stopped_by_hw_breakpoint;
52b51d06 4215 ops->to_can_use_hw_breakpoint = tdefault_can_use_hw_breakpoint;
a134316b 4216 ops->to_ranged_break_num_registers = tdefault_ranged_break_num_registers;
61b371f9 4217 ops->to_insert_hw_breakpoint = tdefault_insert_hw_breakpoint;
418dabac 4218 ops->to_remove_hw_breakpoint = tdefault_remove_hw_breakpoint;
61dd109f 4219 ops->to_remove_watchpoint = tdefault_remove_watchpoint;
016facd4 4220 ops->to_insert_watchpoint = tdefault_insert_watchpoint;
cd4ae029 4221 ops->to_insert_mask_watchpoint = tdefault_insert_mask_watchpoint;
8b1c364c 4222 ops->to_remove_mask_watchpoint = tdefault_remove_mask_watchpoint;
6b84065d
TT
4223 ops->to_stopped_by_watchpoint = tdefault_stopped_by_watchpoint;
4224 ops->to_stopped_data_address = tdefault_stopped_data_address;
65f160a9 4225 ops->to_watchpoint_addr_within_range = default_watchpoint_addr_within_range;
d03655e4 4226 ops->to_region_ok_for_hw_watchpoint = default_region_ok_for_hw_watchpoint;
77cdffe9 4227 ops->to_can_accel_watchpoint_condition = tdefault_can_accel_watchpoint_condition;
6c7e5e5c 4228 ops->to_masked_watch_num_registers = tdefault_masked_watch_num_registers;
0343661d 4229 ops->to_terminal_init = tdefault_terminal_init;
ddeaacc9 4230 ops->to_terminal_inferior = tdefault_terminal_inferior;
74fcbef9 4231 ops->to_terminal_ours_for_output = tdefault_terminal_ours_for_output;
e4a733f1 4232 ops->to_terminal_ours = tdefault_terminal_ours;
e19e919f 4233 ops->to_terminal_info = default_terminal_info;
423a4807 4234 ops->to_kill = tdefault_kill;
7634da87 4235 ops->to_load = tdefault_load;
340ba4bf 4236 ops->to_post_startup_inferior = tdefault_post_startup_inferior;
5958ebeb 4237 ops->to_insert_fork_catchpoint = tdefault_insert_fork_catchpoint;
e1a21fb7 4238 ops->to_remove_fork_catchpoint = tdefault_remove_fork_catchpoint;
7e18a8dc 4239 ops->to_insert_vfork_catchpoint = tdefault_insert_vfork_catchpoint;
95c3375e 4240 ops->to_remove_vfork_catchpoint = tdefault_remove_vfork_catchpoint;
098dba18 4241 ops->to_follow_fork = default_follow_fork;
62f64d7a 4242 ops->to_insert_exec_catchpoint = tdefault_insert_exec_catchpoint;
cda0f38c 4243 ops->to_remove_exec_catchpoint = tdefault_remove_exec_catchpoint;
6a9fa051 4244 ops->to_set_syscall_catchpoint = tdefault_set_syscall_catchpoint;
0db88c1d 4245 ops->to_has_exited = tdefault_has_exited;
8d657035 4246 ops->to_mourn_inferior = default_mourn_inferior;
e88ef65c 4247 ops->to_can_run = tdefault_can_run;
035cad7f 4248 ops->to_pass_signals = tdefault_pass_signals;
7d4f8efa 4249 ops->to_program_signals = tdefault_program_signals;
cbffc065 4250 ops->to_thread_alive = tdefault_thread_alive;
e8032dde 4251 ops->to_update_thread_list = tdefault_update_thread_list;
770234d3 4252 ops->to_pid_to_str = default_pid_to_str;
4a7e6dda 4253 ops->to_extra_thread_info = tdefault_extra_thread_info;
825828fc 4254 ops->to_thread_name = tdefault_thread_name;
46ee7e8d 4255 ops->to_stop = tdefault_stop;
a53f3625 4256 ops->to_rcmd = default_rcmd;
830ca330 4257 ops->to_pid_to_exec_file = tdefault_pid_to_exec_file;
d9cb0195 4258 ops->to_log_command = tdefault_log_command;
7e35c012 4259 ops->to_get_section_table = tdefault_get_section_table;
b3ccfe11
TT
4260 ops->to_can_async_p = tdefault_can_async_p;
4261 ops->to_is_async_p = tdefault_is_async_p;
6b84065d 4262 ops->to_async = tdefault_async;
b3ccfe11 4263 ops->to_supports_non_stop = tdefault_supports_non_stop;
fbea99ea 4264 ops->to_always_non_stop_p = tdefault_always_non_stop_p;
0b5a2719 4265 ops->to_find_memory_regions = dummy_find_memory_regions;
16f796b1 4266 ops->to_make_corefile_notes = dummy_make_corefile_notes;
3dbafbbb 4267 ops->to_get_bookmark = tdefault_get_bookmark;
9bb9d61d 4268 ops->to_goto_bookmark = tdefault_goto_bookmark;
f0f9ff95 4269 ops->to_get_thread_local_address = tdefault_get_thread_local_address;
6b84065d 4270 ops->to_xfer_partial = tdefault_xfer_partial;
6b2c5a57 4271 ops->to_memory_map = tdefault_memory_map;
e8a6c6ac 4272 ops->to_flash_erase = tdefault_flash_erase;
f6fb2925 4273 ops->to_flash_done = tdefault_flash_done;
2117c711 4274 ops->to_read_description = tdefault_read_description;
4229b31d 4275 ops->to_get_ada_task_ptid = default_get_ada_task_ptid;
8de71aab 4276 ops->to_auxv_parse = default_auxv_parse;
58a5184e 4277 ops->to_search_memory = default_search_memory;
53e1cfc7 4278 ops->to_can_execute_reverse = tdefault_can_execute_reverse;
fe31bf5b 4279 ops->to_execution_direction = default_execution_direction;
a7304748 4280 ops->to_supports_multi_process = tdefault_supports_multi_process;
aab1b22d 4281 ops->to_supports_enable_disable_tracepoint = tdefault_supports_enable_disable_tracepoint;
9409d39e 4282 ops->to_supports_string_tracing = tdefault_supports_string_tracing;
ccfde2a0 4283 ops->to_supports_evaluation_of_breakpoint_conditions = tdefault_supports_evaluation_of_breakpoint_conditions;
843f59ed 4284 ops->to_can_run_breakpoint_commands = tdefault_can_run_breakpoint_commands;
43eba180 4285 ops->to_thread_architecture = default_thread_architecture;
8eaff7cd 4286 ops->to_thread_address_space = default_thread_address_space;
4bd7dc42 4287 ops->to_filesystem_is_local = tdefault_filesystem_is_local;
5536135b 4288 ops->to_trace_init = tdefault_trace_init;
9a980a22 4289 ops->to_download_tracepoint = tdefault_download_tracepoint;
719acc4a 4290 ops->to_can_download_tracepoint = tdefault_can_download_tracepoint;
94eb98b9 4291 ops->to_download_trace_state_variable = tdefault_download_trace_state_variable;
151f70f1 4292 ops->to_enable_tracepoint = tdefault_enable_tracepoint;
05c41993 4293 ops->to_disable_tracepoint = tdefault_disable_tracepoint;
86dd181d 4294 ops->to_trace_set_readonly_regions = tdefault_trace_set_readonly_regions;
25da2e80 4295 ops->to_trace_start = tdefault_trace_start;
4072d4ff 4296 ops->to_get_trace_status = tdefault_get_trace_status;
6fea14cd 4297 ops->to_get_tracepoint_status = tdefault_get_tracepoint_status;
e51c07ea 4298 ops->to_trace_stop = tdefault_trace_stop;
afc94e66 4299 ops->to_trace_find = tdefault_trace_find;
959bcd0b 4300 ops->to_get_trace_state_variable_value = tdefault_get_trace_state_variable_value;
a2e6c147 4301 ops->to_save_trace_data = tdefault_save_trace_data;
1e949b00 4302 ops->to_upload_tracepoints = tdefault_upload_tracepoints;
08120467 4303 ops->to_upload_trace_state_variables = tdefault_upload_trace_state_variables;
ace92e7d 4304 ops->to_get_raw_trace_data = tdefault_get_raw_trace_data;
9249843f 4305 ops->to_get_min_fast_tracepoint_insn_len = tdefault_get_min_fast_tracepoint_insn_len;
0bcfeddf 4306 ops->to_set_disconnected_tracing = tdefault_set_disconnected_tracing;
8d526939 4307 ops->to_set_circular_trace_buffer = tdefault_set_circular_trace_buffer;
91df8d1d 4308 ops->to_set_trace_buffer_size = tdefault_set_trace_buffer_size;
8586ccaa 4309 ops->to_set_trace_notes = tdefault_set_trace_notes;
9e538d0d 4310 ops->to_core_of_thread = tdefault_core_of_thread;
936d2992 4311 ops->to_verify_memory = default_verify_memory;
22bcceee 4312 ops->to_get_tib_address = tdefault_get_tib_address;
dcd6917f 4313 ops->to_set_permissions = tdefault_set_permissions;
4c3e4425 4314 ops->to_static_tracepoint_marker_at = tdefault_static_tracepoint_marker_at;
d6522a22 4315 ops->to_static_tracepoint_markers_by_strid = tdefault_static_tracepoint_markers_by_strid;
92155eeb 4316 ops->to_traceframe_info = tdefault_traceframe_info;
d9db5b21 4317 ops->to_use_agent = tdefault_use_agent;
9a7d8b48 4318 ops->to_can_use_agent = tdefault_can_use_agent;
46917d26 4319 ops->to_supports_btrace = tdefault_supports_btrace;
6dc7fcf4 4320 ops->to_enable_btrace = tdefault_enable_btrace;
8dc292d3 4321 ops->to_disable_btrace = tdefault_disable_btrace;
9ace480d 4322 ops->to_teardown_btrace = tdefault_teardown_btrace;
eb5b20d4 4323 ops->to_read_btrace = tdefault_read_btrace;
f4abbc16 4324 ops->to_btrace_conf = tdefault_btrace_conf;
ee97f592 4325 ops->to_stop_recording = tdefault_stop_recording;
a432721e 4326 ops->to_info_record = tdefault_info_record;
f09e2107 4327 ops->to_save_record = tdefault_save_record;
07366925 4328 ops->to_delete_record = tdefault_delete_record;
dd2e9d25 4329 ops->to_record_is_replaying = tdefault_record_is_replaying;
671e76cc 4330 ops->to_goto_record_begin = tdefault_goto_record_begin;
e9179bb3 4331 ops->to_goto_record_end = tdefault_goto_record_end;
05969c84 4332 ops->to_goto_record = tdefault_goto_record;
3679abfa 4333 ops->to_insn_history = tdefault_insn_history;
8444ab58 4334 ops->to_insn_history_from = tdefault_insn_history_from;
c29302cc 4335 ops->to_insn_history_range = tdefault_insn_history_range;
170049d4 4336 ops->to_call_history = tdefault_call_history;
16fc27d6 4337 ops->to_call_history_from = tdefault_call_history_from;
115d9817 4338 ops->to_call_history_range = tdefault_call_history_range;
0de91722 4339 ops->to_augmented_libraries_svr4_read = tdefault_augmented_libraries_svr4_read;
ac01945b
TT
4340 ops->to_get_unwinder = tdefault_get_unwinder;
4341 ops->to_get_tailcall_unwinder = tdefault_get_tailcall_unwinder;
5fff78c4
MM
4342 ops->to_prepare_to_generate_core = tdefault_prepare_to_generate_core;
4343 ops->to_done_generating_core = tdefault_done_generating_core;
1101cb7b 4344}
a7068b60
TT
4345
4346static void
4347init_debug_target (struct target_ops *ops)
4348{
4349 ops->to_post_attach = debug_post_attach;
4350 ops->to_detach = debug_detach;
4351 ops->to_disconnect = debug_disconnect;
4352 ops->to_resume = debug_resume;
4353 ops->to_wait = debug_wait;
4354 ops->to_fetch_registers = debug_fetch_registers;
4355 ops->to_store_registers = debug_store_registers;
4356 ops->to_prepare_to_store = debug_prepare_to_store;
4357 ops->to_files_info = debug_files_info;
4358 ops->to_insert_breakpoint = debug_insert_breakpoint;
4359 ops->to_remove_breakpoint = debug_remove_breakpoint;
1cf4d951
PA
4360 ops->to_stopped_by_sw_breakpoint = debug_stopped_by_sw_breakpoint;
4361 ops->to_supports_stopped_by_sw_breakpoint = debug_supports_stopped_by_sw_breakpoint;
4362 ops->to_stopped_by_hw_breakpoint = debug_stopped_by_hw_breakpoint;
4363 ops->to_supports_stopped_by_hw_breakpoint = debug_supports_stopped_by_hw_breakpoint;
a7068b60
TT
4364 ops->to_can_use_hw_breakpoint = debug_can_use_hw_breakpoint;
4365 ops->to_ranged_break_num_registers = debug_ranged_break_num_registers;
4366 ops->to_insert_hw_breakpoint = debug_insert_hw_breakpoint;
4367 ops->to_remove_hw_breakpoint = debug_remove_hw_breakpoint;
4368 ops->to_remove_watchpoint = debug_remove_watchpoint;
4369 ops->to_insert_watchpoint = debug_insert_watchpoint;
4370 ops->to_insert_mask_watchpoint = debug_insert_mask_watchpoint;
4371 ops->to_remove_mask_watchpoint = debug_remove_mask_watchpoint;
4372 ops->to_stopped_by_watchpoint = debug_stopped_by_watchpoint;
4373 ops->to_stopped_data_address = debug_stopped_data_address;
4374 ops->to_watchpoint_addr_within_range = debug_watchpoint_addr_within_range;
4375 ops->to_region_ok_for_hw_watchpoint = debug_region_ok_for_hw_watchpoint;
4376 ops->to_can_accel_watchpoint_condition = debug_can_accel_watchpoint_condition;
4377 ops->to_masked_watch_num_registers = debug_masked_watch_num_registers;
4378 ops->to_terminal_init = debug_terminal_init;
4379 ops->to_terminal_inferior = debug_terminal_inferior;
4380 ops->to_terminal_ours_for_output = debug_terminal_ours_for_output;
4381 ops->to_terminal_ours = debug_terminal_ours;
a7068b60
TT
4382 ops->to_terminal_info = debug_terminal_info;
4383 ops->to_kill = debug_kill;
4384 ops->to_load = debug_load;
4385 ops->to_post_startup_inferior = debug_post_startup_inferior;
4386 ops->to_insert_fork_catchpoint = debug_insert_fork_catchpoint;
4387 ops->to_remove_fork_catchpoint = debug_remove_fork_catchpoint;
4388 ops->to_insert_vfork_catchpoint = debug_insert_vfork_catchpoint;
4389 ops->to_remove_vfork_catchpoint = debug_remove_vfork_catchpoint;
4390 ops->to_follow_fork = debug_follow_fork;
4391 ops->to_insert_exec_catchpoint = debug_insert_exec_catchpoint;
4392 ops->to_remove_exec_catchpoint = debug_remove_exec_catchpoint;
4393 ops->to_set_syscall_catchpoint = debug_set_syscall_catchpoint;
4394 ops->to_has_exited = debug_has_exited;
4395 ops->to_mourn_inferior = debug_mourn_inferior;
4396 ops->to_can_run = debug_can_run;
4397 ops->to_pass_signals = debug_pass_signals;
4398 ops->to_program_signals = debug_program_signals;
4399 ops->to_thread_alive = debug_thread_alive;
e8032dde 4400 ops->to_update_thread_list = debug_update_thread_list;
a7068b60
TT
4401 ops->to_pid_to_str = debug_pid_to_str;
4402 ops->to_extra_thread_info = debug_extra_thread_info;
4403 ops->to_thread_name = debug_thread_name;
4404 ops->to_stop = debug_stop;
4405 ops->to_rcmd = debug_rcmd;
4406 ops->to_pid_to_exec_file = debug_pid_to_exec_file;
4407 ops->to_log_command = debug_log_command;
4408 ops->to_get_section_table = debug_get_section_table;
4409 ops->to_can_async_p = debug_can_async_p;
4410 ops->to_is_async_p = debug_is_async_p;
4411 ops->to_async = debug_async;
4412 ops->to_supports_non_stop = debug_supports_non_stop;
fbea99ea 4413 ops->to_always_non_stop_p = debug_always_non_stop_p;
a7068b60
TT
4414 ops->to_find_memory_regions = debug_find_memory_regions;
4415 ops->to_make_corefile_notes = debug_make_corefile_notes;
4416 ops->to_get_bookmark = debug_get_bookmark;
4417 ops->to_goto_bookmark = debug_goto_bookmark;
4418 ops->to_get_thread_local_address = debug_get_thread_local_address;
4419 ops->to_xfer_partial = debug_xfer_partial;
4420 ops->to_memory_map = debug_memory_map;
4421 ops->to_flash_erase = debug_flash_erase;
4422 ops->to_flash_done = debug_flash_done;
4423 ops->to_read_description = debug_read_description;
4424 ops->to_get_ada_task_ptid = debug_get_ada_task_ptid;
4425 ops->to_auxv_parse = debug_auxv_parse;
4426 ops->to_search_memory = debug_search_memory;
4427 ops->to_can_execute_reverse = debug_can_execute_reverse;
4428 ops->to_execution_direction = debug_execution_direction;
4429 ops->to_supports_multi_process = debug_supports_multi_process;
4430 ops->to_supports_enable_disable_tracepoint = debug_supports_enable_disable_tracepoint;
4431 ops->to_supports_string_tracing = debug_supports_string_tracing;
4432 ops->to_supports_evaluation_of_breakpoint_conditions = debug_supports_evaluation_of_breakpoint_conditions;
4433 ops->to_can_run_breakpoint_commands = debug_can_run_breakpoint_commands;
4434 ops->to_thread_architecture = debug_thread_architecture;
4435 ops->to_thread_address_space = debug_thread_address_space;
4bd7dc42 4436 ops->to_filesystem_is_local = debug_filesystem_is_local;
a7068b60
TT
4437 ops->to_trace_init = debug_trace_init;
4438 ops->to_download_tracepoint = debug_download_tracepoint;
4439 ops->to_can_download_tracepoint = debug_can_download_tracepoint;
4440 ops->to_download_trace_state_variable = debug_download_trace_state_variable;
4441 ops->to_enable_tracepoint = debug_enable_tracepoint;
4442 ops->to_disable_tracepoint = debug_disable_tracepoint;
4443 ops->to_trace_set_readonly_regions = debug_trace_set_readonly_regions;
4444 ops->to_trace_start = debug_trace_start;
4445 ops->to_get_trace_status = debug_get_trace_status;
4446 ops->to_get_tracepoint_status = debug_get_tracepoint_status;
4447 ops->to_trace_stop = debug_trace_stop;
4448 ops->to_trace_find = debug_trace_find;
4449 ops->to_get_trace_state_variable_value = debug_get_trace_state_variable_value;
4450 ops->to_save_trace_data = debug_save_trace_data;
4451 ops->to_upload_tracepoints = debug_upload_tracepoints;
4452 ops->to_upload_trace_state_variables = debug_upload_trace_state_variables;
4453 ops->to_get_raw_trace_data = debug_get_raw_trace_data;
4454 ops->to_get_min_fast_tracepoint_insn_len = debug_get_min_fast_tracepoint_insn_len;
4455 ops->to_set_disconnected_tracing = debug_set_disconnected_tracing;
4456 ops->to_set_circular_trace_buffer = debug_set_circular_trace_buffer;
4457 ops->to_set_trace_buffer_size = debug_set_trace_buffer_size;
4458 ops->to_set_trace_notes = debug_set_trace_notes;
4459 ops->to_core_of_thread = debug_core_of_thread;
4460 ops->to_verify_memory = debug_verify_memory;
4461 ops->to_get_tib_address = debug_get_tib_address;
4462 ops->to_set_permissions = debug_set_permissions;
4463 ops->to_static_tracepoint_marker_at = debug_static_tracepoint_marker_at;
4464 ops->to_static_tracepoint_markers_by_strid = debug_static_tracepoint_markers_by_strid;
4465 ops->to_traceframe_info = debug_traceframe_info;
4466 ops->to_use_agent = debug_use_agent;
4467 ops->to_can_use_agent = debug_can_use_agent;
4468 ops->to_supports_btrace = debug_supports_btrace;
4469 ops->to_enable_btrace = debug_enable_btrace;
4470 ops->to_disable_btrace = debug_disable_btrace;
4471 ops->to_teardown_btrace = debug_teardown_btrace;
4472 ops->to_read_btrace = debug_read_btrace;
f4abbc16 4473 ops->to_btrace_conf = debug_btrace_conf;
a7068b60
TT
4474 ops->to_stop_recording = debug_stop_recording;
4475 ops->to_info_record = debug_info_record;
4476 ops->to_save_record = debug_save_record;
4477 ops->to_delete_record = debug_delete_record;
4478 ops->to_record_is_replaying = debug_record_is_replaying;
4479 ops->to_goto_record_begin = debug_goto_record_begin;
4480 ops->to_goto_record_end = debug_goto_record_end;
4481 ops->to_goto_record = debug_goto_record;
4482 ops->to_insn_history = debug_insn_history;
4483 ops->to_insn_history_from = debug_insn_history_from;
4484 ops->to_insn_history_range = debug_insn_history_range;
4485 ops->to_call_history = debug_call_history;
4486 ops->to_call_history_from = debug_call_history_from;
4487 ops->to_call_history_range = debug_call_history_range;
4488 ops->to_augmented_libraries_svr4_read = debug_augmented_libraries_svr4_read;
4489 ops->to_get_unwinder = debug_get_unwinder;
4490 ops->to_get_tailcall_unwinder = debug_get_tailcall_unwinder;
a7068b60
TT
4491 ops->to_prepare_to_generate_core = debug_prepare_to_generate_core;
4492 ops->to_done_generating_core = debug_done_generating_core;
4493}
This page took 0.386355 seconds and 4 git commands to generate.