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