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