forked from Gigallith/gdb-tricore
-
Notifications
You must be signed in to change notification settings - Fork 6
/
ChangeLog-1998
7220 lines (5767 loc) · 288 KB
/
ChangeLog-1998
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Thu Dec 31 15:26:13 1998 Stan Shebs <[email protected]>
* corelow.c (core_ops): Don't initialize statically.
(init_core_ops): New function, fills in core_ops.
(_initialize_corelow): Use it.
Thu Dec 31 16:54:30 1998 David Taylor <[email protected]>
The following changes were made by
Elena Zannoni <[email protected]>
Edith Epstein <[email protected]>
David Taylor <[email protected]>
* config/pa/tm-hppa.h (INSTRUCTION_NULLIFIED): Change to read
nullify instruction bit from IPSW only when we are not in a system
call.
(STRCAT_REGISTER, pa_do_strcat_registers_info): Additional
parameter -- precision.
* Makefile.in (BUILD_TUI): To build the tui, only when configured
with --enable-tui.
(YLWRAP): Use ylwrap to avoid problems on systems w/o bison.
(gdb$(EXEEXT)): Make it dependent on BUILD_TUI.
(all-tui): Remove dependency from phony target.
(c-exp.tab.c): Use ylwrap instead of bison.
(jv-exp.tab.c): Ditto.
(f-exp.tab.c): Ditto.
(m2-exp.tab.c): Ditto.
* configure.in (ENABLE_CFLAGS): Define and export BUILD_TUI.
* configure: Regenerated.
* c-typeprint.c (c_type_print_base): Get to the method name by
skipping over all the namespaces, classes and '::'.
* infcmd.c (run_command): Only call SOLIB_RESTART if it's
defined.
(detach_command): Ditto.
* infptrace.c (call_ptrace): Add some debugging code.
* infrun.c (follow_inferior_fork): Only define on HP.
(wait_for_inferior): Only call SOLIB_IN_DYNAMIC_LINKER if we have
shared libraries; restore test of IN_SOLIB_DYNSYM_RESOLVE_CODE
removed by HP.
* Makefile.in (ALLDEPFILES): Add somread.c, hp-psymtab-read.c,
hp-symtab-read.c.
(SFILES): Remove the above files
(COMMON_OBS): Remove somread.o
(SFILES): Add the tui files to this, so they get
included in etags tables.
(all-tui): New rule, which does a recursive make in the tui
subdir.
(gdb$(EXEEXT)): Add tui-all to the list of
dependencies, and add tui/libtui.a to the link list.
(tui/libtui.a): When recursing, pass down
${FLAGS_TO_PASS}. And don't echo the make command. This is
closer to what the other recursions do.
(HFILES_NO_SRCDIR) add hpread.h.
(COMMON_OBS): Add hp-psymtab-read.o, hp-symtab-read.o
Allow the TUI code to be conditionally enabled.
(TUI_TARGET, TUI_LIBRARY): New variables, whose values are set by
the configuration script. They're set to the empty string when
the TUI isn't enabled.
(gdb$(GDBEXT)): Use those, instead of referring to tui-all and
tui/libtui.a directly.
* Makefile.in: Avoid spurious relinking.
(gdb$(EXEEXT)): Depend on the actual tui library, not on a
fictitious target. Since the fictitious target never existed, make
would always relink.
(tui/libtui.a): Renamed from all-tui. Always recurse to make sure
the library is up to date.
(TUI_TARGET): Variable removed; there's no need for it any more.
* Makefile.in: Look for tui include files in the tui source dir.
* Use automake's `aclocal' program to generate aclocal.m4, to allow
us to use automake macros in configure.in with impunity.
* acconfig.h: Add an entry for the `TUI' symbol.
* acinclude.m4: New file, containing the code from the old
aclocal.m4. Incorporate (by reference) ../bfd/acinclude.m4, not
../bfd/aclocal.m4, since we only want bfd's local macros.
* aclocal.m4: Now automagically generated. Just run aclocal!
* annotate.c (annotate_catchpoint): New function.
* annotate.h: Taking the new includes (symtab.h and gdbtypes.h).
not taking the ansic C build fix.
(annotate_catchpoint): Declare.
* blockframe.c (blockvector_for_pc_sect): Check that the end of
the block is >= to the pc, not just >.
* breakpoint.c (create_temp_exception_breakpoint): #If it out --
nothing calls it.
(bpstat_stop_status): Don't call SOLIB_HAVE_LOAD_EVENT if it's not
defined; don't call SOLIB_HAVE_UNLOAD_EVENT if it's not defined.
(bpstat_get_triggered_catchpoints): If we don't have shared
library support, then don't call SOLIB_LOADED_LIBRARY_PATHNAME nor
SOLIB_UNLOADED_LIBRARY_PATHNAME.
(watch_command_1): Don't require a run before a watch command
unless we're on HP [it's an HP OS bug, not a generic limitation]
(catch_load_command_1): Don't define if no shared libraries.
(catch_command_1): Don't claim to support fork catchpoints unless
CHILD_INSERT_FORK_CATCHPOINT is defined, don't claim to support
vfork catchpoints unless CHILD_INSERT_VFORK_CATCHPOINT is defined,
don't clain to support shared library load catchpoints if shared
libraries aren't supported, and don't claim to support exec
catchpoints unless CHILD_INSERT_EXEC_CATCHPOINT is defined
(bpstat_do_actions): If we just set cmd to NULL, don't then try to
set it to cmd->next as we'll SEGV.
(bpstat_do_actions): Simplify significantly. It's
now almost as simple as before the merge and it no longer has the
HP bug that breakpoint commands are executed repeatedly.
(break_at_finish_command_1): Rewrite and make sure
selected_frame points to a frame before using it. Fix string
termination error.
(break_at_finish_at_depth_command_1): Ditto.
(can_use_hw_watchpoints): New static variable.
(read_memory_nobpt): Test for breakpoint type bp_none.
(insert_breakpoints): Test for breakpoint type bp_catch_exec;
insure have a current frame before getting the frame address.
(remove_breakpoints): Check for breakpoints of types bp_none,
bp_catch_fork, bp_catch_vfork, and bp_catch_exec.
(bpstat_stop_status): Fix updates of b->hit_count.
(bpstat_have_active_hw_watchpoints): New function.
(create_exec_event_watchpoint): New function.
(watch_command_1): Use can_use_hw_watchpoints.
(catch_fork_command_1): Change name of function to call from
target_create_catch_(v)fork_hook to create_(v)fork_even_catchpoint.
(delete_breakpoint): Test for already deleted breakpoints; add
support for bp_catch_fork, bp_catch_vfork, and bp_catch_exec
breakpoints.
(_initialize_breakpoint): Add can-use-hw-watchpoints to list of
user settable debugger variables.
(clear_command): When there is no argument
to the clear command, delete all breakpoints that are hit at
default line. This will include a breakpoint whose line number
does not correspond to the default line, but has been set at
the default address.
(delete_breakpoint): Don't call bpstat_clear_actions, instead
clear things explicitly; if clearing breakpoint_at, then also
clear any associated actions so that bpstat_do_actions won't try
to execute them.
(_initialize_breakpoint): Fix function name for bx command.
(tbreak_command): Remove static from declaration.
(maintenance_info_breakpoints): Ditto.
(reattach_breakpoints): New funct definition, used with with
hardware watchpoints
(breakpoint_1): Change format and add entries to bptypes[]
(maintenance_info_breakpoints): Function is no longer static
(_initialize_breakpoint): Removed a comment.
(exception_catchpoints_are_fragile,
exception_support_initialized): Define.
(breakpoint_here_p): Fixed syntax error in conditional
(disable_watchpoints_before_interactive_call_start): Fixed call to
check_duplicates. Need a section parameter.
(enable_watchpoints_after_interactive_call_stop): Fixed call to
check_duplicates. Need a section parameter.
(breakpoint_re_set_one): Fixed call to check_duplicates. Need a
section parameter.
(delete_command): Fixed syntax error in conditional
(breakpoint_re_set): Fixed some typos.
(args_for_catchpoint_enable): New type for handling exceptions.
(current_exception_event): New variable for handling exceptions.
(insert_breakpoints): Check for additional breakpoint types --
bp_catch_throw, bp_catch_catch, call_disabled. Also, do some
additional work to handle an exception catchpoint.
(remove_breakpoint): There are additional breakpoint types to
check for: Bp_catch_throw, bp_catch_catch, call_disabled. Also do
some additional work to remove the exception catchpoints
(breakpoint_init_inferior): New input parameter. If there are
exception catchpoints delete them.
(breakpoint_here_p): There are additional breakpoint enable
settings to check for: Shlib_disabled, call_disabled
(breakpoint_thread_match): There are additional breakpoint enable
settings to check for: Call_disabled
(ep_is_catchpoint): There are additional breakpoint types to check
for: Bp_catch_throw, bp_catch_catch
(ep_is_exception_catchpoint): New function
(bpstat_find_step_resume_breakpoint): New function
(bpstat_do_actions): Introduce a local copy of the bpstat
structure.
(print_it_normal): There are additional breakpoint types to check
for: Bp_catch_throw, bp_catch_catch Changeing the control
structure a bit (adding else ifs) Add code to print out info about
exceptions.
(bpstat_stop_status): There are additional breakpoint enable
settings to check for: Call_disabled. there are additional
breakpoint types to chack for: Bp_catch_catch and bp_catch_throw.
Check to see if stopped due to an exception. Minor fixes to the
catch_errors calls. Make sure to count all encountered
breakpoints. There was something funky going on previously with
the counting.
(bpstat_what): Add cases for new breakpoint types:
bp_catch_catch, bp_catch_throw.
(bpstat_get_triggered_catchpoints): Check for new breakpoint types
: Bp_catch_catch, bp _catch_throw.
(breakpoint_1): Account for new breakpoint types.
(describe_other_breakpoints): Account for new breakpoint enable
setting (call_disabled)
(check_duplicates): Account for new breakpoint enable setting
(call_disabled)
(disable_breakpoints_in_shlibs): New function
(disable_watchpoints_before_interactive_call_start): New function
(mention): Account for new breakpoint types.
(break_command_1): Some additional checking for a valid PC.
(watch_command_1): Some dditional checking to prevent a watch
before a run command.
(ep_parse_optional_filename): Simplified for loop.
(create_exception_catchpoint): New function
(cover_target_enable_exception_callback): New function
(handle_gnu_4_16_catch_command): This used to be thcatch_command_1
function.e
(create_temp_exception_breakpoint): New function
(catch_command_1): Differs from gdb 4.16 and gdb 4.17. Is now
calling catch_exception_command_1 using the EX_EVENT_CATCH and
EX_EVENT_THROW values as parameters.
(clear_command): Additional comments
(delete_breakpoint): Handle exceptions. Check for additional
breakpoint enable settings: Shlib_disabled, call_disabled.
(delete_command): Hp folks are claiming that we should not delete
shlib_event breakpoints
(breakpoint_re_set_one): Moved call to check_duplicates. Add new
breakpoint types to switch statement.
(breakpoint_re_set_thread): New function
(enable_command): Account for new breakpoint types.
(insertion_state_t): New enumerated type.
(remove_breakpoint): New param in funct prototype.
(insert_breakpoints): Check for bp_catch_fork and bp_catch_vfork.
(remove_breakpoints): Changed call to remove_breakpoint.
(detach_breakpoints): New function.
(remove_breakpoint): New parameter, is. Also changed the
way b->inserted is set.
(ep_is_catchpoint): New function.
(ep_is_shlib_catchpoint): New function.
(print_it_normal): Check for bp_catch_load, bp_catch_unload,
bp_catch_fork, bp_catch_vfork, bp_catch_exec. Also new code
to print out catchpoints properly.
(bpstat_stop_status): Check for bp_catch_fork, bp_catch_vfork,
and bp_catch_exec. Also, some code to check for catching a
shared library load/unload.
(bpstat_what): Added catch_shlib_event to class enumeration.
Defined new macro, shlr. Expanded the bpstat_what_main_action
table. Add cases for bp_catch_load, bp_catch_unload,
bp_catch_fork, bp_catch_vfork, and bp_catch_exec.
(bpstat_get_triggered_catchpoints): New function.
(breakpoint_1): Changes to bptypes definition. Also check for
bp_catch_load, bp_catch_unload, bp_catch_fork, bp_catch_vfork,
bp_catch_exec. Similar changes to the switch statement.
(set_raw_breakpoint): Initialize new breakpoint structure fields.
dll_pathname, triggered_dll_pathname, forked_inferior_pid,
exec_pathname.
(create_solib_load_unload_event_breakpoint): New function.
(create_solib_load_event_breakpoint): New function.
(create_solib_unload_event_breakpoint): New function.
(create_fork_vfork_event_catchpoint): New function.
(create_fork_event_catchpoint): New function.
(create_vfork_event_catchpoint): New function.
(mention): New cases for bp_catch_load, bp_catch_unload,
bp_catch_fork, bp_catch_vfork, bp_catch_exec.
(ep_skip_leading_whitespace): New function.
(ep_find_event_name_end): New function.
(ep_parse_optional_if_clause): New function.
(ep_parse_optional_filename): New function.
(catch_fork_kind): New enumerated type.
(catch_fork_command_1): New function.
(catch_exec_command_1): New function.
(catch_load_command_1): New function.
(catch_unload_command_1): New function.
(catch_throw_command_1): New function.
(catch_command_1): Now calls catch_throw_command_1.
(tcatch_command): New function.
(delete_breakpoint): Changed call to remove_breakpoint.
Also free the new fields in the breakpoint structure.
(breakpoint_re_set_one): Handle bp_catch_load, bp_catch_unload,
bp_catch_fork, bp_catch_vfork, bp_catch_exec.
(disable_command): Handle bp_catch_load, bp_catch_unload,
bp_catch_fork, bp_catch_vfork, bp_catch_exec.
(enable_command): Handle bp_catch_load, bp_catch_unload,
bp_catch_fork, bp_catch_vfork, bp_catch_exec.
(_initialize_breakpoint): Alter add_com call for catchpoints,
add add_com call for watchpoints.
* breakpoint.h (enum bptype): New entries bp_catch_catch,
bp_catch_throw, and bp_none, bp_catch_load, bp_catch_unload,
bp_catch_fork, bp_catch_vfork,bp_catch_exec. Add declarations for
new functions bpstat_have_active_hw_watchpoints and
create_exec_event_catchpoint.
(tbreak_command): Add prototype.
(update_breakpoints_after_exec): Add prototype; update comments.
(reattach_breakpoints): New funct prototype declaration.
(enable): New enumerated value call_disabled.
(bpstat_find_step_resume_breakpoint): New funct decl.
(inf_context): New enumerated type.
(breakpoint_re_set_thread): New funct decl.
(breakpoint_init_inferior): New parameter.
(disable_watchpoints_before_interactive_call_start): New funct decl.
(enable_watchpoints_after_interactive_call_stop): New funct decl.
(disable_breakpoints_in_shlibs): New funct decl.
(struct breakpoint): New fields, dll_pathname,triggered_dll_pathname,
forked_inferior_pid,exec_pathname BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
(bpstat_get_triggered_catchpoints): New function.
(detach_breakpoints): New function.
(create_solib_load_event_breakpoint): New function.
(create_solib_unload_event_breakpoint) New function.
(create_fork_event_catchpoint): New function.
(create_vfork_event_catchpoint): New function.
(ep_is_catchpoint): New function.
(ep_is_shlib_catchpoint) New function.
(enum bpstat_what_main_action): New entry.
* buildsym.c (finish_block): Get rid of processing_hp_compilation;
handle LOC_INDIRECT case. Set the BLOCK_GCC_COMPILED to the right
compiler.
(push_context): Add symbols for parameters to the context_stack.
(merge_symbol_lists): New function. Merges two symbol lists.
(struct context_stack): Add new field param.
(processing_hp_compilation): New external var.
* c-exp.y: Use external flag hp_som_som_object_present to decide
whether code was compiled by HP's compilers. Add two new C++
tokens for true and false.
(yylex): Check for template name is done differently for the
HP/aCC compiler case; change some of the template processing code
for handling HP aCC templates.
* c-lang.c (c_create_fundamental_type): Added case to handle
template args. Handle FT_BOOLEAN type. Set no sign flag for
FT_CHAR.
(cplus_builtin_types): New structure for c++ builtin types.
(cplus_language_defn): Use cplus_builtin_types instead of
c_builtin_types.
* c-typeprint.c (c_type_print_base): Don't print 'privete' label
for a class if all members are private, similarly don't print
'public' for a struct. Add support for sized enums (HP/aCC). get
rid of the 'static' keyword printed by the demangler for member
function, when printing the type of a class. 'static' will be
added by this function. If the demangled name is null, and the
method is not stubbed, get the signature by looking at the
information stored in the symbol structure. Remove printing of
'const' and 'volatile' keywords for methods. This is now taken
care as part of the demangled member names.
(cp_type_print_method_args): New function. To print a C++ method
arguments and name to the output stream.
(c_type_print_cv_qualifier): New function. Print out "const" and
"volatile" attributes.
(c_type_print_varspec_prefix): Print const or volatile qualifiers.
(c_type_print_args): Print 'void' for c++.
(c_type_print_varspec_suffix): Print 'void' for a no argument
function.
(c_type_print_base): Print const or volatile qualifiers. Do not
print 'unnamed union' if HP aCC compiler used. Distinguish
between struct and class based on the DECLARED_TYPE. Handle
HP/aCC compiler case for not printing vtable. Add Template
support.
(cp_type_print_derivation_info): Print out 'protected' when
appropriate. This applies only to HP's compilers, not gcc.
(c_val_print): Added parameter embedded_offset. Add
embedded_offset to valaddr in function calls; fix calls to
val_print and cp_print_value_fields. process TYPE_CODE_METHOD as
well. moved call to check_typedef out of conditional. added
embedded offset param to val_print call.
(c_value_print): Add new parameter to call to val_print.
handle pointer to class case. Attempt to
determine the real type of the object to be printed.
ensure that const char *, const unsigned char *
come out without the type but the volatile variants
and the signed variants don't.
* coff-solib.c (coff_solib_add): Add parameters to call
to symbol_file_add.
* coff-solib.h: (Solib_REMOVE_INFERIOR_HOOK): New macro. defined
to 0. functionality not implemented for coff.
(SOLIB_CREATE_CATCH_LOAD_HOOK): New macro, generate error message
for coff.
(SOLIB_CREATE_CATCH_UNLOAD_HOOK): Ditto.
(SOLIB_HAVE_LOAD_EVENT): Ditto.
(SOLIB_LOADED_LIBRARY_PATHNAME): Ditto.
(SOLIB_HAVE_UNLOAD_EVENT): Ditto.
(SOLIB_UNLOADED_LIBRARY_PATHNAME): Ditto.
(SOLIB_IN_DYNAMIC_LINKER): Ditto.
(SOLIB_RESTART): Ditto.
* command.c (find_cmd): New function. (lookup_cmd_1): Call it,
change parsing if tui_version or xdb_commands is set.
(_initialize_command): Install new alias if xdb_commands is set.
* complaints.h: Add ifdef...endif pair at beginning and end of file.
* config.in, configure: Regenerated.
* config/pa/hppabsd.mh (NATDEPFILES): Added new files
hp-psymtab-read.o and hp-symtab-read.o.
* config/pa/hppahpux.mh (NATDEPFILES): Ditto.
* config/pa/hppahpux.mh (TERMCAP): Use -lHcurses.
* config/pa/hppaosf.mh (NATDEPFILES): Ditto.
* config/pa/hpux1020.mh (TERMCAP): Use -lHcurses.
(MH_CFLAGS): New flag, -D__HP_CURSES, this define
is used by HP's linker to find the correct curses library.
* config/pa/hpux1020.mh: New file.
* config/pa/hpux1020.mt: New file.
* config/pa/hpux1100.mh (TERMCAP): Link against -lcurses, not
-lHcurses. The latter does not contain mvwaddstr, wscrl, or
wstbwlmkfzz.
* config/pa/hpux1100.mh (TERMCAP): Use -lHcurses.
(MH_CFLAGS): New flag, -D__HP_CURSES, this define
is used by HP's linker to find the correct curses library.
* config/pa/hpux1100.mh (TERMCAP): When hosting on hpux 11.00, use
-lHcurses rather than -lcurses.
* config/pa/hpux1100.mh: New file.
* config/pa/hpux1100.mt: New file.
* config/pa/nm-hppah.h (CHILD_HAS_SYSCALL_EVENT): New macro
(CHILD_THREAD_ALIVE): New macro
(STOPPED_BY_WATCHPOINT): Add a condition to the macro,
! stepped_after_stopped_by_watchpoint
(TARGET_ENABLE_HW_WATCHPOINTS): New macro
(hppa_enable_hw_watchpoints): New funct decl
(TARGET_DISABLE_HW_WATCHPOINTS): New macro
( hppa_disable_hw_watchpoints): New funct decl
these are for HP's implementation of fast
watchpoints (via page protection).
(target_pid_to_str): New macro, calls hppa_pid_to_str
(target_tid_to_str): New macro, calls hppa_tid_to_str
* config/pa/nm-hppah.h (CHILD_POST_WAIT): Delete;
(CHILD_CREATE_CATCH_FORK_HOOK): Replace with
CHILD_INSERT_FORK_CATCHPOINT and CHILD_REMOVE_FORK_CATCHPOINT.
(CHILD_CREATE_CATCH_VFORK_HOOK): Replace with
CHILD_INSERT_VFORK_CATCHPOINT and CHILD_REMOVE_VFORK_CATCHPOINT.
(CHILD_CAN_FOLLOW_VFORK_PRIOR_TO_EXEC,
CHILD_INSERT_EXEC_CATCHPOINT, CHILD_REMOVE_EXEC_CATCHPOINT,
CHILD_HAS_EXECD, CHILD_REPORTED_EXEC_EVENTS_PER_EXEC_CALL,
CHILD_POST_ATTACH, TARGET_HAS_HARDWARE_WATCHPOINTS,
TARGET_CAN_USE_HARDWARE_WATCHPOINT,
TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT,
TARGET_RANGE_PROFITABLE_FOR_HW_WATCHPOINT, STOPPED_BY_WATCHPOINT,
HAVE_NONSTEPPABLE_WATCHPOINT, target_insert_watchpoint,
target_remote_watchpoint): New macros.
* config/pa/nm-hppah.h (CHILD_XFER_MEMORY): Reinsert accidentally
deleted define.
* config/pa/nm-hppah.h:
(PREPARE_TO_PROCEED): Defined macro to use
hppa_prepare_to_proceed.
(hppa_pid_to_str): Extern decl.
(hppa_tid_to_str): Extern decl.
(target_pid_or_tid_to_str): New macro definition.
(hppa_pid_or_tid_to_str): Extern decl.
(ENSURE_VFORKING_PARENT_REMAINS_STOPPED): New macro - for
handling events caused by a call to vfork.
(hppa_ensure_vforking_parent_remains_stopped): Extern decl.
(RESUME_EXECD_VFORKING_CHILD_TO_GET_PARENT_VFORK): New macro -
for handling events caused by a call to vfork.
(hppa_resume_execd_vforking_child_to_get_parent_vfork): Extern decl.
* config/pa/nm-hppah.h: Fix PREPARE_TO_PROCEED macro.
* config/pa/nm-hppah.h: Fix for gcc compile on HPUX, change
PT_RDUAREA to PT_RUAREA.
* config/pa/nm-hppah.h: Introduced an HPUXHPPA define.
A bit of a hack so that I can ifdef some code that
only works for the HP wildebeest debugger.
* config/pa/nm-hppah.h: Lots of new CHILD_ defines;
process_event_kind enum.
* config/pa/tm-hppa.h (BREAKPOINT32): New define.
(CALL_DUMMY_HAS_COMPLETED): New define.
* config/pa/tm-hppa.h (STACK_ALIGN): New macro.
(NO_EXTRA_ALIGNMENT_NEEDED): New macro.
(PC_REQUIRES_RUN_BEFORE_USE): New macro.
(REGISTER_NAMES): Formatting in file changed.
(CR27_REGNUM): Base register for thread local storage.
(USE_STRUCT_CONVENTION): New macro used to decide whether
a function returning a value of type type will
put it on the stack or into registers (based on the
PA risc calling conventions).
(EXTRACT_RETURN_VALUE): Fixed calculation for extracting return value.
(VALUE_RETURNED_FROM_STACK): New macro.
(TARGET_READ_PC): Declared the function used in the definition.
(SKIP_TRAMPOLINE_CODE): Declared the function used in the definition.
(TARGET_WRITE_PC): Declared the function used in the definition.
(TARGET_READ_FP): Declared the function used in the definition.
* config/pa/tm-hppa.h (STRCAT_REGISTER): Define macro for
future use.
(pa_do_strcat_registers_info): Moved function decl from
defs.h to this HPUX specific .h file.
* config/pa/tm-hppa.h (USE_STRUCT_CONVENTION): Type_LENGTH returns
bytes, not bits; fix off by 8 error.
* config/pa/tm-hppa.h:
New comment for obj_unwind_info definition
New typedef, obj_private_struct
* config/pa/tm-hppa.h: Delete most target_ macros -- use default
versions instead; remove extraneous comma from proc_wait macro.
* config/pa/tm-hppa.h: Get rid of macro HP_COMPILED_TARGET.
* config/pa/tm-hppa.h: Removed redefinitions of
USE_STRUCT_CONVENTION and STACK_ALIGN macros.
* config/pa/tm-hppa.h: Some new definitions
New macros: Arg0_REGNUM, ARG1_REGNUM, ARG2_REGNUM, ARG3_REGNUM.
target_pid_to_exec_file, target_acknowledge_forked_child,
target_create_catch_fork_hook, target_create_catch_vfork_hook,
target_has_forked, target_has_vforked, require_attach,
require_detach, proc_wait
New funct decls: Hppa_pid_to_exec_file,
hppa_acknowledge_forked_child, hppa_create_catch_fork_hook,
hppa_create_catch_vfork_hook, hppa_target_has_forked,
hppa_target_has_vforked, hppa_require_attach,
hppa_require_detach, process_wait
(unwind_table_entry): Added comments to describe struct fields.
* config/pa/tm-hppah.h (somsolib.h): Include it.
* config/pa/tm-hppah.h:
(CHILD_ENABLE_EXCEPTION_CALLBACK): New define
(CHILD_GET_CURRENT_EXCEPTION_EVENT): New define
* configure.host (hppa-*-hpux10.20, hppa-*-hpux11.0*): New configs.
* configure.in (AC_CHECK_HEADERS): Add check for term.h.
* configure.in: Add an --enable-tui argument.
* configure.in: Construct tui/Makefile from tui/Makefile.in.
* configure.in: Use AM_PROG_CC_STDC. If we have the GUI, then we
need this to process libgui.h.
* convex-tdep.c (decout): Change FILE to GDB_FILE.
* corefile.c: Include objfiles.h, symfile.h.
(core_file_command): Attempt to determine the name of the symbol
file from the core file.
(read_memory_string): New function.
* corefile.c (core_file_command): Temporary hack to make non-hpux
work. For, non-hpux, t->to_core_file_to_sym_file does not have a
reasonable value. No target_ops vector on the stack gives it a
non-zero value. fix later.
* corelow.c (core_file_to_sym_file): Added new local variable,
failing command, and do some explicit type castings.
(core_ops): Add three new fields: to_has_syscall_event,
to_enable_exception_callback, to_get_current_exception_event.
Necessary since we still have oldstyle initialization in
this file
* corelow.c: Include unistd.h
(core_file_to_sym_file): New function
(core_file_thread_alive): New function
(core_ops): Added new target ops vector fields. see below. And
yes we definitiely need to initialize them here, as long as
we're using static initialization.
* cxux-nat.c (add_shared_symbol_files): Additonal params for calls
to symbol_file_add.
* defs.h (gdb_file_isatty): New function decl.
* defs.h (GDB_FILE): If TUI is defined, define a structure rather
than making this an alias for FILE.
(gdb_stdout, gdb_stderr): If TUI is defined, then define these
as pointers to variables of type GDB_FILE rather than making them
be aliases for stdout and stderr.
* defs.h (TUIDO): Add definition conditionalized on definition
(or lack thereof) of TUI.
* defs.h (command_class): Add two additional values.
(precision_type): New enum.
* defs.h (gdb_fclose): Add declaration.
* defs.h (store_address): Change prototype to match function.
* defs.h (tui_version, xdb_commands, dbx_commands): Add decl's.
* defs.h (gdb_file_deallocate): New function declaration
* defs.h:
(streamtype): New enumerated type to distinguish between
output to a FILE and output to a buffer.
(tui_stream): New struct type, named GDB_FILE. Contains,
streamtype, FILE, buffer, and bufferlength fields.
(gdb_stdout): Of type GDB_FILE, will pass this around gdb
rather than stdout.
(gdb_stderr): Of type GDB_FILE, will pass this around gdb
rather than stderr.
(fputs_unfiltered_hook): Change stream parameter from FILE to
GDB_FILE
(flush_hook): Change stream parameter from FILE to GDB_FILE
(gdb_fclose): Fix declaration for gdb_fclose; parameter is now of
type GDB_FILE **
(gdb_file_adjust_strbuf): New function declaration. function lives in
utils.c.
(gdb_file_init_astring): New function declaration. function lives
in utils.c
(gdb_file_get_strbuf): New function declaration. function lives
in utils.c
* defs.h: Additional include files included when TUI is defined.
* defs.h: Funct decl source_full_path_of.
* demangle.c: Add HP_DEMANGLING_STYLE_STRING.
* demangle.c: Added new demangling style, EDG_DEMANGLING_STYLE_STRING,
to the demanglers structure. This is for support of
Kuck & Assoc.'s changes for demangling.
* eval.c (evaluate_subexp_standard): C++ member function changes.
* eval.c (evaluate_subexp_standard): Verify TYPE_TARGET_TYPE is
non NULL before dereferencing it.
* eval.c (evaluate_subexp_standard): With HP/aCC compiler it is not possible
to perform inferior calls via function pointers.
Resolve calls to overloaded functions using find_overload_match.
We cannot handle HP/aCC pointers to member functions.
Deal with HP/aCC pointers to members in various kind of expressions.
* f-lang.c (f_printchar): Change FILE to GDB_FILE.
(f_printstr): Ditto.
(emit_char): Ditto.
* f-lang.c (f_printstr): Change stdout to gdb_stdout.
* f-typeprint.c (f_print_type): Change FILE to GDB_FILE.
(f_type_print_varspec_prefix): Ditto.
(f_type_print_args): Ditto.
(f_type_print_varspec_suffix): Ditto.
(print_equivalent_f77_float_type): Ditto.
(f_type_print_base): Ditto.
* findvar.c (): Hp snapshot 3 changes. (extract_address): Coerce
return value from extract_unsigned_integer to CORE_ADDR.
(store_address): Change val from CORE_ADDR to LONGEST; changes to
support machines where CORE_ADDR and LONGEST are different sizes.
(get_saved_register): Coerce arg to store_address to LONGEST.
(read_relative_register_raw_bytes): Cast last arg to
store_address to LONGEST. (read_register): Cast return from
extract_address to a CORE_ADDR. (write_register_pid): Change val
from LONGEST to CORE_ADDR. (read_pc_pid): Save and restore
inferior_pid if necessary. (write_pc_pid): Ditto.
(read_var_value): Cast arg to store_address.
* findvar.c (read_relative_register_raw_bytes_for_frame): New
function.
(read_relative_register_raw_bytes): Call it.
* findvar.c (symbol_read_needs_frame): Handle LOC_THREAD_LOCAL_STATIC and
LOC_INDIRECT.
* fork-child.c (fork_inferior): Chenge fifth parameter to be a
function returning void.
* fork-child.c (fork_inferior): Delete unused variable f.
* fork-child.c:
(Startup_WITH_SHELL): New macro -- interim fix for a bug
(breakup_args): New function -- breaks up an argument string into
an argument suitable for passing into execvp().
(fork_inferior): Handling problems with starting up gdb with a shell.
-- again, this appears to be an interim fix.
* fork-child.c:
(fork_inferior): Added a comment
(clone_and_follow_inferior): New function.
(startup_inferior): Minor formatting changes.
* fork-child.c:
(fork_inferior): Hp change is problematic. The -f option has
different meanings for different shells. It is particularly
inappropriate for bourne shells.
* fork-child.c:
(fork_inferior): Added new parameter, pre_trace_fun.
pre_trace_fun is a function pointer. For some targets,
like HPUX, this function gets called to prepare for forking
a child.
* fork-child.c:
(fork_inferior): Fixed call to init_trace_fun
* fork-child.c:
Moved definition of STARTUP_WITH_SHELL to inferior.h
Added a DEBUGGING macro. Currently set to 0. May remove
later.
breakup_args: Add DEBUGGING ifdefs. more sophisticated
parsing to break up args.
(fork_inferior): Rename kshell variable to shell. new local
variable, tryname. Make use of STARTUP_WITH_SHELL macro.
More error processing if starting up with a shell.
(startup_inferior): Distinguish between starting up with a shell
and not doing so.
* gdbthread.h:
Declarations for load_infrun_state and save_infrun_state take
an additional parameter.
* gdbthread.h: Note that sometime between gdb 4.16 and 4.17,
thread.h was renamed gdbthread.h
(load_infrun_state): Additional parameters
(store_infrun_state): Additional parameters
* gdbthread.h: Include breakpoint.h
* hp-psymtab-read.c (QUICK_LOOK_UP): Redefine to be 0.
(hpread_build_psymtabs): Deal with enums.
(hpread_start_psymtab): Include section offset.
(hpread_end_psymtab): Take care of offset.
* hp-psymtab-read.c (TRUE): Define.
(FALSE): Define.
(file_exists): New function. Checks for existance of file.
(hpread_pxdb_needed): Rewrite.
(hpread_quick_traverse): Use correct demangling style.
Handle F77 case.
(hpread_get_header): Rewrite.
(hpread_get_textlow): Add support for DOC_FUNCTION.
(hpread_build_psymtabs): Make sure we do the right thing
for pxdb and F77.
* hp-psymtab-read.c (hpread_pxdb_check): Change parenthesis positions.
* hp-psymtab-read.c (hpread_quick_traverse): Compare CORE_ADDR
variable end_addr to 0 instaed of NULL to get rif of gcc warning.
* hp-psymtab-read.c:
(Hpread_get_textlow): Added param to function
Defined convennience macros and some datatypes and variables for
processing the quick lookup-tables. Looks like the code existed
before, but has been munged.
(hpread_pxdb_needed): Major rearrangements of code. Additional local
variables. Also, more extensive checking for various scenarios:
debug info for optimized code vs. unoptimized code, pxdb has been
run vs. pxdb has not been run.
(VALID_FILE): New macro
(VALID_MODULE): New macro
(VALID_PROC): New macro
(VALID_CLASS): New macro
(FILE_START): New macro
(MODULE_START): New macro
(PROC_START): New macro
(FILE_END): New macro
(MODULE_END): New macro
(PROC_END): New macro
(FILE_ISYM): New macro
(MODULE_ISYM): New macro
(PROC_ISYM): New macro
(VALID_CURR_FILE): New macro
(VALID_CURR_MODULE): New macro
(VALID_CURR_PROC): New macro
(VALID_CURR_CLASS): New macro
(CURR_FILE_START): New macro
(CURR_MODULE_START): New macro
(CURR_PROC_END): New macro
(CURR_FILE_ISYM): New macro
(CURR_MODULE_ISYM): New macro
(CURR_PROC_ISYM): New macro
(TELL_OBJFILE): New macro
(pst_syms_struct): New typedef to keep track of the start/end symbol
table (LNTT) indices of psymtabs created so far.
(pst_syms_count): New variable
(pst_syms_size): New variable
(told_objfile): New variable
(init_pst_syms): New function. sets up psymtab symbol index stuff.
(clear_pst_syms): New function. clean up psymtab symbol index stuff.
(record_pst_syms): New function. add info about newest psymtab to symbol
index table.
(find_next_pst_start): New function. Find a suitable symbol table index.
(find_next_file_isym): New function
(find_next_proc_isym): New function
(find_next_module_isym): New function
(scan_procs): New function. Scan and record partial symbols for all
functions starting from specified index and in a specified code range.
(hpread_quick_traverse: Major rearrangement of code. The function
now uses all the nifty macros. There are some new local variables.
Check for EDG_DEMANGLING style. ifdef out some code for handling F77.
Previously, the function looped over all the modules in the table.
Now, the function loops over all the files, modules, and procedures.
With HP aCC and CTTI, it is possible for a compiled object to have a
file and no module.
(hpread_build_psymtabs): Added a section of code ifdefed by
QUICK_LOOK_UP. It check to see whether or not there are any globals
in the executable. Fix number of params to hpread_start_psymtab call.
Some changes to the way DNTT_TYPE_MODULE is handled.
(hpread_get_textlow): Change in signature, minor code changes. The
function finds the low address associated with a specified symbol.
In looking for the address for the symbol avoid going of the end of
the LNTT file.
* hp-psymtab-read.c: Change TRUE to 1 and FALSE to 0. Do some
reformatting.
* hp-psymtab-read.c: Include demangle.h
(trans_lang): New function to let gdb know the correct language.
(hpread_quick_traverse): Use ARM style demangling.
Demangle procedures names.
Use gdb language names instead of hp language names.
Add symbol to list using its demangled name.
* hp-psymtab-read.c: New file.
(hpread_call_pxdb): New function. Call PXDB to process our file.
(hpread_pxdb_check): New function. Return TRUE if the file needs
pre-processing by PXDB and we have thus called PXDB to do this
processing and the file needs to be re-loaded.
(hpread_quick_traverse): New function. Traverse the quick look-up
tables, building a set of psymtabs.
(hpread_get_header): New function. Get appropriate header from obj
file, based on pxdb type
(hpread_symfile_init): No change from hpread.c
(hpread_build_psymtabs): If there are quick lookup tables, read those,
then scan the global section LNTT. Otherwise, just scan the whole LNTT.
Changed: Add a global function entry to the global partial symbol list.
Handle end of symbols, for QLT case.
In case of TAGDEF, if it is a class or a template, add the name to the
var_namespace, so that it is known as a type by gdb.
In case of CONSTANT, and it is global, add it to the globals.
(hpread_symfile_finish): No change from hpread.c
(hpread_get_lntt): Make it not static
(hpread_get_gntt): No change from hpread.c
(hpread_get_slt): Make it not static
(hpread_get_textlow): No change from hpread.c
(hpread_start_psymtab): No change from hpread.c
(hpread_end_psymtab): No change from hpread.c
* hp-symtab-read.c (hpread_get_scope_start): Renamed. It was
hpread_get_depth.
(hpread_type_translate): Distinguish between signed and unsigned char
types.
(hpread_psymtab_to_symtab): Set flag for hp compilation.
(hpread_read_function_type): Append symbols for parameters to local
list as well as to the global list. Get the parameters types from the
local list instead of the global list.
(hpread_read_struct_type): Add new field num_fn_fields to next_fn_field
structure. Rewrite handling of templates
(hpread_type_lookup): Change handling of dntt_type_modifier.
(hpread_process_one_debug_symbol): Call hpread_get_scope_start instea
of hpread_get_depth. Handle enum as well.
(hpread_get_scope_depth): New function. Get nesting depth for a
DNTT entry.
* hp-symtab-read.c (hpread_psymtab_to_symtab): Set
processing_gcc_compilation to 0.
* hp-symtab-read.c (hpread_psymtab_to_symtab_1): Change stdout to
gdb_stdout; change fflush to gdb_flush.
(hpread_psymtab_to_symtab): Change fflush to gdb_flush.
* hp-symtab-read.c (hpread_read_enum_type): Declare variable.
(hpread_read_struct_type): Eliminate references
to 'args' member of fn_field.
* hp-symtab-read.c (hpread_read_struct_type): A static member
is now indicated by the bitsize field, not the bitpos.
Initialize physname to empty.
(fix_static_member_physnames): Use new macros to deal with
physnames.
* hp-symtab-read.c (hpread_read_struct_type): Change references
to bitpos member of struct field to use the FIELD_BITPOS macro.
* hp-symtab-read.c (hpread_read_struct_type): Comment out reference to
obsolete field fn_field.args.
Add struct complaint definitions for complaints.
(hpread_read_struct_type): Change call to complain.
(hpread_read_array_type): Change call to complain.
(hpread_type_lookup): Change call to complain.
(hpread_process_one_debug_symbol): Change calls to complain.
(hpread_type_translate): Change calls to complain.
* hp-symtab-read.c (hpread_read_struct_type): Make sure bitvector
has been allocated before calling has_vtable.
* hp-symtab-read.c (hpread_read_struct_type): Revert change,
just check for vtable without checking for bitvectors too.
* hp-symtab-read.c:
(Hpread_expand_symtab): Change name of local variable from
at_end_of_module to at_module_boundary.
Also, if demangling style is already EDG, do not reset it
to the HP demangling style.
Change at_end_of_module param to hpread_process_one_debug_symbol
call to at_module_boundary.
No longer break out of loop when reach end of module. With CTTI,
the compiler can generate function symbols which are not in
any module. Typically they show up after the end of one
module and before the start of the next module.
(hpread_read_struct_type): Check that the debug info for
a TEMPLATE_ARG is correct.
(hpread_process_one_debug_symbol): Change name of at_end_of_module_p
param to at_module_boundary_p.
Also set *at_module_boundary_p = -1 if missing a module end and set
it to 1 when finished expanding the debug info.
Handle TLS variable.
* hp-symtab-read.c: Include defs.h, symtab.h, gdbtypes.h, complaints.h.
(fixup_class): New static variable.
(fixup_method): New static variable.
(hpread_get_location): Rewrite.
(hpread_has_name): Add cases for DNTT_TYPE_DOC_FUNCTION and
DNTT_TYPE_DOC_MEMFUNC
(hpread_expand_symtab): Use HP demangling style.
Set hp_som_som_object_present to 1.
(hpread_type_translate): Error out if not immediate. Issue warning
if there is an unhandled type code.
(error_in_hpread_type_translate_complaint): Remove this structure.
(hpread_read_enum_type): Don't assume size of enum is always 4 bytes.
(hpread_read_function_type): Add new parameter to indicate a new block.
Do not add the parameters to the symbol list.
If the type was read in earlier, do not modify the type structure.
If we are creating a new block, set the local symbol list to be the
param list.
Need to mark this type as preprocessed.
(hpread_read_doc_function_type): New function. Read and internalize
a native DOC function debug symbol.
(hpread_read_struct_type): A method can be of type doc_function and
doc_memfunc too.
Handle case in which a method is read before its class. Deal with
incomplete method types.
Handle cases in which HP/aCC compiler creates operator names w/o
the 'operator' keyword. Rewrite the loop over the fileds.
(fix_static_member_physnames): New function. Adjust the physnames for
each static member.
(fixup_class_method_type): New function. Fix-up the type structure for a
class.
(hpread_read_array_type): Change complaint to warning.
(hpread_type_lookup): Add case for DNTT_TYPE_DOC_FUNCTION.
For structures/classes set static member to point to strings with full
names.
Change calls to hpread_read_function_type to pass extra parameter.
(hpread_record_lines): Handle case for SLT_NORMAL_OFFSET.
(class_of): New function. Given a function "f" which is a member of a class,
find the classname that it is a member of.
(hpread_process_one_debug_symbol): Deal with possible alias field from the
som record for the Function or Entry type.
Do the demangling ourselves if the gdb demangler failed.
Add support for DOC functions.
For function types, add parameters to local list.
(hpread_get_scope_depth): Make this function a no-op.
(hpread_adjust_bitoffsets): New function. Adjust the bitoffsets for all
fields of an anonymous union.
(hpread_get_next_skip_over_anon_unions): New function. Skip over anonymous
unions.
* hp-symtab-read.c: Include demangle.h
(hpread_expand_symtab): Ensure we are using ARM-style demangling.
(hpread_process_one_debug_symbol): Set the mangled and demangled
names for functions.
Record the class name to generate the demangled names of member
functions.
* hp-symtab-read.c: New file.
(hpread_get_depth): No change from hpread.c
(hpread_get_line): No change from hpread.c
(hpread_get_location): No change from hpread.c