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