📄 changelog-9091
字号:
Mon Dec 30 10:57:02 1991 Per Bothner (bothner at cygnus.com) Mainly stuff to improve handling of TYPE_CODE_REF values. * valops.c (value_addr): If taking the addres of a TYPE_CODE_REF, just cast the object to the corresponding TYPE_CODE_PTR. This yields correct C++ semantics, and preserves the location information, which has the nice effect that &(&R) given the location containing R. * values.c (value_copy): Make non-static (used by value_addr). * eval.c (evaluate_subexp_for_address): Use the default scheme (with value_addr) for a variable if it has TYPE_CODE_REF. * valops.c (value_addr), eval.c (evaluate_subexp_for_address, evaluate_subexp_with_coercion): Factor out some common expressions into variables, for easier reading. * findvar.c (locate_var_value): Remove code to handle TYPE_CODE_REF - it should no longer be needed. * valops.c (value_assign): Do a COERCE_REF on the destination operand, for correct C++ semantics. * valarith.c (value_x_binop): Ditto: De-reference C++ references in the arguments. * valops.c: ANSI-fy: bcopy->memcpy, bzero->memset.Sat Dec 28 11:30:26 1991 Per Bothner (bothner at cygnus.com) * dwarfread.c, coffread.c: Use INIT_CPLUS_SPECIFIC. * symtab.c (gdb_mangle_name): Recognize and handle constructors specially. * symtab.c (check_stub_method): Test for failure from cplus-demangle by calling error() instead of seg-faulting ...Fri Dec 27 22:21:30 1991 Fred Fish (fnf at cygnus.com) * defs.h: Add definition of null_cleanup() * procfs.c: Many small changes to add base support for a new "info proc" command (currently only printing of the address space mapping is implemented) and allow iteration over the address space mapping, calling an arbitrary function for each mapping (used for shared library support). * solib.c: Change all ifdefs that checked for "sun" to check for "!SVR4_SHARED_LIBS" instead. Rewrite lookup_base() to handle locating the debug base address even when not currently stopped at the dynamic linker entry point. * utils.c: Add null_cleanup() as a known function that does nothing to serve as a base for possibly long cleanup chains with no specific "first cleanup" to serve as an anchor. * xm-sysv4.h: Add define of SVR4_SHARED_LIBSFri Dec 27 10:11:33 1991 Per Bothner (bothner at cygnus.com) * arm-opcode.h, m88k-opcode.h, pn-opcode.h, np1-opcode.h, pyr-opcode.h, tahoe-opcode, vax-opcode.h: Removed - these are all essentially the same as the versions in ../include/opcode. The remaining *-opcode.h here are not quite so obviously the same, and need study. * arm-pinsn.c, gould-pinsn.c, m88k-pinsn.c, pyr-pinsn.c, tahoe-pinsn.c, vax-pinsn.c: Change so these include opcode/FOO.h (actually ../include/opcode/FOO.h) instead of the recenntly departed opcode-FOO.h files. * sparc-pinsn.c: Now that we're using the much tighter opcode table in ../include/opcode/sparc.h, we shouldn't need to sort the opcodes before dis-assembly. * symtab.h, symmisc.c: Make cplus_struct_default be const. * symtab.h, buildsym.c: Add and use INIT_CPLUS_SPECIFIC macro. * symmisc.c: Remove unused 'nfields' variable. * buildsym.h: Add extern decl of unknown_symtype_complaint, since it used used by partial-stab.h (included two places). * partial-stab.h: Re-arrange DBXREAD_ONLY #ifdefs so that we should never hit the default case (until new stab codes are added). Hence, we can leave the complaint in the default case in even when DBXREAD_ONLY is off. * partial_stab.h: Recognize a pair of N_SO stabs (one for the directory, one for the filename proper) without peeking ahead. * dbxread.c, mipsread.c: Because of previous change, don't need ugly CHECK_SECOND_N_SO macro. * buildsym.h, dbxread.c, mipsread.c: Make next_symbol_text a macro that invokes a function pointer in next_symbol_text_func. * mipsread.c: Added comments various places to explain what is going on. * mipsread.c (parse_symbol): Support the new (SGI-specific?) symbol types stStruct, stUnion, and stEnum. Also, some fixes in the code for dealing with tags. * mipsread.c: Change handling of startup_file_start and _end - now just use the textlow and texhigh of a psymtab to check if we've found the startup-file. * mipsread.c: Replace s_idx by global cur_sdx in many places. This is so mips_next_symbol_text can get at it.Thu Dec 26 19:52:01 1991 Fred Fish (fnf at cygnus.com) * dbxread.c, symmisc.c: Move add_psymbol_to_plist() from dbxread.c to symmisc and change name to add_psymbol_to_list. Ditto for add_psymbol_addr_to_plist(). Also expand their body to not use ADD_PSYMBOL_VT_TO_LIST. * dwarfread.c: Remove add_psymbol_to_list() and convert usages to the ADD_PSYMBOL_TO_LIST macro. * ieee-float.c: Change "#ifdef DEBUG" to "#ifdef IEEE_DEBUG" to avoid collision with the DEBUG for ADD_PSYMBOL_VT_TO_LIST. * partial-stab.h, symfile.h: Move definitions of the macros ADD_PSYMBOL_TO_LIST and ADD_PSYMBOL_ADDR_TO_LIST from partial-stab.h to symfile.h. They aren't stab specific. Change ADD_PSYMBOL_VT_TO_LIST to use memcpy rather than strncpy.Tue Dec 24 11:38:08 1991 John Gilmore (gnu at cygnus.com) * Makefile.in: Roll VERSION to 4.3.2.Mon Dec 23 13:54:35 1991 Per Bothner (bothner at cygnus.com) * m68k-opcode.h, mips-opcode.h, sparc-opcode.h: Deleted. * m68k-pinsn.c, mips-pinsn.c, sparc-pinsn.c: Include <opcode/FOO.h> instead of <FOO-opcode.h>. * symtab.h, symtab.c, coffread.c, dwarfread.c, symmisc.c, dbxread.c: The TYPE_CPLUS_SPECIFIC structure is now only allocated when it is needed. Until it is needed, it points to a shared statically allocated structure. * buildsym.h, buildsym.c, dbxread.c: Remove the kludgy code in read_ofile_symtab to recognize two initial N_SO stabs, and let process_on_symbol handle it. This is cleaner, more efficient, and lets mipsread.c share the same code. * symfile.h, partial-stab.h: Move ADD_PSYMBOL_VT_TO_LIST and related macros to here ... * dbxread.c: ... from here. * symmisc.c: Move the "overflow" handling from ADD_PSYMBOL_VT_TO_LIST macro into new function extend_psymbol_list. * dwarfread.c: Re-write add_psymbol_to_list to use ADD_PSYMBOL_VT_TO_LIST macro. * mipsread.c: Extend mipsread.c to handle stabs-style symbols encapsulated in ecoff symbols. This enable full g++ debugging. * partial-stab.h: Move the code for pre-scanning symbols and building psymtabs to an include file, out from dbxread.c. This way, the same code can also be used by mipsread.c. * dbxread.c, buildsym.h: Various changes to allow some functions to be used by mipsread.c (also some arguable stylistic changes). * tm-mips.h: Define BLOCK_ADDRESS_ABSOLUTE, at least for now, since mips-tfile puts relocatable addresses into LBRAC/RBRAC stabs. * mipsread.c: Replace code to handle ambiguous tag blocks. Instead of allocating a TYPE_CODE_UNDEF, guess (by looking at types and offsets) if a tag is a struct, union, or enum. Still patch it later if we find out for sure. * mipsread.c: In various ways, replace Forin's ideo-syncratic code by code that fits better with the rest of gdb, for both stabs-based and ecoff-based symtabs. E.g. use end_psymtab; don't do extra passes over FDR table to pre-partition global data; don't use external symbols to create static/global symbols (just put them in the misc_vector); use ADD_PSYMBOL_TO_LIST macro; don't sort psymtabs or symtabs; use obstacks more. * symtab.c, mipsread.c, dbxread.c, buildsym.c: ANSIfy: Replace bcopy by memcpy, bzero by memset.Sun Dec 22 19:31:04 1991 Fred Fish (fnf at cygnus.com) * solib.c (locate_base): Fix uninitialized variable that was causing return of random value to callee. * config/mh-amix, config/mh-i386v4: Change to find alloca by compiling and linking alloca.c, even when it is not strictly required. Also arrange to link with -ltermlib rather than -ltermcap. * Makefile.in: Move TERMCAP definition to prior to inclusion of host makefile fragments so it can be overridden.Fri Dec 20 16:33:39 1991 John Gilmore (gnu at cygnus.com) * xcoffread.c (read_symbol_lineno): Logic error in incrementing symbol table entry number. (From Metin Ozisik.)Fri Dec 20 11:36:38 1991 Fred Fish (fnf at cygnus.com) * config/mh-i386v4: Change XM_CLIBS to "-lc /usr/ucblib/libucb.a" so compiles with native compilers (without builtin alloca) can pick up the version from the bsd emulation library. However, we search the standard C library first so we don't pick up lots of other broken stuff from libucb.a, that we *don't* want. * configure.in, tm-amix.h, tm-i386v4.h, xm-amix.h, xm-i386v4.h: Change svr4 references to sysv4. * source.c: Move declaration of external function index to front of file so it is in scope for all references. * utils.c (error, fatal): Make definitions consistent with defs.h declarations (declared as "volatile void").Fri Dec 20 10:55:36 1991 John Gilmore (gnu at cygnus.com) * rs6k-opcode.h: Bugfix sfe and stbrx. By Al Kossow.Wed Dec 18 17:09:06 1991 Stu Grossman (grossman at cygnus.com) * command.h, defs.h, eval.h, expression.h, remote-sa.sparc.c, sparc-tdep.c, symtab.h, target.h, value.h, vx-share/ptrace.h, vx-share/xdr_ptrace.h, vx-share/xdr_rdb.h: ANSIfy enums.Mon Dec 16 12:31:46 1991 Fred Fish (fnf at cygnus.com) * config/mt-amix, config/mt-i386v4: Add solib.o to TDEPFILES for these SVR4 systems. * symfile.c (symbol_file_add): When verbose is set, print the names of files from which symbols are being loaded, as when from_tty is true. * solib.c: Completely reorganized (rewritten) to support SVR4 shared libraries in a manner very close to the original SunOS implementation. This support is expected to change and become more general at some future time. The SVR4 version does not yet work for attached processes, for example. * dwarfread.c: Arrange in dwarf_build_psymtabs() for the relocation address to be valid whether or not symbols are being read from a shared library or an executable. Use the relocation address recorded in the psymtab when reading full symbol tables (in read_ofile_symtab). Ensure that the relocated address ranges are recorded in partial symtabs. * elfread.c: Add new function elf_interpreter() to return the string from the ELF ".interp" section. This is the interpreter that the kernel tries to run and feed the executable to. Expand arguments to record_misc_function to include a type arg. Modify elf_symtab_read() to supply the type arg, and to do symbol relocations for symbols read in from shared libraries. * procfs.c: Add new functions proc_base_address() and proc_address_to_fd(), used by shared library support. * tm-svr4.h: Add macros to support SVR4 shared libraries. Definitions for SOLIB_ADD, SOLIB_CREATE_INFERIOR_HOOK, CLEAR_SOLIB, and DISABLE_UNSETTABLE_BREAK.Fri Dec 13 20:11:26 1991 John Gilmore (gnu at cygnus.com) * infrun.c, remote-eb.c, remote-nindy.c, remote-vx.c: Remove unused START_INFERIOR_HOOK. * remote-eb.c: Change timeout to 24 seconds (*10 fits in byte) to account for slow loading from floppies. (eb_create_inferior): New fn, from eb_start and nindy_create_inferior. (eb_close): Only use log_file if nonzero. (eb_xfer_inferior_memory): If not writing, then read! (eb_read_inferior_memory, eb_write_inferior_memory): Return length. (eb_kill): A new no-op. (eb_mourn_inferior): Remove breakpoints, then generically weep.Fri Dec 13 16:09:23 1991 Fred Fish (fnf at cygnus.com) * breakpoint.c, findvar.c, infrun.c, putenv.c, stack.c: Fix miscellaneous comparisons of integer with NULL that elicit compiler warnings about comparison of integer with pointer, when NULL is ((void *) 0) rather than just a bare 0.Wed Dec 11 13:02:58 1991 John Gilmore (gnu at cygnus.com) * breakpoint.c (breakpoint_re_set_one): Disable each breakpoint while we reset it, in case of problems. Print breakpoint number in error messages. * buildsym.c (read_struct_type): Avoid sun3 compiler bug with foo[--n]. * source.c (find_source_lines): If getting file mod time fails, don't warn. * target.c (target_xfer_memory): If errno is set, return it, rather than EIO.Tue Dec 10 04:07:22 1991 K. Richard Pixley (rich at rtl.cygnus.com) * Makefile.in: infodir belongs in datadir.Sun Dec 8 21:13:33 1991 Michael Tiemann (tiemann at sphagnum.cygnus.com) * symtab.h (struct fn_field): Add new fields `is_private', `is_protected', `is_stub', making room by reducing the size of `voffset'. (struct fn_fieldlist): Delete the fields `private_fn_field_bits' and `protected_fn_field_bits'. (TYPE_FN_{PRIVATE,PROTECTED}_BITS): Deleted. (SET_TYPE_FN_{PRIVATE,PROTECTED}): Deleted. (TYPE_FN_{PRIVATE,PROTECTED}): Deleted. (TYPE_FN_FIELD_{STUB,PRIVATE,PROTECTED}): New macros. * valops.c, valprint.c, symtab.c: All callers updated. * buildsym.c (read_struct_type): Delete the `visibility' field from `struct next_fnfield', and rework code so that visibility info is stored into the fn_field directly. Also, hacked to set TYPE_FN_FIELD_STUB for both static and normal member functions.Sat Dec 7 18:13:11 1991 Fred Fish (fnf at cygnus.com) * i386-tdep.c: Fix a problem on i386 systems where buffered code stream access was failing to take into account the minimum size granularity of the code section. For now, the buffering is simply disabled. There is a similar problem in the i386 disassember code that has not yet been fixed (FIXME). * gmalloc.c: Use macros to hide some of the ugly casting required in the previously applied fix for pointers with high bits set.Sat Dec 7 16:49:35 1991 John Gilmore (gnu at cygnus.com) * Makefile.in: Roll VERSION to 4.3.1.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -