45009238edd9156471b2e2fbca531cc720b283ba
[deliverable/binutils-gdb.git] / gdb / annotate.c
1 /* Annotation routines for GDB.
2 Copyright 1986, 1989, 1990, 1991, 1992 Free Software Foundation, Inc.
3
4 This file is part of GDB.
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
19
20 #include "defs.h"
21 #include "annotate.h"
22 #include "value.h"
23 #include "target.h"
24 #include "gdbtypes.h"
25 #include "breakpoint.h"
26 \f
27 static void print_value_flags PARAMS ((struct type *));
28
29 static void
30 print_value_flags (t)
31 struct type *t;
32 {
33 if (can_dereference (t))
34 printf_filtered ("*");
35 else
36 printf_filtered ("-");
37 }
38 \f
39 void
40 breakpoints_changed ()
41 {
42 if (annotation_level > 1)
43 {
44 target_terminal_ours ();
45 printf_unfiltered ("\n\032\032breakpoints-invalid\n");
46 }
47 }
48
49 void
50 annotate_breakpoint (num)
51 int num;
52 {
53 if (annotation_level > 1)
54 printf_filtered ("\n\032\032breakpoint %d\n", num);
55 }
56
57 void
58 annotate_watchpoint (num)
59 int num;
60 {
61 if (annotation_level > 1)
62 printf_filtered ("\n\032\032watchpoint %d\n", num);
63 }
64
65 void
66 annotate_starting ()
67 {
68 if (annotation_level > 1)
69 printf_filtered ("\n\032\032starting\n");
70 }
71
72 void
73 annotate_stopped ()
74 {
75 if (annotation_level > 1)
76 printf_filtered ("\n\032\032stopped\n");
77 }
78
79 void
80 annotate_exited (exitstatus)
81 int exitstatus;
82 {
83 if (annotation_level > 1)
84 printf_filtered ("\n\032\032exited %d\n", exitstatus);
85 }
86
87 void
88 annotate_signalled ()
89 {
90 if (annotation_level > 1)
91 printf_filtered ("\n\032\032signalled\n");
92 }
93
94 void
95 annotate_signal_name ()
96 {
97 if (annotation_level > 1)
98 printf_filtered ("\n\032\032signal-name\n");
99 }
100
101 void
102 annotate_signal_name_end ()
103 {
104 if (annotation_level > 1)
105 printf_filtered ("\n\032\032signal-name-end\n");
106 }
107
108 void
109 annotate_signal_string ()
110 {
111 if (annotation_level > 1)
112 printf_filtered ("\n\032\032signal-string\n");
113 }
114
115 void
116 annotate_signal_string_end ()
117 {
118 if (annotation_level > 1)
119 printf_filtered ("\n\032\032signal-string-end\n");
120 }
121
122 void
123 annotate_signal ()
124 {
125 if (annotation_level > 1)
126 printf_filtered ("\n\032\032signal\n");
127 }
128 \f
129 void
130 annotate_breakpoints_headers ()
131 {
132 if (annotation_level > 1)
133 printf_filtered ("\n\032\032breakpoints-headers\n");
134 }
135
136 void
137 annotate_field (num)
138 int num;
139 {
140 if (annotation_level > 1)
141 printf_filtered ("\n\032\032field %d\n", num);
142 }
143
144 void
145 annotate_breakpoints_table ()
146 {
147 if (annotation_level > 1)
148 printf_filtered ("\n\032\032breakpoints-table\n");
149 }
150
151 void
152 annotate_record ()
153 {
154 if (annotation_level > 1)
155 printf_filtered ("\n\032\032record\n");
156 }
157
158 void
159 annotate_breakpoints_table_end ()
160 {
161 if (annotation_level > 1)
162 printf_filtered ("\n\032\032breakpoints-table-end\n");
163 }
164
165 void
166 annotate_frames_invalid ()
167 {
168 if (annotation_level > 1)
169 {
170 target_terminal_ours ();
171 printf_unfiltered ("\n\032\032frames-invalid\n");
172 }
173 }
174
175 void
176 annotate_field_begin (type)
177 struct type *type;
178 {
179 if (annotation_level > 1)
180 {
181 printf_filtered ("\n\032\032field-begin ");
182 print_value_flags (type);
183 printf_filtered ("\n");
184 }
185 }
186
187 void
188 annotate_field_name_end ()
189 {
190 if (annotation_level > 1)
191 printf_filtered ("\n\032\032field-name-end\n");
192 }
193
194 void
195 annotate_field_value ()
196 {
197 if (annotation_level > 1)
198 printf_filtered ("\n\032\032field-value\n");
199 }
200
201 void
202 annotate_field_end ()
203 {
204 if (annotation_level > 1)
205 printf_filtered ("\n\032\032field-end\n");
206 }
207 \f
208 void
209 annotate_quit ()
210 {
211 if (annotation_level > 1)
212 printf_filtered ("\n\032\032quit\n");
213 }
214
215 void
216 annotate_error ()
217 {
218 if (annotation_level > 1)
219 printf_filtered ("\n\032\032error\n");
220 }
221
222 void
223 annotate_error_begin ()
224 {
225 if (annotation_level > 1)
226 fprintf_filtered (gdb_stderr, "\n\032\032error-begin\n");
227 }
228
229 void
230 annotate_value_history_begin (histindex, type)
231 int histindex;
232 struct type *type;
233 {
234 if (annotation_level > 1)
235 {
236 printf_filtered ("\n\032\032value-history-begin %d ", histindex);
237 print_value_flags (type);
238 printf_filtered ("\n");
239 }
240 }
241
242 void
243 annotate_value_begin (type)
244 struct type *type;
245 {
246 if (annotation_level > 1)
247 {
248 printf_filtered ("\n\032\032value-begin ");
249 print_value_flags (type);
250 printf_filtered ("\n");
251 }
252 }
253
254 void
255 annotate_value_history_value ()
256 {
257 if (annotation_level > 1)
258 printf_filtered ("\n\032\032value-history-value\n");
259 }
260
261 void
262 annotate_value_history_end ()
263 {
264 if (annotation_level > 1)
265 printf_filtered ("\n\032\032value-history-end\n");
266 }
267
268 void
269 annotate_value_end ()
270 {
271 if (annotation_level > 1)
272 printf_filtered ("\n\032\032value-end\n");
273 }
274
275 void
276 annotate_display_begin ()
277 {
278 if (annotation_level > 1)
279 printf_filtered ("\n\032\032display-begin\n");
280 }
281
282 void
283 annotate_display_number_end ()
284 {
285 if (annotation_level > 1)
286 printf_filtered ("\n\032\032display-number-end\n");
287 }
288
289 void
290 annotate_display_format ()
291 {
292 if (annotation_level > 1)
293 printf_filtered ("\n\032\032display-format\n");
294 }
295
296 void
297 annotate_display_expression ()
298 {
299 if (annotation_level > 1)
300 printf_filtered ("\n\032\032display-expression\n");
301 }
302
303 void
304 annotate_display_expression_end ()
305 {
306 if (annotation_level > 1)
307 printf_filtered ("\n\032\032display-expression-end\n");
308 }
309
310 void
311 annotate_display_value ()
312 {
313 if (annotation_level > 1)
314 printf_filtered ("\n\032\032display-value\n");
315 }
316
317 void
318 annotate_display_end ()
319 {
320 if (annotation_level > 1)
321 printf_filtered ("\n\032\032display-end\n");
322 }
323
324 void
325 annotate_arg_begin ()
326 {
327 if (annotation_level > 1)
328 printf_filtered ("\n\032\032arg-begin\n");
329 }
330
331 void
332 annotate_arg_name_end ()
333 {
334 if (annotation_level > 1)
335 printf_filtered ("\n\032\032arg-name-end\n");
336 }
337
338 void
339 annotate_arg_value (type)
340 struct type *type;
341 {
342 if (annotation_level > 1)
343 {
344 printf_filtered ("\n\032\032arg-value ");
345 print_value_flags (type);
346 printf_filtered ("\n");
347 }
348 }
349
350 void
351 annotate_arg_end ()
352 {
353 if (annotation_level > 1)
354 printf_filtered ("\n\032\032arg-end\n");
355 }
356
357 void
358 annotate_source (filename, line, character, mid, pc)
359 char *filename;
360 int line;
361 int character;
362 int mid;
363 CORE_ADDR pc;
364 {
365 if (annotation_level > 1)
366 printf_filtered ("\n\032\032source ");
367 else
368 printf_filtered ("\032\032");
369
370 printf_filtered ("%s:%d:%d:%s:", filename,
371 line, character,
372 mid ? "middle" : "beg");
373 print_address_numeric (pc, 0, gdb_stdout);
374 printf_filtered ("\n");
375 }
376
377 void
378 annotate_frame_begin (level, pc)
379 int level;
380 CORE_ADDR pc;
381 {
382 if (annotation_level > 1)
383 {
384 printf_filtered ("\n\032\032frame-begin %d ", level);
385 print_address_numeric (pc, 0, gdb_stdout);
386 printf_filtered ("\n");
387 }
388 }
389
390 void
391 annotate_function_call ()
392 {
393 if (annotation_level > 1)
394 printf_filtered ("\n\032\032function-call\n");
395 }
396
397 void
398 annotate_signal_handler_caller ()
399 {
400 if (annotation_level > 1)
401 printf_filtered ("\n\032\032signal-handler-caller\n");
402 }
403
404 void
405 annotate_frame_address ()
406 {
407 if (annotation_level > 1)
408 printf_filtered ("\n\032\032frame-address\n");
409 }
410
411 void
412 annotate_frame_address_end ()
413 {
414 if (annotation_level > 1)
415 printf_filtered ("\n\032\032frame-address-end\n");
416 }
417
418 void
419 annotate_frame_function_name ()
420 {
421 if (annotation_level > 1)
422 printf_filtered ("\n\032\032frame-function-name\n");
423 }
424
425 void
426 annotate_frame_args ()
427 {
428 if (annotation_level > 1)
429 printf_filtered ("\n\032\032frame-args\n");
430 }
431
432 void
433 annotate_frame_source_begin ()
434 {
435 if (annotation_level > 1)
436 printf_filtered ("\n\032\032frame-source-begin\n");
437 }
438
439 void
440 annotate_frame_source_file ()
441 {
442 if (annotation_level > 1)
443 printf_filtered ("\n\032\032frame-source-file\n");
444 }
445
446 void
447 annotate_frame_source_file_end ()
448 {
449 if (annotation_level > 1)
450 printf_filtered ("\n\032\032frame-source-file-end\n");
451 }
452
453 void
454 annotate_frame_source_line ()
455 {
456 if (annotation_level > 1)
457 printf_filtered ("\n\032\032frame-source-line\n");
458 }
459
460 void
461 annotate_frame_source_end ()
462 {
463 if (annotation_level > 1)
464 printf_filtered ("\n\032\032frame-source-end\n");
465 }
466
467 void
468 annotate_frame_where ()
469 {
470 if (annotation_level > 1)
471 printf_filtered ("\n\032\032frame-where\n");
472 }
473
474 void
475 annotate_frame_end ()
476 {
477 if (annotation_level > 1)
478 printf_filtered ("\n\032\032frame-end\n");
479 }
480 \f
481 void
482 annotate_array_section_begin (index, elttype)
483 int index;
484 struct type *elttype;
485 {
486 if (annotation_level > 1)
487 {
488 printf_filtered ("\n\032\032array-section-begin %d ", index);
489 print_value_flags (elttype);
490 printf_filtered ("\n");
491 }
492 }
493
494 void
495 annotate_elt_rep (repcount)
496 unsigned int repcount;
497 {
498 if (annotation_level > 1)
499 printf_filtered ("\n\032\032elt-rep %u\n", repcount);
500 }
501
502 void
503 annotate_elt_rep_end ()
504 {
505 if (annotation_level > 1)
506 printf_filtered ("\n\032\032elt-rep-end\n");
507 }
508
509 void
510 annotate_elt ()
511 {
512 if (annotation_level > 1)
513 printf_filtered ("\n\032\032elt\n");
514 }
515
516 void
517 annotate_array_section_end ()
518 {
519 if (annotation_level > 1)
520 printf_filtered ("\n\032\032array-section-end\n");
521 }
522
523 static void
524 breakpoint_changed (b)
525 struct breakpoint *b;
526 {
527 breakpoints_changed ();
528 }
529
530 void
531 _initialize_annotate ()
532 {
533 if (annotation_level > 1)
534 {
535 delete_breakpoint_hook = breakpoint_changed;
536 enable_breakpoint_hook = breakpoint_changed;
537 disable_breakpoint_hook = breakpoint_changed;
538 }
539 }
This page took 0.04518 seconds and 4 git commands to generate.