convert to_set_trace_notes
[platform/upstream/binutils.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_attach (struct target_ops *self, char *arg1, int arg2)
8 {
9   self = self->beneath;
10   self->to_attach (self, arg1, arg2);
11 }
12
13 static void
14 delegate_post_attach (struct target_ops *self, int arg1)
15 {
16   self = self->beneath;
17   self->to_post_attach (self, arg1);
18 }
19
20 static void
21 tdefault_post_attach (struct target_ops *self, int arg1)
22 {
23 }
24
25 static void
26 delegate_detach (struct target_ops *self, const char *arg1, int arg2)
27 {
28   self = self->beneath;
29   self->to_detach (self, arg1, arg2);
30 }
31
32 static void
33 tdefault_detach (struct target_ops *self, const char *arg1, int arg2)
34 {
35 }
36
37 static void
38 delegate_resume (struct target_ops *self, ptid_t arg1, int arg2, enum gdb_signal arg3)
39 {
40   self = self->beneath;
41   self->to_resume (self, arg1, arg2, arg3);
42 }
43
44 static void
45 tdefault_resume (struct target_ops *self, ptid_t arg1, int arg2, enum gdb_signal arg3)
46 {
47   noprocess ();
48 }
49
50 static ptid_t
51 delegate_wait (struct target_ops *self, ptid_t arg1, struct target_waitstatus *arg2, int arg3)
52 {
53   self = self->beneath;
54   return self->to_wait (self, arg1, arg2, arg3);
55 }
56
57 static ptid_t
58 tdefault_wait (struct target_ops *self, ptid_t arg1, struct target_waitstatus *arg2, int arg3)
59 {
60   noprocess ();
61 }
62
63 static void
64 delegate_store_registers (struct target_ops *self, struct regcache *arg1, int arg2)
65 {
66   self = self->beneath;
67   self->to_store_registers (self, arg1, arg2);
68 }
69
70 static void
71 tdefault_store_registers (struct target_ops *self, struct regcache *arg1, int arg2)
72 {
73   noprocess ();
74 }
75
76 static void
77 delegate_prepare_to_store (struct target_ops *self, struct regcache *arg1)
78 {
79   self = self->beneath;
80   self->to_prepare_to_store (self, arg1);
81 }
82
83 static void
84 tdefault_prepare_to_store (struct target_ops *self, struct regcache *arg1)
85 {
86   noprocess ();
87 }
88
89 static void
90 delegate_files_info (struct target_ops *self)
91 {
92   self = self->beneath;
93   self->to_files_info (self);
94 }
95
96 static void
97 tdefault_files_info (struct target_ops *self)
98 {
99 }
100
101 static int
102 delegate_insert_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
103 {
104   self = self->beneath;
105   return self->to_insert_breakpoint (self, arg1, arg2);
106 }
107
108 static int
109 delegate_remove_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
110 {
111   self = self->beneath;
112   return self->to_remove_breakpoint (self, arg1, arg2);
113 }
114
115 static int
116 delegate_can_use_hw_breakpoint (struct target_ops *self, int arg1, int arg2, int arg3)
117 {
118   self = self->beneath;
119   return self->to_can_use_hw_breakpoint (self, arg1, arg2, arg3);
120 }
121
122 static int
123 tdefault_can_use_hw_breakpoint (struct target_ops *self, int arg1, int arg2, int arg3)
124 {
125   return 0;
126 }
127
128 static int
129 delegate_insert_hw_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
130 {
131   self = self->beneath;
132   return self->to_insert_hw_breakpoint (self, arg1, arg2);
133 }
134
135 static int
136 tdefault_insert_hw_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
137 {
138   return -1;
139 }
140
141 static int
142 delegate_remove_hw_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
143 {
144   self = self->beneath;
145   return self->to_remove_hw_breakpoint (self, arg1, arg2);
146 }
147
148 static int
149 tdefault_remove_hw_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
150 {
151   return -1;
152 }
153
154 static int
155 delegate_remove_watchpoint (struct target_ops *self, CORE_ADDR arg1, int arg2, int arg3, struct expression *arg4)
156 {
157   self = self->beneath;
158   return self->to_remove_watchpoint (self, arg1, arg2, arg3, arg4);
159 }
160
161 static int
162 tdefault_remove_watchpoint (struct target_ops *self, CORE_ADDR arg1, int arg2, int arg3, struct expression *arg4)
163 {
164   return -1;
165 }
166
167 static int
168 delegate_insert_watchpoint (struct target_ops *self, CORE_ADDR arg1, int arg2, int arg3, struct expression *arg4)
169 {
170   self = self->beneath;
171   return self->to_insert_watchpoint (self, arg1, arg2, arg3, arg4);
172 }
173
174 static int
175 tdefault_insert_watchpoint (struct target_ops *self, CORE_ADDR arg1, int arg2, int arg3, struct expression *arg4)
176 {
177   return -1;
178 }
179
180 static int
181 delegate_stopped_by_watchpoint (struct target_ops *self)
182 {
183   self = self->beneath;
184   return self->to_stopped_by_watchpoint (self);
185 }
186
187 static int
188 tdefault_stopped_by_watchpoint (struct target_ops *self)
189 {
190   return 0;
191 }
192
193 static int
194 delegate_stopped_data_address (struct target_ops *self, CORE_ADDR *arg1)
195 {
196   self = self->beneath;
197   return self->to_stopped_data_address (self, arg1);
198 }
199
200 static int
201 tdefault_stopped_data_address (struct target_ops *self, CORE_ADDR *arg1)
202 {
203   return 0;
204 }
205
206 static int
207 delegate_watchpoint_addr_within_range (struct target_ops *self, CORE_ADDR arg1, CORE_ADDR arg2, int arg3)
208 {
209   self = self->beneath;
210   return self->to_watchpoint_addr_within_range (self, arg1, arg2, arg3);
211 }
212
213 static int
214 delegate_region_ok_for_hw_watchpoint (struct target_ops *self, CORE_ADDR arg1, int arg2)
215 {
216   self = self->beneath;
217   return self->to_region_ok_for_hw_watchpoint (self, arg1, arg2);
218 }
219
220 static int
221 delegate_can_accel_watchpoint_condition (struct target_ops *self, CORE_ADDR arg1, int arg2, int arg3, struct expression *arg4)
222 {
223   self = self->beneath;
224   return self->to_can_accel_watchpoint_condition (self, arg1, arg2, arg3, arg4);
225 }
226
227 static int
228 tdefault_can_accel_watchpoint_condition (struct target_ops *self, CORE_ADDR arg1, int arg2, int arg3, struct expression *arg4)
229 {
230   return 0;
231 }
232
233 static void
234 delegate_terminal_init (struct target_ops *self)
235 {
236   self = self->beneath;
237   self->to_terminal_init (self);
238 }
239
240 static void
241 tdefault_terminal_init (struct target_ops *self)
242 {
243 }
244
245 static void
246 delegate_terminal_inferior (struct target_ops *self)
247 {
248   self = self->beneath;
249   self->to_terminal_inferior (self);
250 }
251
252 static void
253 tdefault_terminal_inferior (struct target_ops *self)
254 {
255 }
256
257 static void
258 delegate_terminal_ours_for_output (struct target_ops *self)
259 {
260   self = self->beneath;
261   self->to_terminal_ours_for_output (self);
262 }
263
264 static void
265 tdefault_terminal_ours_for_output (struct target_ops *self)
266 {
267 }
268
269 static void
270 delegate_terminal_ours (struct target_ops *self)
271 {
272   self = self->beneath;
273   self->to_terminal_ours (self);
274 }
275
276 static void
277 tdefault_terminal_ours (struct target_ops *self)
278 {
279 }
280
281 static void
282 delegate_terminal_save_ours (struct target_ops *self)
283 {
284   self = self->beneath;
285   self->to_terminal_save_ours (self);
286 }
287
288 static void
289 tdefault_terminal_save_ours (struct target_ops *self)
290 {
291 }
292
293 static void
294 delegate_terminal_info (struct target_ops *self, const char *arg1, int arg2)
295 {
296   self = self->beneath;
297   self->to_terminal_info (self, arg1, arg2);
298 }
299
300 static void
301 delegate_load (struct target_ops *self, char *arg1, int arg2)
302 {
303   self = self->beneath;
304   self->to_load (self, arg1, arg2);
305 }
306
307 static void
308 tdefault_load (struct target_ops *self, char *arg1, int arg2)
309 {
310   tcomplain ();
311 }
312
313 static void
314 delegate_post_startup_inferior (struct target_ops *self, ptid_t arg1)
315 {
316   self = self->beneath;
317   self->to_post_startup_inferior (self, arg1);
318 }
319
320 static void
321 tdefault_post_startup_inferior (struct target_ops *self, ptid_t arg1)
322 {
323 }
324
325 static int
326 delegate_insert_fork_catchpoint (struct target_ops *self, int arg1)
327 {
328   self = self->beneath;
329   return self->to_insert_fork_catchpoint (self, arg1);
330 }
331
332 static int
333 tdefault_insert_fork_catchpoint (struct target_ops *self, int arg1)
334 {
335   return 1;
336 }
337
338 static int
339 delegate_remove_fork_catchpoint (struct target_ops *self, int arg1)
340 {
341   self = self->beneath;
342   return self->to_remove_fork_catchpoint (self, arg1);
343 }
344
345 static int
346 tdefault_remove_fork_catchpoint (struct target_ops *self, int arg1)
347 {
348   return 1;
349 }
350
351 static int
352 delegate_insert_vfork_catchpoint (struct target_ops *self, int arg1)
353 {
354   self = self->beneath;
355   return self->to_insert_vfork_catchpoint (self, arg1);
356 }
357
358 static int
359 tdefault_insert_vfork_catchpoint (struct target_ops *self, int arg1)
360 {
361   return 1;
362 }
363
364 static int
365 delegate_remove_vfork_catchpoint (struct target_ops *self, int arg1)
366 {
367   self = self->beneath;
368   return self->to_remove_vfork_catchpoint (self, arg1);
369 }
370
371 static int
372 tdefault_remove_vfork_catchpoint (struct target_ops *self, int arg1)
373 {
374   return 1;
375 }
376
377 static int
378 delegate_insert_exec_catchpoint (struct target_ops *self, int arg1)
379 {
380   self = self->beneath;
381   return self->to_insert_exec_catchpoint (self, arg1);
382 }
383
384 static int
385 tdefault_insert_exec_catchpoint (struct target_ops *self, int arg1)
386 {
387   return 1;
388 }
389
390 static int
391 delegate_remove_exec_catchpoint (struct target_ops *self, int arg1)
392 {
393   self = self->beneath;
394   return self->to_remove_exec_catchpoint (self, arg1);
395 }
396
397 static int
398 tdefault_remove_exec_catchpoint (struct target_ops *self, int arg1)
399 {
400   return 1;
401 }
402
403 static int
404 delegate_set_syscall_catchpoint (struct target_ops *self, int arg1, int arg2, int arg3, int arg4, int *arg5)
405 {
406   self = self->beneath;
407   return self->to_set_syscall_catchpoint (self, arg1, arg2, arg3, arg4, arg5);
408 }
409
410 static int
411 tdefault_set_syscall_catchpoint (struct target_ops *self, int arg1, int arg2, int arg3, int arg4, int *arg5)
412 {
413   return 1;
414 }
415
416 static int
417 delegate_has_exited (struct target_ops *self, int arg1, int arg2, int *arg3)
418 {
419   self = self->beneath;
420   return self->to_has_exited (self, arg1, arg2, arg3);
421 }
422
423 static int
424 tdefault_has_exited (struct target_ops *self, int arg1, int arg2, int *arg3)
425 {
426   return 0;
427 }
428
429 static char *
430 delegate_extra_thread_info (struct target_ops *self, struct thread_info *arg1)
431 {
432   self = self->beneath;
433   return self->to_extra_thread_info (self, arg1);
434 }
435
436 static char *
437 tdefault_extra_thread_info (struct target_ops *self, struct thread_info *arg1)
438 {
439   return 0;
440 }
441
442 static char *
443 delegate_thread_name (struct target_ops *self, struct thread_info *arg1)
444 {
445   self = self->beneath;
446   return self->to_thread_name (self, arg1);
447 }
448
449 static char *
450 tdefault_thread_name (struct target_ops *self, struct thread_info *arg1)
451 {
452   return 0;
453 }
454
455 static void
456 delegate_rcmd (struct target_ops *self, char *arg1, struct ui_file *arg2)
457 {
458   self = self->beneath;
459   self->to_rcmd (self, arg1, arg2);
460 }
461
462 static char *
463 delegate_pid_to_exec_file (struct target_ops *self, int arg1)
464 {
465   self = self->beneath;
466   return self->to_pid_to_exec_file (self, arg1);
467 }
468
469 static char *
470 tdefault_pid_to_exec_file (struct target_ops *self, int arg1)
471 {
472   return 0;
473 }
474
475 static void
476 delegate_log_command (struct target_ops *self, const char *arg1)
477 {
478   self = self->beneath;
479   self->to_log_command (self, arg1);
480 }
481
482 static void
483 tdefault_log_command (struct target_ops *self, const char *arg1)
484 {
485 }
486
487 static int
488 delegate_can_async_p (struct target_ops *self)
489 {
490   self = self->beneath;
491   return self->to_can_async_p (self);
492 }
493
494 static int
495 delegate_is_async_p (struct target_ops *self)
496 {
497   self = self->beneath;
498   return self->to_is_async_p (self);
499 }
500
501 static void
502 delegate_async (struct target_ops *self, async_callback_ftype *arg1, void *arg2)
503 {
504   self = self->beneath;
505   self->to_async (self, arg1, arg2);
506 }
507
508 static void
509 tdefault_async (struct target_ops *self, async_callback_ftype *arg1, void *arg2)
510 {
511   tcomplain ();
512 }
513
514 static int
515 delegate_find_memory_regions (struct target_ops *self, find_memory_region_ftype arg1, void *arg2)
516 {
517   self = self->beneath;
518   return self->to_find_memory_regions (self, arg1, arg2);
519 }
520
521 static char * 
522 delegate_make_corefile_notes (struct target_ops *self, bfd *arg1, int *arg2)
523 {
524   self = self->beneath;
525   return self->to_make_corefile_notes (self, arg1, arg2);
526 }
527
528 static gdb_byte * 
529 delegate_get_bookmark (struct target_ops *self, char *arg1, int arg2)
530 {
531   self = self->beneath;
532   return self->to_get_bookmark (self, arg1, arg2);
533 }
534
535 static gdb_byte * 
536 tdefault_get_bookmark (struct target_ops *self, char *arg1, int arg2)
537 {
538   tcomplain ();
539 }
540
541 static void
542 delegate_goto_bookmark (struct target_ops *self, gdb_byte *arg1, int arg2)
543 {
544   self = self->beneath;
545   self->to_goto_bookmark (self, arg1, arg2);
546 }
547
548 static void
549 tdefault_goto_bookmark (struct target_ops *self, gdb_byte *arg1, int arg2)
550 {
551   tcomplain ();
552 }
553
554 static enum target_xfer_status 
555 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)
556 {
557   self = self->beneath;
558   return self->to_xfer_partial (self, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
559 }
560
561 static enum target_xfer_status 
562 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)
563 {
564   return TARGET_XFER_E_IO;
565 }
566
567 static ptid_t
568 delegate_get_ada_task_ptid (struct target_ops *self, long arg1, long arg2)
569 {
570   self = self->beneath;
571   return self->to_get_ada_task_ptid (self, arg1, arg2);
572 }
573
574 static int
575 delegate_can_execute_reverse (struct target_ops *self)
576 {
577   self = self->beneath;
578   return self->to_can_execute_reverse (self);
579 }
580
581 static int
582 tdefault_can_execute_reverse (struct target_ops *self)
583 {
584   return 0;
585 }
586
587 static enum exec_direction_kind 
588 delegate_execution_direction (struct target_ops *self)
589 {
590   self = self->beneath;
591   return self->to_execution_direction (self);
592 }
593
594 static int
595 delegate_supports_multi_process (struct target_ops *self)
596 {
597   self = self->beneath;
598   return self->to_supports_multi_process (self);
599 }
600
601 static int
602 tdefault_supports_multi_process (struct target_ops *self)
603 {
604   return 0;
605 }
606
607 static int
608 delegate_supports_enable_disable_tracepoint (struct target_ops *self)
609 {
610   self = self->beneath;
611   return self->to_supports_enable_disable_tracepoint (self);
612 }
613
614 static int
615 tdefault_supports_enable_disable_tracepoint (struct target_ops *self)
616 {
617   return 0;
618 }
619
620 static int
621 delegate_supports_string_tracing (struct target_ops *self)
622 {
623   self = self->beneath;
624   return self->to_supports_string_tracing (self);
625 }
626
627 static int
628 tdefault_supports_string_tracing (struct target_ops *self)
629 {
630   return 0;
631 }
632
633 static struct gdbarch *
634 delegate_thread_architecture (struct target_ops *self, ptid_t arg1)
635 {
636   self = self->beneath;
637   return self->to_thread_architecture (self, arg1);
638 }
639
640 static void
641 delegate_trace_init (struct target_ops *self)
642 {
643   self = self->beneath;
644   self->to_trace_init (self);
645 }
646
647 static void
648 tdefault_trace_init (struct target_ops *self)
649 {
650   tcomplain ();
651 }
652
653 static void
654 delegate_download_tracepoint (struct target_ops *self, struct bp_location *arg1)
655 {
656   self = self->beneath;
657   self->to_download_tracepoint (self, arg1);
658 }
659
660 static void
661 tdefault_download_tracepoint (struct target_ops *self, struct bp_location *arg1)
662 {
663   tcomplain ();
664 }
665
666 static int
667 delegate_can_download_tracepoint (struct target_ops *self)
668 {
669   self = self->beneath;
670   return self->to_can_download_tracepoint (self);
671 }
672
673 static int
674 tdefault_can_download_tracepoint (struct target_ops *self)
675 {
676   return 0;
677 }
678
679 static void
680 delegate_download_trace_state_variable (struct target_ops *self, struct trace_state_variable *arg1)
681 {
682   self = self->beneath;
683   self->to_download_trace_state_variable (self, arg1);
684 }
685
686 static void
687 tdefault_download_trace_state_variable (struct target_ops *self, struct trace_state_variable *arg1)
688 {
689   tcomplain ();
690 }
691
692 static void
693 delegate_enable_tracepoint (struct target_ops *self, struct bp_location *arg1)
694 {
695   self = self->beneath;
696   self->to_enable_tracepoint (self, arg1);
697 }
698
699 static void
700 tdefault_enable_tracepoint (struct target_ops *self, struct bp_location *arg1)
701 {
702   tcomplain ();
703 }
704
705 static void
706 delegate_disable_tracepoint (struct target_ops *self, struct bp_location *arg1)
707 {
708   self = self->beneath;
709   self->to_disable_tracepoint (self, arg1);
710 }
711
712 static void
713 tdefault_disable_tracepoint (struct target_ops *self, struct bp_location *arg1)
714 {
715   tcomplain ();
716 }
717
718 static void
719 delegate_trace_set_readonly_regions (struct target_ops *self)
720 {
721   self = self->beneath;
722   self->to_trace_set_readonly_regions (self);
723 }
724
725 static void
726 tdefault_trace_set_readonly_regions (struct target_ops *self)
727 {
728   tcomplain ();
729 }
730
731 static void
732 delegate_trace_start (struct target_ops *self)
733 {
734   self = self->beneath;
735   self->to_trace_start (self);
736 }
737
738 static void
739 tdefault_trace_start (struct target_ops *self)
740 {
741   tcomplain ();
742 }
743
744 static int
745 delegate_get_trace_status (struct target_ops *self, struct trace_status *arg1)
746 {
747   self = self->beneath;
748   return self->to_get_trace_status (self, arg1);
749 }
750
751 static int
752 tdefault_get_trace_status (struct target_ops *self, struct trace_status *arg1)
753 {
754   return -1;
755 }
756
757 static void
758 delegate_get_tracepoint_status (struct target_ops *self, struct breakpoint *arg1, struct uploaded_tp *arg2)
759 {
760   self = self->beneath;
761   self->to_get_tracepoint_status (self, arg1, arg2);
762 }
763
764 static void
765 tdefault_get_tracepoint_status (struct target_ops *self, struct breakpoint *arg1, struct uploaded_tp *arg2)
766 {
767   tcomplain ();
768 }
769
770 static void
771 delegate_trace_stop (struct target_ops *self)
772 {
773   self = self->beneath;
774   self->to_trace_stop (self);
775 }
776
777 static void
778 tdefault_trace_stop (struct target_ops *self)
779 {
780   tcomplain ();
781 }
782
783 static int
784 delegate_trace_find (struct target_ops *self, enum trace_find_type  arg1, int arg2, CORE_ADDR arg3, CORE_ADDR arg4, int *arg5)
785 {
786   self = self->beneath;
787   return self->to_trace_find (self, arg1, arg2, arg3, arg4, arg5);
788 }
789
790 static int
791 tdefault_trace_find (struct target_ops *self, enum trace_find_type  arg1, int arg2, CORE_ADDR arg3, CORE_ADDR arg4, int *arg5)
792 {
793   return -1;
794 }
795
796 static int
797 delegate_get_trace_state_variable_value (struct target_ops *self, int arg1, LONGEST *arg2)
798 {
799   self = self->beneath;
800   return self->to_get_trace_state_variable_value (self, arg1, arg2);
801 }
802
803 static int
804 tdefault_get_trace_state_variable_value (struct target_ops *self, int arg1, LONGEST *arg2)
805 {
806   return 0;
807 }
808
809 static int
810 delegate_save_trace_data (struct target_ops *self, const char *arg1)
811 {
812   self = self->beneath;
813   return self->to_save_trace_data (self, arg1);
814 }
815
816 static int
817 tdefault_save_trace_data (struct target_ops *self, const char *arg1)
818 {
819   tcomplain ();
820 }
821
822 static int
823 delegate_upload_tracepoints (struct target_ops *self, struct uploaded_tp **arg1)
824 {
825   self = self->beneath;
826   return self->to_upload_tracepoints (self, arg1);
827 }
828
829 static int
830 tdefault_upload_tracepoints (struct target_ops *self, struct uploaded_tp **arg1)
831 {
832   return 0;
833 }
834
835 static int
836 delegate_upload_trace_state_variables (struct target_ops *self, struct uploaded_tsv **arg1)
837 {
838   self = self->beneath;
839   return self->to_upload_trace_state_variables (self, arg1);
840 }
841
842 static int
843 tdefault_upload_trace_state_variables (struct target_ops *self, struct uploaded_tsv **arg1)
844 {
845   return 0;
846 }
847
848 static LONGEST
849 delegate_get_raw_trace_data (struct target_ops *self, gdb_byte *arg1, ULONGEST arg2, LONGEST arg3)
850 {
851   self = self->beneath;
852   return self->to_get_raw_trace_data (self, arg1, arg2, arg3);
853 }
854
855 static LONGEST
856 tdefault_get_raw_trace_data (struct target_ops *self, gdb_byte *arg1, ULONGEST arg2, LONGEST arg3)
857 {
858   tcomplain ();
859 }
860
861 static int
862 delegate_get_min_fast_tracepoint_insn_len (struct target_ops *self)
863 {
864   self = self->beneath;
865   return self->to_get_min_fast_tracepoint_insn_len (self);
866 }
867
868 static int
869 tdefault_get_min_fast_tracepoint_insn_len (struct target_ops *self)
870 {
871   return -1;
872 }
873
874 static void
875 delegate_set_disconnected_tracing (struct target_ops *self, int arg1)
876 {
877   self = self->beneath;
878   self->to_set_disconnected_tracing (self, arg1);
879 }
880
881 static void
882 tdefault_set_disconnected_tracing (struct target_ops *self, int arg1)
883 {
884 }
885
886 static void
887 delegate_set_circular_trace_buffer (struct target_ops *self, int arg1)
888 {
889   self = self->beneath;
890   self->to_set_circular_trace_buffer (self, arg1);
891 }
892
893 static void
894 tdefault_set_circular_trace_buffer (struct target_ops *self, int arg1)
895 {
896 }
897
898 static void
899 delegate_set_trace_buffer_size (struct target_ops *self, LONGEST arg1)
900 {
901   self = self->beneath;
902   self->to_set_trace_buffer_size (self, arg1);
903 }
904
905 static void
906 tdefault_set_trace_buffer_size (struct target_ops *self, LONGEST arg1)
907 {
908 }
909
910 static int
911 delegate_set_trace_notes (struct target_ops *self, const char *arg1, const char *arg2, const char *arg3)
912 {
913   self = self->beneath;
914   return self->to_set_trace_notes (self, arg1, arg2, arg3);
915 }
916
917 static int
918 tdefault_set_trace_notes (struct target_ops *self, const char *arg1, const char *arg2, const char *arg3)
919 {
920   return 0;
921 }
922
923 static int
924 delegate_supports_btrace (struct target_ops *self)
925 {
926   self = self->beneath;
927   return self->to_supports_btrace (self);
928 }
929
930 static int
931 tdefault_supports_btrace (struct target_ops *self)
932 {
933   return 0;
934 }
935
936 static void
937 install_delegators (struct target_ops *ops)
938 {
939   if (ops->to_attach == NULL)
940     ops->to_attach = delegate_attach;
941   if (ops->to_post_attach == NULL)
942     ops->to_post_attach = delegate_post_attach;
943   if (ops->to_detach == NULL)
944     ops->to_detach = delegate_detach;
945   if (ops->to_resume == NULL)
946     ops->to_resume = delegate_resume;
947   if (ops->to_wait == NULL)
948     ops->to_wait = delegate_wait;
949   if (ops->to_store_registers == NULL)
950     ops->to_store_registers = delegate_store_registers;
951   if (ops->to_prepare_to_store == NULL)
952     ops->to_prepare_to_store = delegate_prepare_to_store;
953   if (ops->to_files_info == NULL)
954     ops->to_files_info = delegate_files_info;
955   if (ops->to_insert_breakpoint == NULL)
956     ops->to_insert_breakpoint = delegate_insert_breakpoint;
957   if (ops->to_remove_breakpoint == NULL)
958     ops->to_remove_breakpoint = delegate_remove_breakpoint;
959   if (ops->to_can_use_hw_breakpoint == NULL)
960     ops->to_can_use_hw_breakpoint = delegate_can_use_hw_breakpoint;
961   if (ops->to_insert_hw_breakpoint == NULL)
962     ops->to_insert_hw_breakpoint = delegate_insert_hw_breakpoint;
963   if (ops->to_remove_hw_breakpoint == NULL)
964     ops->to_remove_hw_breakpoint = delegate_remove_hw_breakpoint;
965   if (ops->to_remove_watchpoint == NULL)
966     ops->to_remove_watchpoint = delegate_remove_watchpoint;
967   if (ops->to_insert_watchpoint == NULL)
968     ops->to_insert_watchpoint = delegate_insert_watchpoint;
969   if (ops->to_stopped_by_watchpoint == NULL)
970     ops->to_stopped_by_watchpoint = delegate_stopped_by_watchpoint;
971   if (ops->to_stopped_data_address == NULL)
972     ops->to_stopped_data_address = delegate_stopped_data_address;
973   if (ops->to_watchpoint_addr_within_range == NULL)
974     ops->to_watchpoint_addr_within_range = delegate_watchpoint_addr_within_range;
975   if (ops->to_region_ok_for_hw_watchpoint == NULL)
976     ops->to_region_ok_for_hw_watchpoint = delegate_region_ok_for_hw_watchpoint;
977   if (ops->to_can_accel_watchpoint_condition == NULL)
978     ops->to_can_accel_watchpoint_condition = delegate_can_accel_watchpoint_condition;
979   if (ops->to_terminal_init == NULL)
980     ops->to_terminal_init = delegate_terminal_init;
981   if (ops->to_terminal_inferior == NULL)
982     ops->to_terminal_inferior = delegate_terminal_inferior;
983   if (ops->to_terminal_ours_for_output == NULL)
984     ops->to_terminal_ours_for_output = delegate_terminal_ours_for_output;
985   if (ops->to_terminal_ours == NULL)
986     ops->to_terminal_ours = delegate_terminal_ours;
987   if (ops->to_terminal_save_ours == NULL)
988     ops->to_terminal_save_ours = delegate_terminal_save_ours;
989   if (ops->to_terminal_info == NULL)
990     ops->to_terminal_info = delegate_terminal_info;
991   if (ops->to_load == NULL)
992     ops->to_load = delegate_load;
993   if (ops->to_post_startup_inferior == NULL)
994     ops->to_post_startup_inferior = delegate_post_startup_inferior;
995   if (ops->to_insert_fork_catchpoint == NULL)
996     ops->to_insert_fork_catchpoint = delegate_insert_fork_catchpoint;
997   if (ops->to_remove_fork_catchpoint == NULL)
998     ops->to_remove_fork_catchpoint = delegate_remove_fork_catchpoint;
999   if (ops->to_insert_vfork_catchpoint == NULL)
1000     ops->to_insert_vfork_catchpoint = delegate_insert_vfork_catchpoint;
1001   if (ops->to_remove_vfork_catchpoint == NULL)
1002     ops->to_remove_vfork_catchpoint = delegate_remove_vfork_catchpoint;
1003   if (ops->to_insert_exec_catchpoint == NULL)
1004     ops->to_insert_exec_catchpoint = delegate_insert_exec_catchpoint;
1005   if (ops->to_remove_exec_catchpoint == NULL)
1006     ops->to_remove_exec_catchpoint = delegate_remove_exec_catchpoint;
1007   if (ops->to_set_syscall_catchpoint == NULL)
1008     ops->to_set_syscall_catchpoint = delegate_set_syscall_catchpoint;
1009   if (ops->to_has_exited == NULL)
1010     ops->to_has_exited = delegate_has_exited;
1011   if (ops->to_extra_thread_info == NULL)
1012     ops->to_extra_thread_info = delegate_extra_thread_info;
1013   if (ops->to_thread_name == NULL)
1014     ops->to_thread_name = delegate_thread_name;
1015   if (ops->to_rcmd == NULL)
1016     ops->to_rcmd = delegate_rcmd;
1017   if (ops->to_pid_to_exec_file == NULL)
1018     ops->to_pid_to_exec_file = delegate_pid_to_exec_file;
1019   if (ops->to_log_command == NULL)
1020     ops->to_log_command = delegate_log_command;
1021   if (ops->to_can_async_p == NULL)
1022     ops->to_can_async_p = delegate_can_async_p;
1023   if (ops->to_is_async_p == NULL)
1024     ops->to_is_async_p = delegate_is_async_p;
1025   if (ops->to_async == NULL)
1026     ops->to_async = delegate_async;
1027   if (ops->to_find_memory_regions == NULL)
1028     ops->to_find_memory_regions = delegate_find_memory_regions;
1029   if (ops->to_make_corefile_notes == NULL)
1030     ops->to_make_corefile_notes = delegate_make_corefile_notes;
1031   if (ops->to_get_bookmark == NULL)
1032     ops->to_get_bookmark = delegate_get_bookmark;
1033   if (ops->to_goto_bookmark == NULL)
1034     ops->to_goto_bookmark = delegate_goto_bookmark;
1035   if (ops->to_xfer_partial == NULL)
1036     ops->to_xfer_partial = delegate_xfer_partial;
1037   if (ops->to_get_ada_task_ptid == NULL)
1038     ops->to_get_ada_task_ptid = delegate_get_ada_task_ptid;
1039   if (ops->to_can_execute_reverse == NULL)
1040     ops->to_can_execute_reverse = delegate_can_execute_reverse;
1041   if (ops->to_execution_direction == NULL)
1042     ops->to_execution_direction = delegate_execution_direction;
1043   if (ops->to_supports_multi_process == NULL)
1044     ops->to_supports_multi_process = delegate_supports_multi_process;
1045   if (ops->to_supports_enable_disable_tracepoint == NULL)
1046     ops->to_supports_enable_disable_tracepoint = delegate_supports_enable_disable_tracepoint;
1047   if (ops->to_supports_string_tracing == NULL)
1048     ops->to_supports_string_tracing = delegate_supports_string_tracing;
1049   if (ops->to_thread_architecture == NULL)
1050     ops->to_thread_architecture = delegate_thread_architecture;
1051   if (ops->to_trace_init == NULL)
1052     ops->to_trace_init = delegate_trace_init;
1053   if (ops->to_download_tracepoint == NULL)
1054     ops->to_download_tracepoint = delegate_download_tracepoint;
1055   if (ops->to_can_download_tracepoint == NULL)
1056     ops->to_can_download_tracepoint = delegate_can_download_tracepoint;
1057   if (ops->to_download_trace_state_variable == NULL)
1058     ops->to_download_trace_state_variable = delegate_download_trace_state_variable;
1059   if (ops->to_enable_tracepoint == NULL)
1060     ops->to_enable_tracepoint = delegate_enable_tracepoint;
1061   if (ops->to_disable_tracepoint == NULL)
1062     ops->to_disable_tracepoint = delegate_disable_tracepoint;
1063   if (ops->to_trace_set_readonly_regions == NULL)
1064     ops->to_trace_set_readonly_regions = delegate_trace_set_readonly_regions;
1065   if (ops->to_trace_start == NULL)
1066     ops->to_trace_start = delegate_trace_start;
1067   if (ops->to_get_trace_status == NULL)
1068     ops->to_get_trace_status = delegate_get_trace_status;
1069   if (ops->to_get_tracepoint_status == NULL)
1070     ops->to_get_tracepoint_status = delegate_get_tracepoint_status;
1071   if (ops->to_trace_stop == NULL)
1072     ops->to_trace_stop = delegate_trace_stop;
1073   if (ops->to_trace_find == NULL)
1074     ops->to_trace_find = delegate_trace_find;
1075   if (ops->to_get_trace_state_variable_value == NULL)
1076     ops->to_get_trace_state_variable_value = delegate_get_trace_state_variable_value;
1077   if (ops->to_save_trace_data == NULL)
1078     ops->to_save_trace_data = delegate_save_trace_data;
1079   if (ops->to_upload_tracepoints == NULL)
1080     ops->to_upload_tracepoints = delegate_upload_tracepoints;
1081   if (ops->to_upload_trace_state_variables == NULL)
1082     ops->to_upload_trace_state_variables = delegate_upload_trace_state_variables;
1083   if (ops->to_get_raw_trace_data == NULL)
1084     ops->to_get_raw_trace_data = delegate_get_raw_trace_data;
1085   if (ops->to_get_min_fast_tracepoint_insn_len == NULL)
1086     ops->to_get_min_fast_tracepoint_insn_len = delegate_get_min_fast_tracepoint_insn_len;
1087   if (ops->to_set_disconnected_tracing == NULL)
1088     ops->to_set_disconnected_tracing = delegate_set_disconnected_tracing;
1089   if (ops->to_set_circular_trace_buffer == NULL)
1090     ops->to_set_circular_trace_buffer = delegate_set_circular_trace_buffer;
1091   if (ops->to_set_trace_buffer_size == NULL)
1092     ops->to_set_trace_buffer_size = delegate_set_trace_buffer_size;
1093   if (ops->to_set_trace_notes == NULL)
1094     ops->to_set_trace_notes = delegate_set_trace_notes;
1095   if (ops->to_supports_btrace == NULL)
1096     ops->to_supports_btrace = delegate_supports_btrace;
1097 }
1098
1099 static void
1100 install_dummy_methods (struct target_ops *ops)
1101 {
1102   ops->to_attach = find_default_attach;
1103   ops->to_post_attach = tdefault_post_attach;
1104   ops->to_detach = tdefault_detach;
1105   ops->to_resume = tdefault_resume;
1106   ops->to_wait = tdefault_wait;
1107   ops->to_store_registers = tdefault_store_registers;
1108   ops->to_prepare_to_store = tdefault_prepare_to_store;
1109   ops->to_files_info = tdefault_files_info;
1110   ops->to_insert_breakpoint = memory_insert_breakpoint;
1111   ops->to_remove_breakpoint = memory_remove_breakpoint;
1112   ops->to_can_use_hw_breakpoint = tdefault_can_use_hw_breakpoint;
1113   ops->to_insert_hw_breakpoint = tdefault_insert_hw_breakpoint;
1114   ops->to_remove_hw_breakpoint = tdefault_remove_hw_breakpoint;
1115   ops->to_remove_watchpoint = tdefault_remove_watchpoint;
1116   ops->to_insert_watchpoint = tdefault_insert_watchpoint;
1117   ops->to_stopped_by_watchpoint = tdefault_stopped_by_watchpoint;
1118   ops->to_stopped_data_address = tdefault_stopped_data_address;
1119   ops->to_watchpoint_addr_within_range = default_watchpoint_addr_within_range;
1120   ops->to_region_ok_for_hw_watchpoint = default_region_ok_for_hw_watchpoint;
1121   ops->to_can_accel_watchpoint_condition = tdefault_can_accel_watchpoint_condition;
1122   ops->to_terminal_init = tdefault_terminal_init;
1123   ops->to_terminal_inferior = tdefault_terminal_inferior;
1124   ops->to_terminal_ours_for_output = tdefault_terminal_ours_for_output;
1125   ops->to_terminal_ours = tdefault_terminal_ours;
1126   ops->to_terminal_save_ours = tdefault_terminal_save_ours;
1127   ops->to_terminal_info = default_terminal_info;
1128   ops->to_load = tdefault_load;
1129   ops->to_post_startup_inferior = tdefault_post_startup_inferior;
1130   ops->to_insert_fork_catchpoint = tdefault_insert_fork_catchpoint;
1131   ops->to_remove_fork_catchpoint = tdefault_remove_fork_catchpoint;
1132   ops->to_insert_vfork_catchpoint = tdefault_insert_vfork_catchpoint;
1133   ops->to_remove_vfork_catchpoint = tdefault_remove_vfork_catchpoint;
1134   ops->to_insert_exec_catchpoint = tdefault_insert_exec_catchpoint;
1135   ops->to_remove_exec_catchpoint = tdefault_remove_exec_catchpoint;
1136   ops->to_set_syscall_catchpoint = tdefault_set_syscall_catchpoint;
1137   ops->to_has_exited = tdefault_has_exited;
1138   ops->to_extra_thread_info = tdefault_extra_thread_info;
1139   ops->to_thread_name = tdefault_thread_name;
1140   ops->to_rcmd = default_rcmd;
1141   ops->to_pid_to_exec_file = tdefault_pid_to_exec_file;
1142   ops->to_log_command = tdefault_log_command;
1143   ops->to_can_async_p = find_default_can_async_p;
1144   ops->to_is_async_p = find_default_is_async_p;
1145   ops->to_async = tdefault_async;
1146   ops->to_find_memory_regions = dummy_find_memory_regions;
1147   ops->to_make_corefile_notes = dummy_make_corefile_notes;
1148   ops->to_get_bookmark = tdefault_get_bookmark;
1149   ops->to_goto_bookmark = tdefault_goto_bookmark;
1150   ops->to_xfer_partial = tdefault_xfer_partial;
1151   ops->to_get_ada_task_ptid = default_get_ada_task_ptid;
1152   ops->to_can_execute_reverse = tdefault_can_execute_reverse;
1153   ops->to_execution_direction = default_execution_direction;
1154   ops->to_supports_multi_process = tdefault_supports_multi_process;
1155   ops->to_supports_enable_disable_tracepoint = tdefault_supports_enable_disable_tracepoint;
1156   ops->to_supports_string_tracing = tdefault_supports_string_tracing;
1157   ops->to_thread_architecture = default_thread_architecture;
1158   ops->to_trace_init = tdefault_trace_init;
1159   ops->to_download_tracepoint = tdefault_download_tracepoint;
1160   ops->to_can_download_tracepoint = tdefault_can_download_tracepoint;
1161   ops->to_download_trace_state_variable = tdefault_download_trace_state_variable;
1162   ops->to_enable_tracepoint = tdefault_enable_tracepoint;
1163   ops->to_disable_tracepoint = tdefault_disable_tracepoint;
1164   ops->to_trace_set_readonly_regions = tdefault_trace_set_readonly_regions;
1165   ops->to_trace_start = tdefault_trace_start;
1166   ops->to_get_trace_status = tdefault_get_trace_status;
1167   ops->to_get_tracepoint_status = tdefault_get_tracepoint_status;
1168   ops->to_trace_stop = tdefault_trace_stop;
1169   ops->to_trace_find = tdefault_trace_find;
1170   ops->to_get_trace_state_variable_value = tdefault_get_trace_state_variable_value;
1171   ops->to_save_trace_data = tdefault_save_trace_data;
1172   ops->to_upload_tracepoints = tdefault_upload_tracepoints;
1173   ops->to_upload_trace_state_variables = tdefault_upload_trace_state_variables;
1174   ops->to_get_raw_trace_data = tdefault_get_raw_trace_data;
1175   ops->to_get_min_fast_tracepoint_insn_len = tdefault_get_min_fast_tracepoint_insn_len;
1176   ops->to_set_disconnected_tracing = tdefault_set_disconnected_tracing;
1177   ops->to_set_circular_trace_buffer = tdefault_set_circular_trace_buffer;
1178   ops->to_set_trace_buffer_size = tdefault_set_trace_buffer_size;
1179   ops->to_set_trace_notes = tdefault_set_trace_notes;
1180   ops->to_supports_btrace = tdefault_supports_btrace;
1181 }