aboutsummaryrefslogtreecommitdiff
path: root/gdb/ChangeLog
blob: b36296f6d3f2477c5549f3aa0a48c0fd19e4e971 (plain)
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
Mon Feb 10 18:35:55 1997  Mark Alexander  <marka@cygnus.com>

	* mips-tdep.c (non_heuristic_proc_desc): New function.
	(find_proc_desc): Move non-heuristic proc search code into separate
	function.
	(gdb_print_insn_mips): Use non-heuristic method to find procedure
	descriptor, to avoid prologue examination when disassembling.
	* remote-mips.c: Add support for new "lsi" target (LSI MiniRISC
	aka MicroMeteor board).
	(mips_exit_debug): Prevent protocol reinitialization if an error
	occurs while exiting debug mode.

Mon Feb 10 16:11:57 1997  Jeffrey A Law  (law@cygnus.com)

	* mn10200-tdep.c: Remove lots of debugging printfs, update/improve
	comments, formatting, etc.  Plus other minor fixes for problems
	I found during my first pass over the mn10200 port.
	(mn10200_analyze_prologue): New function.
	(mn10200_frame_chain, mn10200_init_extra_frame_info): Use it.
	* config/mn10200/tm-mn10200.h: Lots of updates/improvements to
	comments, formatting, etc.  Minor fixes for problems I found during
	my first pass over the mn10200 port.
	(TARGET_*_BIT): Define appropriately for ints, long longs, doubles and
	pointers.
	(REGISTER_VIRTUAL_TYPE): Define as a long.
	(EXTRACT_RETURN_VALUE): Rework to deal with long ints living
	in register pairs.
	(STORE_RETURN_VALUE): Similarly.

	* blockframe.c (generic_get_saved_regs): Remove unused variable
	"addr".
	* breakpoint.c (frame_in_dummy): Move struct breakpoint *b decl
	inside #ifdef CALL_DUMMY.
	(watch_command_1): Initialize target_resources_ok.
	* command.c (do_setshow_command): Provide dummy initialization
	for "match".
	* valops.c (find_function_addr): Move function & prototype inside
	#ifdef CALL_DUMMY.
	(value_arg_coerce): Similarly.
	(value_of_variable): Provide dummy initialization of "frame".

Mon Feb 10 13:50:53 1997  Stu Grossman  (grossman@critters.cygnus.com)

	* gdbtk.c (call_wrapper):  Clear running_now if an error occurs.
	This fixes PR 11323, where gdbtk stops responding if an error occurs.

Mon Feb 10 07:54:26 1997  Fred Fish  <fnf@cygnus.com>

	* xcoffread.c (RECORD_MINIMAL_SYMBOL): Add NULL asection* parameter
 	to prim_record_minimal_symbol_and_info call that was missed in Jan 3
	change.
	(scan_xcoff_symtab): Ditto.

Sun Feb 09 09:23:26 1997  Mark Alexander  <marka@cygnus.com>

	* remote-mips.c (common_breakpoint): Prevent 64-bit addresses
	from being sent to 32-bit targets by masking off upper bits.
	* mips-tdep.c (heuristic_proc_start): Mask off upper 32 bits
	of PC on 32-bit targets.
	(mips16_heuristic_proc_desc): Recognize 'addiu s1,sp,n' as a
	frame setup instruction.
	(mips32_heuristic_proc_desc): Fix warning found by gcc -Wall.
	(mips16_skip_prologue): Recognize 'addiu s1,sp,n' as a valid
	prologue instruction.  Fix warnings and bugs found by gcc -Wall.
	* buildsym.c (finish_block): Improve handling of overlapping blocks;
	fixes problem on MIPS16 printing function arguments.

Sat Feb  8 01:14:43 1997  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)

	* dwarf2read.c (dwarf2_linkage_name):  New function to get
	the linkage name of a die from DW_AT_MIPS_linkage_name or
	DW_AT_name.
	(read_func_scope, dwarf2_add_field, dwarf2_add_member_fn,
	new_symbol):  Use it instead of accessing DW_AT_name.
	(read_partial_die):  Use DW_AT_MIPS_linkage name as name of the
	partial die if present.
	(dwarf2_add_member_fn):  Make a copy of physname on the type obstack.

Fri Feb  7 10:06:22 1997  Jeffrey A Law  (law@cygnus.com)

	* blockframe.c (generic_frame_chain_valid): If the new frame
	is not INNER_THAN the old frame, then it's not valid.

Tue Feb 04 09:04:37 1997  Mark Alexander  <marka@cygnus.com>

	* mips-tdep.c (mips16_get_imm): Fix calculation of extended immediate.
	(mips16_heuristic_proc_desc): Recognize jal(x) instruction.

Mon Feb 03 17:57:58 1997  Mark Alexander  <marka@cygnus.com>

	* mips-tdep.c (mips16_decode_reg_save): Distinguish between
	sd and sw instructions correctly.
	(heuristic_proc_start): Add support for MIPS16.
	(mips16_get_imm, mips16_heuristic_proc_desc,
	mips32_heuristic_proc_desc): New helper functions for
	heuristic_proc_desc.
	(heuristic_proc_desc): Rewrite and reorganize to support MIPS16.
	(mips_push_arguments): Don't align small arguments in EABI.
	(mips32_skip_prologue): Attempt to shrink code size a little.

start-sanitize-m32r
Mon Feb  3 11:06:05 1997  Michael Snyder  <msnyder@cleaver.cygnus.com>

	* m32r-stub.c: New -- remote protocol support for M32R cpu.
	* m32r-rom.c:  Several experiments with improved download time.
	* .Sanitize:   Add entry for m32r-stub.c
end-sanitize-m32r

Fri Jan 31 08:26:39 1997  Mark Alexander  <marka@cygnus.com>

	* mips-tdep.c (MIPS16_INSTLEN): Define.
	(mips_find_saved_regs): Replace hardcoded 2's with MIPS16_INSTLEN.
	(heuristic_proc_start): Recognize 'entry' pseudo-op as a start
	of function on MIPS16.
	(mips32_skip_prologue, mips16_skip_prologue): New helper functions
	for mips_skip_prologue.
	(mips_skip_prologue): Recognize both 16- and 32-bit prologues.

Wed Jan 29 12:45:54 1997  Michael Meissner  <meissner@tiktok.cygnus.com>

	* config/powerpc/ppc{,le}-sim.mt (SIM): Remove the library
	../sim/common/libcommon.a.

Tue Jan 28 15:54:13 1997  Michael Snyder  <msnyder@cleaver.cygnus.com>

	* blockframe.c: fix a null pointer ref in generic_get_saved_register

Tue Jan 28 15:39:50 1997  Geoffrey Noer  <noer@cygnus.com>

	* mn10200-tdep.c (mn10200_frame_chain): Get basic backtracing
	working.

Mon Jan 27 14:31:52 1997  Mark Alexander  <marka@cygnus.com>

First set of changes for mips16:
	* config/mips/tm-mips.h (MIPS16_BIG_BREAKPOINT,
	MIPS16_LITTLE_BREAKPOINT, BREAKPOINT_FROM_PC): Define.
	(ABOUT_TO_RETURN): Call new function mips_about_to_return.
	(mips_breakpoint_from_pc, mips_about_to_return): Declare.
	* mem-break.c (memory_breakpoint_from_pc): New function.
	(memory_insert_breakpoint, memory_remove_breakpoint): Use
	memory_breakpoint_from_pc to determine breakpoint contents and size.
	* target.h (memory_breakpoint_from_pc): Declare.
	* monitor.c (monitor_insert_breakpoint): Use memory_breakpoint_from_pc
	to determine size of breakpoint instruction.
	* mips-tdep.c (mips32_decode_reg_save, mips16_decode_reg_save):
	New helper functions for mips_find_saved_regs.
	(mips_find_saved_regs): Recognize mips16 prologues.
	(mips_addr_bits_remove): Strip off upper 32 bits of address
	when target CPU is 32 bits but CORE_ADDR is 64 bits.
	(mips_step_skips_delay): No branch delay slot on mips16.
	(gdb_print_insn_mips): Disassemble mips16 code.
	(mips_breakpoint_from_pc, mips_about_to_return): New functions.

Mon Jan 27 10:34:03 1997  Jeffrey A Law  (law@cygnus.com)

	* tm-mn10200.h (NUM_REGS): Decrease to 12.
	(REGISTER_NAMES): Elimination registers not found on the mn10200.
	(PC_REGNUM, MDR_REGNUM, PSW_REGNUM): Corresponding changes.
	(LIR_REGNUM, LAR_REGNUM): Delete.  They don't exist on the mn10200.

Sat Jan 25 00:07:59 1997  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)

	* dwarf2read.c:  Replace integral tag, name and form fields in
	internal structure definitions with the corresponding enumeration
	types from dwarf2.h. Add default cases to switches on enumerations
	where appropriate.
	Make quoting of string arguments in complaint messages consistent.
	Check for NULL returns from DW_STRING.
	(struct partial_die_info):  Add sibling and has_type fields, remove
	unused value field.
	(DW_*):  Move access macro definitions near the definition of the
	attribute structure.
	(struct field_info):  New structure to pass information about fields
	and member functions between die processing routines.
	(dwarf2_build_psymtabs_hard):  Set cu_header_offset.
	(scan_partial_symbols):  Do not enter DW_TAG_subprogram dies into
	the partial symbol table if the DW_AT_*_pc attributes are missing.
	Add file scope base type definitions to the partial symbol table.
	Skip over child dies if the die has a sibling attribute.
	(add_partial_symbol):  Enter global variables with type attributes
	and without location descriptors into the partial symbol table.
	Store value of DW_TAG_variable dies in the partial symbol table.
	Do not enter global variables into the minimal symbol table.
	Add base type definitions to the partial symbol table.
	(psymtab_to_symtab_1):  Use dwarf2_get_pc_bounds to determine highpc.
	(process_die):  Move check for DW_AT_low_pc to read_func_scope.
	Add a typedef symbol for base type definitions to the symbol table.
	Ignore DW_TAG_inlined_subroutine tags for now.
	(read_file_scope):  Use dwarf2_get_pc_bounds to determine pc bounds.
	(read_func_scope, read_lexical_block_scope):  Use dwarf2_get_pc_bounds
	to determine pc bounds, ignore dies with invalid bounds.
	(dwarf2_get_pc_bounds):  New routine to extract and validate the
	DW_AT_*_pc attributes of a die.
	(dwarf2_add_field, dwarf2_attach_fields_to_type, skip_member_fn_name,
	dwarf2_add_member_fn, dwarf2_attach_fn_fields_to_type):
	New functions to handle fields and member functions.
	(read_structure_scope):  Rewritten to use them.
	(read_array_type):  Renamed from dwarf_read_array_type.
	Default upper array bound to describe an array with unspecified
	length.
	Create array types in backwards order, as dwarf2 puts out the array
	dimensions from left to right.
	(read_subroutine_type):  Handle DW_TAG_unspecified_parameters,
	DW_AT_artificial and DW_AT_prototyped.
	(read_base_type):  Make an unsigned type for DW_ATE_boolean.
	Pass objfile to dwarf_base_type.
	(read_partial_die):  Use read_attribute to read in the attributes.
	Handle DW_AT_sibling and DW_AT_type.
	Follow references when determining DW_AT_name and DW_AT_external
	attributes of the die.
	Validate DW_AT_*_pc attributes.
	(read_full_die):  Use read_attribute to read in the attributes.
	(read_attribute):  New function to read an attribute described
	by an abbreviated attribute.
	(new_symbol):  Relocate symbol value for DW_TAG_label with baseaddr.
	Do not set SYMBOL_VALUE_ADDRESS for DW_TAG_subprogram,
	SYMBOL_BLOCK_VALUE for the symbol will be set later by finish_block.
	Change symbol class for global variables with a zero valued location
	descriptor to LOC_UNRESOLVED.
	Handle DW_AT_const_value attributes for DW_TAG_variable,
	DW_TAG_formal_parameter and DW_TAG_enumerator.
	Build a typedef symbol for DW_TAG_base_type.
	(dwarf2_const_value):  New routine to copy a constant value from an
	attribute to a symbol.
	(dwarf_base_type):  Use passed in objfile, not current_objfile
	when calling dwarf2_fundamental_type.
	(dump_die):  Use DW_* accessor macros to access values of attributes.
	(decode_locdesc):  Handle DW_OP_plus_uconst.

Wed Jan 22 01:31:16 1997  Geoffrey Noer  <noer@cygnus.com>

	* mn10200-tdep.c: New file.
	* config/mn10200/tm-mn10200.h: New, REGISTER_SIZE is 24 bits not 32,
	SP_REGNUM and FP_REGNUM are different, also no lar or lir.
	* config/mn10200/mn10200.mt: New file.
	* configure.tgt: add mn10200 entry.

Tue Jan 21 18:32:23 1997  Stu Grossman  (grossman@lisa.cygnus.com)

	* configure.in configure:  Check if host has libdl if doing
	Solaris threads.

Tue Jan 21 17:03:26 1997  Geoffrey Noer  <noer@cygnus.com>

	* mn10300-tdep.c: Wrote/fixed implementations of
	mn10300_frame_chain, mn10300_init_extra_frame_info,
	mn10300_frame_saved_pc
	* config/mn10300/tm-mn10300.h: Redefine INIT_EXTRA_FRAME_INFO
	and INIT_FRAME_PC macros.

Tue Jan 21 17:01:20 1997  Stu Grossman  (grossman@lisa.cygnus.com)

	* configure.in configure:  Check if host has libm.  Make sure we
	are using gcc when using the -export-dynamic option.  Fixes a
	problem with building under Solaris/SunPro cc.

Mon Jan 20 13:52:13 1997  Mark Alexander  <marka@cygnus.com>

	* config/mips/{embed,embed64,embedl,embedl64}.mt:
	Link in simulator on MIPS embedded targets.

Sat Jan 18 02:31:29 1997  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)

	* blockframe.c (frameless_look_for_prologue):  Mark frames
	with a zero PC as frameless to improve backtraces from core dumps
	caused by dereferencing a NULL function pointer.

Thu Jan 16 14:10:41 1997  Geoffrey Noer  <noer@cygnus.com>

	* config/mn10300/tm-mn10300.h: fix BREAKPOINT definition.

Tue Jan 14 16:01:06 1997  Geoffrey Noer  <noer@cygnus.com>

	* mn10300-tdep.c: made a lot more generic, ripping out code
	from copied target (no more mn10300_scan_prologue,
	init_extra_frame_info, and mn10300_fix_call_dummy calls)
	* config/mn10300/tm-mn10300.h: undefine INIT_EXTRA_FRAME_INFO
	and INIT_FRAME_PC macros

Thu Jan  9 11:44:40 1997  Michael Snyder  <msnyder@cleaver.cygnus.com>

	* sparc-tdep.c (sparc_frame_find_saved_regs): Don't use 
	FP_REGISTER_BYTES to compute offsets into the saved frame, 
	since it fails for SPARC targets configured without any
	FP regs.  Instead, use DUMMY_STACK_REG_BUF_SIZE.  

Mon Jan  6 11:15:14 1997  Stu Grossman  (grossman@critters.cygnus.com)

	* symtab.c (fixup_symbol_section):  Handle NULL symbols without
	crashing.

Fri Jan  3 12:08:16 1997  Stu Grossman  (grossman@critters.cygnus.com)

	* Makefile.in configure configure.in:  Remove ENABLE_CLIBS,
	ENABLE_OBS, and THREAD_DB_OBS.  These are consolidated into LIBS
	and CONFIG_OBS.
	* configure configure.in:  Clean up test cases around thread support.
start-sanitize-v850
	* configure.tgt (v850-*-*):  Include v850ice.o and v850.lib if
	host is Windows.
end-sanitize-v850
	* c-valprint.c ch-valprint.c cp-valprint.c eval.c expprint.c
	printcmd.c valops.c value.h values.c:  Add bfd_section arg to
	value_at and value_at_lazy.
	* coffread.c dbxread.c elfread.c mdebugread.c minsyms.c symtab.h:
	Add bfd_section arg to prim_record_minimal_symbol_and_info.
	* corefile.c gdbcore.h printcmd.c valops.c:  Use read_memory_section
	instead of read_memory.  It takes a bfd_section arg.
	* coffread.c dbxread.c elfread.c gdb-stabs.h objfiles.h:  Remove
	unnecessary cast for assignment of struct dbx_symfile_info.
	Struct objfile now uses a real pointer instead of PTR for this
	element.
	* dbxread.c (dbx_symfile_init): Stash bfd section pointers for
	text, data and bss into dbx_symfile_info.
	* exec.c (xfer_memory):  Handle transfers for user-specified
	sections.
	* findvar.c (read_var_value locate_var_value):  Copy bfd section
	from the symbol to the value.
	* gdb-stabs.h:  Add section pointers for text, data and bss
	sections.
	* maint.c (translate address command):  Add test code for overlay
	address translation.
	* printcmd.c (do_examine do_one_display):  Now takes a bfd section
	arg.
	* (print_formatted x_command):  Record current section along with
	current address for repeated commands.
	* sparc-nat.c (fetch_inferior_registers):  Change
	target_xfer_memory to target_{read write}_memory to allow changes
	to target_xfer_memory interface for section info.
	* symmisc.c (dump_msymbols print_symbol):  Print section
	assocaited with symbol.
	* symtab.c (fixup_symbol_section):  New routine to
	add section info to symbols returned by lookup_symbol.
	* symtab.h (struct general_symbol_info):  Add bfd section to
	symbols.
	* target.c target.h (target_xfer_memory):  Add bfd section to
	args.
	* (target_read_memory_section):  New routine to read data from a
	specific section.
	* (target_memory_bfd_section):  New global variable to pass bfd
	section in to targets.
	* valarith.c (value_add value_addr value_array):  Preserve bfd
	section when computing new value.
	* value.h (struct value):  Add bfd section to values.
	* values.c (allocate_value value_copy):  Initialize/preserve bfd
	section.
	* (unpack_double):  Clean up _MSC_VER conditionals to remove
	duplicate code.
start-sanitize-v850
	* v850ice.c:  New module to support communication with NEC's
	PC-based ICE.
	* config/v850/tm-v850.h (REGISTER_NAMES):  Replace sp, gp, fp, and
	ep names with rxx names.  sp and fp are renamed via a different
	mechanism.
end-sanitize-v850

Fri Jan  3 14:20:05 1997  Geoffrey Noer  <noer@cygnus.com>

	* mn10300-tdep.c (mn10300_push_arguments): rewrote,
	also removed code elsewhere that made use of RP_REGNUM.
	* config/mn10300/tm-mn10300.h: ripped out RP_REGNUM, V0_REGNUM,
	ARG0_REGNUM, ARGLAST_REGNUM (all not appropriate for mn10300
	arch.), redefined SAVED_PC_AFTER_CALL, EXTRACT_RETURN_VALUE,
	EXTRACT_STRUCT_VALUE_ADDRESS, STORE_RETURN_VALUE.

For older changes see ChangeLog-96

Local Variables:
mode: indented-text
left-margin: 8
fill-column: 74
version-control: never
End: