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