]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gdb/target-delegates.c
convert to_terminal_info
[thirdparty/binutils-gdb.git] / gdb / target-delegates.c
CommitLineData
1101cb7b
TT
1/* THIS FILE IS GENERATED -*- buffer-read-only: t -*- */
2/* vi:set ro: */
3
4/* To regenerate this file, run:*/
5/* make-target-delegates target.h > target-delegates.c */
e9a29200
TT
6static void
7delegate_attach (struct target_ops *self, char *arg1, int arg2)
8{
9 self = self->beneath;
10 self->to_attach (self, arg1, arg2);
11}
12
bebd3233
TT
13static void
14delegate_post_attach (struct target_ops *self, int arg1)
15{
16 self = self->beneath;
17 self->to_post_attach (self, arg1);
18}
19
20static void
21tdefault_post_attach (struct target_ops *self, int arg1)
22{
23}
24
09da0d0a
TT
25static void
26delegate_detach (struct target_ops *self, const char *arg1, int arg2)
27{
28 self = self->beneath;
29 self->to_detach (self, arg1, arg2);
30}
31
32static void
33tdefault_detach (struct target_ops *self, const char *arg1, int arg2)
34{
35}
36
6b84065d
TT
37static void
38delegate_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
44static void
45tdefault_resume (struct target_ops *self, ptid_t arg1, int arg2, enum gdb_signal arg3)
46{
47 noprocess ();
48}
49
50static ptid_t
51delegate_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
57static ptid_t
58tdefault_wait (struct target_ops *self, ptid_t arg1, struct target_waitstatus *arg2, int arg3)
59{
60 noprocess ();
61}
62
63static void
64delegate_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
70static void
71tdefault_store_registers (struct target_ops *self, struct regcache *arg1, int arg2)
72{
73 noprocess ();
74}
75
6c628163
TT
76static void
77delegate_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
83static void
84tdefault_prepare_to_store (struct target_ops *self, struct regcache *arg1)
85{
86 noprocess ();
87}
88
f86e59b2
TT
89static void
90delegate_files_info (struct target_ops *self)
91{
92 self = self->beneath;
93 self->to_files_info (self);
94}
95
96static void
97tdefault_files_info (struct target_ops *self)
98{
99}
100
6b84065d
TT
101static int
102delegate_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
108static int
109delegate_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
52b51d06
TT
115static int
116delegate_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
122static int
123tdefault_can_use_hw_breakpoint (struct target_ops *self, int arg1, int arg2, int arg3)
124{
125 return 0;
126}
127
61b371f9
TT
128static int
129delegate_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
135static int
136tdefault_insert_hw_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
137{
138 return -1;
139}
140
418dabac
TT
141static int
142delegate_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
148static int
149tdefault_remove_hw_breakpoint (struct target_ops *self, struct gdbarch *arg1, struct bp_target_info *arg2)
150{
151 return -1;
152}
153
61dd109f
TT
154static int
155delegate_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
161static int
162tdefault_remove_watchpoint (struct target_ops *self, CORE_ADDR arg1, int arg2, int arg3, struct expression *arg4)
163{
164 return -1;
165}
166
016facd4
TT
167static int
168delegate_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
174static int
175tdefault_insert_watchpoint (struct target_ops *self, CORE_ADDR arg1, int arg2, int arg3, struct expression *arg4)
176{
177 return -1;
178}
179
6b84065d
TT
180static int
181delegate_stopped_by_watchpoint (struct target_ops *self)
182{
183 self = self->beneath;
184 return self->to_stopped_by_watchpoint (self);
185}
186
187static int
188tdefault_stopped_by_watchpoint (struct target_ops *self)
189{
190 return 0;
191}
192
193static int
194delegate_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
200static int
201tdefault_stopped_data_address (struct target_ops *self, CORE_ADDR *arg1)
202{
203 return 0;
204}
205
65f160a9
TT
206static int
207delegate_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
d03655e4
TT
213static int
214delegate_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
77cdffe9
TT
220static int
221delegate_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
227static int
228tdefault_can_accel_watchpoint_condition (struct target_ops *self, CORE_ADDR arg1, int arg2, int arg3, struct expression *arg4)
229{
230 return 0;
231}
232
0343661d
TT
233static void
234delegate_terminal_init (struct target_ops *self)
235{
236 self = self->beneath;
237 self->to_terminal_init (self);
238}
239
240static void
241tdefault_terminal_init (struct target_ops *self)
242{
243}
244
ddeaacc9
TT
245static void
246delegate_terminal_inferior (struct target_ops *self)
247{
248 self = self->beneath;
249 self->to_terminal_inferior (self);
250}
251
252static void
253tdefault_terminal_inferior (struct target_ops *self)
254{
255}
256
74fcbef9
TT
257static void
258delegate_terminal_ours_for_output (struct target_ops *self)
259{
260 self = self->beneath;
261 self->to_terminal_ours_for_output (self);
262}
263
264static void
265tdefault_terminal_ours_for_output (struct target_ops *self)
266{
267}
268
e4a733f1
TT
269static void
270delegate_terminal_ours (struct target_ops *self)
271{
272 self = self->beneath;
273 self->to_terminal_ours (self);
274}
275
276static void
277tdefault_terminal_ours (struct target_ops *self)
278{
279}
280
c6ea8f79
TT
281static void
282delegate_terminal_save_ours (struct target_ops *self)
283{
284 self = self->beneath;
285 self->to_terminal_save_ours (self);
286}
287
288static void
289tdefault_terminal_save_ours (struct target_ops *self)
290{
291}
292
e19e919f
TT
293static void
294delegate_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
a53f3625
TT
300static void
301delegate_rcmd (struct target_ops *self, char *arg1, struct ui_file *arg2)
302{
303 self = self->beneath;
304 self->to_rcmd (self, arg1, arg2);
305}
306
6b84065d
TT
307static int
308delegate_can_async_p (struct target_ops *self)
309{
310 self = self->beneath;
311 return self->to_can_async_p (self);
312}
313
314static int
315delegate_is_async_p (struct target_ops *self)
316{
317 self = self->beneath;
318 return self->to_is_async_p (self);
319}
320
321static void
322delegate_async (struct target_ops *self, async_callback_ftype *arg1, void *arg2)
323{
324 self = self->beneath;
325 self->to_async (self, arg1, arg2);
326}
327
328static void
329tdefault_async (struct target_ops *self, async_callback_ftype *arg1, void *arg2)
330{
331 tcomplain ();
332}
333
334static enum target_xfer_status
335delegate_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)
336{
337 self = self->beneath;
338 return self->to_xfer_partial (self, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
339}
340
341static enum target_xfer_status
342tdefault_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)
343{
344 return TARGET_XFER_E_IO;
345}
346
46917d26
TT
347static int
348delegate_supports_btrace (struct target_ops *self)
349{
350 self = self->beneath;
351 return self->to_supports_btrace (self);
352}
353
354static int
355tdefault_supports_btrace (struct target_ops *self)
356{
357 return 0;
358}
359
1101cb7b
TT
360static void
361install_delegators (struct target_ops *ops)
362{
e9a29200
TT
363 if (ops->to_attach == NULL)
364 ops->to_attach = delegate_attach;
bebd3233
TT
365 if (ops->to_post_attach == NULL)
366 ops->to_post_attach = delegate_post_attach;
09da0d0a
TT
367 if (ops->to_detach == NULL)
368 ops->to_detach = delegate_detach;
6b84065d
TT
369 if (ops->to_resume == NULL)
370 ops->to_resume = delegate_resume;
371 if (ops->to_wait == NULL)
372 ops->to_wait = delegate_wait;
373 if (ops->to_store_registers == NULL)
374 ops->to_store_registers = delegate_store_registers;
6c628163
TT
375 if (ops->to_prepare_to_store == NULL)
376 ops->to_prepare_to_store = delegate_prepare_to_store;
f86e59b2
TT
377 if (ops->to_files_info == NULL)
378 ops->to_files_info = delegate_files_info;
6b84065d
TT
379 if (ops->to_insert_breakpoint == NULL)
380 ops->to_insert_breakpoint = delegate_insert_breakpoint;
381 if (ops->to_remove_breakpoint == NULL)
382 ops->to_remove_breakpoint = delegate_remove_breakpoint;
52b51d06
TT
383 if (ops->to_can_use_hw_breakpoint == NULL)
384 ops->to_can_use_hw_breakpoint = delegate_can_use_hw_breakpoint;
61b371f9
TT
385 if (ops->to_insert_hw_breakpoint == NULL)
386 ops->to_insert_hw_breakpoint = delegate_insert_hw_breakpoint;
418dabac
TT
387 if (ops->to_remove_hw_breakpoint == NULL)
388 ops->to_remove_hw_breakpoint = delegate_remove_hw_breakpoint;
61dd109f
TT
389 if (ops->to_remove_watchpoint == NULL)
390 ops->to_remove_watchpoint = delegate_remove_watchpoint;
016facd4
TT
391 if (ops->to_insert_watchpoint == NULL)
392 ops->to_insert_watchpoint = delegate_insert_watchpoint;
6b84065d
TT
393 if (ops->to_stopped_by_watchpoint == NULL)
394 ops->to_stopped_by_watchpoint = delegate_stopped_by_watchpoint;
395 if (ops->to_stopped_data_address == NULL)
396 ops->to_stopped_data_address = delegate_stopped_data_address;
65f160a9
TT
397 if (ops->to_watchpoint_addr_within_range == NULL)
398 ops->to_watchpoint_addr_within_range = delegate_watchpoint_addr_within_range;
d03655e4
TT
399 if (ops->to_region_ok_for_hw_watchpoint == NULL)
400 ops->to_region_ok_for_hw_watchpoint = delegate_region_ok_for_hw_watchpoint;
77cdffe9
TT
401 if (ops->to_can_accel_watchpoint_condition == NULL)
402 ops->to_can_accel_watchpoint_condition = delegate_can_accel_watchpoint_condition;
0343661d
TT
403 if (ops->to_terminal_init == NULL)
404 ops->to_terminal_init = delegate_terminal_init;
ddeaacc9
TT
405 if (ops->to_terminal_inferior == NULL)
406 ops->to_terminal_inferior = delegate_terminal_inferior;
74fcbef9
TT
407 if (ops->to_terminal_ours_for_output == NULL)
408 ops->to_terminal_ours_for_output = delegate_terminal_ours_for_output;
e4a733f1
TT
409 if (ops->to_terminal_ours == NULL)
410 ops->to_terminal_ours = delegate_terminal_ours;
c6ea8f79
TT
411 if (ops->to_terminal_save_ours == NULL)
412 ops->to_terminal_save_ours = delegate_terminal_save_ours;
e19e919f
TT
413 if (ops->to_terminal_info == NULL)
414 ops->to_terminal_info = delegate_terminal_info;
a53f3625
TT
415 if (ops->to_rcmd == NULL)
416 ops->to_rcmd = delegate_rcmd;
6b84065d
TT
417 if (ops->to_can_async_p == NULL)
418 ops->to_can_async_p = delegate_can_async_p;
419 if (ops->to_is_async_p == NULL)
420 ops->to_is_async_p = delegate_is_async_p;
421 if (ops->to_async == NULL)
422 ops->to_async = delegate_async;
423 if (ops->to_xfer_partial == NULL)
424 ops->to_xfer_partial = delegate_xfer_partial;
46917d26
TT
425 if (ops->to_supports_btrace == NULL)
426 ops->to_supports_btrace = delegate_supports_btrace;
1101cb7b
TT
427}
428
429static void
430install_dummy_methods (struct target_ops *ops)
431{
e9a29200 432 ops->to_attach = find_default_attach;
bebd3233 433 ops->to_post_attach = tdefault_post_attach;
09da0d0a 434 ops->to_detach = tdefault_detach;
6b84065d
TT
435 ops->to_resume = tdefault_resume;
436 ops->to_wait = tdefault_wait;
437 ops->to_store_registers = tdefault_store_registers;
6c628163 438 ops->to_prepare_to_store = tdefault_prepare_to_store;
f86e59b2 439 ops->to_files_info = tdefault_files_info;
6b84065d
TT
440 ops->to_insert_breakpoint = memory_insert_breakpoint;
441 ops->to_remove_breakpoint = memory_remove_breakpoint;
52b51d06 442 ops->to_can_use_hw_breakpoint = tdefault_can_use_hw_breakpoint;
61b371f9 443 ops->to_insert_hw_breakpoint = tdefault_insert_hw_breakpoint;
418dabac 444 ops->to_remove_hw_breakpoint = tdefault_remove_hw_breakpoint;
61dd109f 445 ops->to_remove_watchpoint = tdefault_remove_watchpoint;
016facd4 446 ops->to_insert_watchpoint = tdefault_insert_watchpoint;
6b84065d
TT
447 ops->to_stopped_by_watchpoint = tdefault_stopped_by_watchpoint;
448 ops->to_stopped_data_address = tdefault_stopped_data_address;
65f160a9 449 ops->to_watchpoint_addr_within_range = default_watchpoint_addr_within_range;
d03655e4 450 ops->to_region_ok_for_hw_watchpoint = default_region_ok_for_hw_watchpoint;
77cdffe9 451 ops->to_can_accel_watchpoint_condition = tdefault_can_accel_watchpoint_condition;
0343661d 452 ops->to_terminal_init = tdefault_terminal_init;
ddeaacc9 453 ops->to_terminal_inferior = tdefault_terminal_inferior;
74fcbef9 454 ops->to_terminal_ours_for_output = tdefault_terminal_ours_for_output;
e4a733f1 455 ops->to_terminal_ours = tdefault_terminal_ours;
c6ea8f79 456 ops->to_terminal_save_ours = tdefault_terminal_save_ours;
e19e919f 457 ops->to_terminal_info = default_terminal_info;
a53f3625 458 ops->to_rcmd = default_rcmd;
6b84065d
TT
459 ops->to_can_async_p = find_default_can_async_p;
460 ops->to_is_async_p = find_default_is_async_p;
461 ops->to_async = tdefault_async;
462 ops->to_xfer_partial = tdefault_xfer_partial;
46917d26 463 ops->to_supports_btrace = tdefault_supports_btrace;
1101cb7b 464}