|
|
1.1 ! root 1: Fri Jan 15 05:09:18 1988 Richard Stallman (rms at frosted-flakes) ! 2: ! 3: * valprint.c [IEEE_FLOAT]: New function `is_nan' checks ! 4: whether a double is a nan. ! 5: ! 6: * printcmd.c (print_formatted) [IEEE_FLOAT]: ! 7: Detect nans and print specially. ! 8: * valprint.c (val_print) [IEEE_FLOAT]: Same thing. ! 9: ! 10: * m68k-pinsn.c (convert_{to,from}_68881): Hand-assemble ! 11: all the assembler code. ! 12: ! 13: * m-newsinit.h, m-news800.h: Two new files. ! 14: ! 15: Thu Jan 7 22:25:16 1988 Richard Stallman (rms at frosted-flakes) ! 16: ! 17: * valops.c (value_assign): Don't coerce the arg being stored in. ! 18: Coercion is not right either for an array or for an enum. ! 19: ! 20: Tue Jan 5 00:59:29 1988 Richard Stallman (rms at frosted-flakes) ! 21: ! 22: * symtab.c (decode_line_1): Don't complain about no symtabs loaded ! 23: until after trying the misc function table. ! 24: ! 25: Sat Jan 2 13:16:08 1988 Richard Stallman (rms at frosted-flakes) ! 26: ! 27: * stack.c (record_selected_frame): New fn to access ! 28: the selected frame and its level. ! 29: * infcmd.c (run_stack_dummy): Save and restore the selected ! 30: frame and its level. ! 31: ! 32: Wed Dec 30 18:44:41 1987 Richard Stallman (rms at frosted-flakes) ! 33: ! 34: * valprint.c (type_print_varspec_prefix): ! 35: Treat arrays just like functions. ! 36: * valprint.c (type_print_varspec_{prefix,suffix}): ! 37: When passed_a_ptr is handled, pass 0 for it in the recursive call. ! 38: ! 39: Fri Dec 18 10:24:14 1987 Richard Stallman (rms at frosted-flakes) ! 40: ! 41: * findvar.c (read_var_value): Share code between values really ! 42: in registers and values in saved registers. ! 43: Register short on a big-endian machine needs a VALUE_OFFSET. ! 44: ! 45: * findvar.c (locate_var_value): Offset the address of a ! 46: saved register variable that's shorter than the register. ! 47: ! 48: Thu Dec 17 08:26:31 1987 Richard Stallman (rms at lucky-charms) ! 49: ! 50: * valprint.c (type_print_base): Print nameless bit fields ! 51: to indicate gaps before bit fields. ! 52: ! 53: * source.c (select_source_symtab): Ignore .h files. ! 54: Also, if a function `main' exists, make the default listing line ! 55: the beginning of `main'. ! 56: ! 57: * breakpoint.c ({get,set}_breakpoint_commands): ! 58: Commands to examine or set the pending breakpoint-commands. ! 59: ! 60: * infcmd.c (run_stack_dummy): Save and restore the breakpoint ! 61: commands around the function call. ! 62: ! 63: * stack.c (return_command): Don't query or print if not interactive. ! 64: ! 65: * value.h (COERCE_ENUM): New macro: if arg is enum, convert to int. ! 66: * value.h (COERCE_ARRAY): Do that, as well as old job. ! 67: ! 68: * valarith.c (value_binop, value_neg, value_lognot): ! 69: Use COERCE_ENUM on the arguments. ! 70: * valops.c (value_arg_coerce): Likewise. ! 71: * valops.c (value_cast): AVOID coercing enums when arrays are. ! 72: ! 73: * eval.c (evaluate_subexp): In the BINOP_SUB case, ! 74: use evaluate_subexp_with_coercion. ! 75: ! 76: * inflow.c (terminal_ours_1, terminal_inferior): ! 77: Ignore inferior_thisrun_terminal since our terminal ! 78: is the inferior's controlling terminal regardless. ! 79: ! 80: * m-sun3.h: Fix assembler syntax for kdb macros. ! 81: ! 82: * infcmd.c ({attach,detach}_command): New functions from Dave Taylor. ! 83: * inflow.c (attach, detach): New functions from Dave Taylor. ! 84: * infrun.c (attach_process): New function, middle-level. ! 85: Does all the work of attaching a process, assuming there is no ! 86: inferior yet, except for printing and querying. ! 87: ! 88: * infrun.c (clear_proceed_status): Clear `stop_after_attach'. ! 89: * infrun.c (wait_for_inferior): Handle `stop_after_attach'. ! 90: ! 91: Sat Dec 12 04:36:39 1987 Richard Stallman (rms at corn-chex) ! 92: ! 93: * dbxread.c (end_symtab): The free_code for a symseg got ! 94: from a file should be free_linetable. ! 95: ! 96: * dbxread.c: Allocate blockvector, blocks, symbols and symbol names ! 97: from the symbol-obstack, and use free_linetable for all files. ! 98: The typevector is still malloc'd, so put it in the free_ptr ! 99: to get it freed. ! 100: ! 101: * symmisc.c (free_symtab): Always free the `free_ptr' if nonzero. ! 102: `free_explicit' therefore now the same as `free_nothing'. ! 103: ! 104: * dbxread.c (define_symbol): Handle defn code 'c', used by ! 105: fortran, which defines integer and real constant symbols. ! 106: ! 107: * symseg.h: Define LOC_CONST_BYTES for constants longer than a ! 108: word. New `bytes' alternative for the value of a symbol. ! 109: ! 110: * symtab.h (SYMBOL_VALUE_BYTES): Macro to access `bytes'. ! 111: ! 112: * findvar.c ({read,locate}_var_value): Handle LOC_CONST_BYTES. ! 113: * printcmd.c (address_info): Handle LOC_CONST_BYTES. ! 114: * symmisc.c (print_symbol): Handle LOC_CONST_BYTES. ! 115: ! 116: Tue Dec 8 20:26:37 1987 Richard Stallman (rms at frosted-flakes) ! 117: ! 118: * symtab.c (find_line_pc_range): Detection of last line in file ! 119: was erroneous. ! 120: ! 121: Fri Dec 4 21:52:52 1987 Richard Stallman (rms at frosted-flakes) ! 122: ! 123: * dbxread.c (read_range_type): Accept the typenums as argument. ! 124: Use read_type_number to read the subrange-of type. ! 125: A type defined as a subrange of itself is void. ! 126: ! 127: Thu Dec 3 12:45:10 1987 Richard Stallman (rms at frosted-flakes) ! 128: ! 129: * inflow.c ({fetch,store}_inferior_registers): Support UMAX_PTRACE. ! 130: ! 131: * m-umax.h: New file, for Encore machines. ! 132: ! 133: * core.c (exec_file_command, etc): Decode COFF files. ! 134: * core.c (core_file_command): Support UMAX_CORE format. ! 135: * core.c (validate_files, exec_file_command): ! 136: Set exec_mtime in exec_file_command so that COFF vs non-COFF ! 137: differences appear all in one place. ! 138: ! 139: * coffread.c: New file from Dave Johnson. ! 140: ! 141: * core.c (specify_exec_file_hook): New function to specify ! 142: a hook to be called by exec_file_command. Last #ifdef X_WINDOWS gone. ! 143: * xgdb.c (initialize): Specify a hook. ! 144: ! 145: * infrun.c, inferior.h: Replace stop_r0 and stop_r1 with an array ! 146: `stop_registers' that will hold ALL the registers. ! 147: * infcmd.c (run_stack_dummy): Get the value from `stop_registers' ! 148: and copy all of that into BUFFER. ! 149: * infcmd.c (finish_command): Specify `stop_registers' ! 150: to `value_being_returned'. ! 151: * values.c (value_being_returned): Use the new EXTRACT... macros. ! 152: * values.c (set_return_value): Use new STORE_RETURN_VALUE macro. ! 153: * valops.c (call_function): Allocate retbuf long enough for all regs. ! 154: * m-*.h: New macros EXTRACT_RETURN_VALUE, STORE_RETURN_VALUE and ! 155: EXTRACT_STRUCT_VALUE_ADDRESS that express machine-dependencies ! 156: in where return values are stored. ! 157: ! 158: * valops.c (call_function): Flush default for CALL_DUMMY_START_OFFSET. ! 159: Assume it is defined. ! 160: * m-vax.h: Define CALL_DUMMY_START_OFFSET. ! 161: ! 162: * ns32k-pinsn.c (ns32k-localcount): Fix decoding of `enter' insn. ! 163: * ns32k-pinsn.c (n32k_get_enter_addr): New fn used from m-umax.h. ! 164: ! 165: * m-*.h: Change INVALID_FLOAT to accept 2nd arg which is length ! 166: of the float. ! 167: * values.c (unpack_double): Pass the 2nd arg. ! 168: * vax-pinsn.c (print_insn_arg): Pass the 2nd arg. ! 169: * infcmd.c (registers_info): Pass the 2nd arg. ! 170: ! 171: Wed Nov 25 15:06:55 1987 Richard Stallman (rms at frosted-flakes) ! 172: ! 173: * Bug fixes by David Johnson (ddj%[email protected]). ! 174: ! 175: * symtab.c (list_symbols): Print typedef names, and don't call ! 176: them `static'. ! 177: ! 178: * symmisc.c (print_symtabs): Allow immediate quit, and close the ! 179: output file if that happens. ! 180: ! 181: * stack.c (frame_command): Declare args `unsigned' so a negative ! 182: number is a frame address, not a level number. ! 183: ! 184: * source.c: Check for error-return from calls to `getwd'. ! 185: ! 186: * printcmd.c (address_info): Fix error in case of a function name. ! 187: ! 188: * inflow.c (create_inferior): Return the inferior pid properly. ! 189: ! 190: * inferior.h: Define `inferior_io_terminal'. ! 191: * infrun.c (tty_command): New command to specify inferior_io_terminal. ! 192: * inflow.c (new_tty): Open specified terminal for the inferior. ! 193: * inflow.c (terminal_{ours,inferior}): Do nothing if inferior was ! 194: started with its own terminal. ! 195: * main.c (main): -t switch calls `tty_command'. ! 196: ! 197: * expread.y (rule for `block'): `copy_name' was called in wrong ! 198: place and with wrong args. ! 199: ! 200: * dbxread.c: Entire file #ifdef READ_DBX_FORMAT. ! 201: * m-*.h: Define READ_DBX_FORMAT. ! 202: ! 203: * breakpoint.c (initialize): Error in doc string of `info breakpoints'. ! 204: ! 205: Wed Nov 11 12:57:28 1987 Richard Stallman (rms at frosted-flakes) ! 206: ! 207: * ns32k-opcode.h, ns32k-pinsn.c: Two new files. ! 208: * m-merlin.h: New file, for one 32000 box. ! 209: ! 210: Mon Nov 9 10:31:42 1987 Brian Fox (bfox at sugar-smacks) ! 211: ! 212: * eval.c (evaluate_subexp): Made the case of OP_FUNCALL use ! 213: evaluate_subexp_with_coercion, so that array references would ! 214: get converted into pointer references. ! 215: ! 216: Mon Nov 9 05:50:24 1987 Richard Stallman (rms at sugar-smacks) ! 217: ! 218: * breakpoint.c (ignore_command): Error if no arg. ! 219: ! 220: Sat Nov 7 13:57:40 1987 Richard Stallman (rms at frosted-flakes) ! 221: ! 222: * main.c (quit_command): Get rid of execfile before the kill_inferior. ! 223: ! 224: * xgdb.c: New file, interface to X windows. ! 225: ! 226: * main.c (main): Look for flag arguments before ! 227: calling the initialization functions. -nw switch sets ! 228: `inhibit_windows' which xgdb.c looks at. ! 229: * main.c (command_loop): Call the window hook function, if any. ! 230: ! 231: * source.c (get_filename_and_charpos): New function ! 232: that interfaces to find_source_lines. ! 233: * source.c (source_line_charpos, source_charpos_line): ! 234: New functions translate source line number to char pos and vice versa. ! 235: ! 236: * breakpoint.c (describe_other_breakpoints): New subroutine ! 237: to list all breakpoints at PC in a message about "other ! 238: breakpoints". ! 239: * breakpoint.c (break_command_1): Use describe_other_breakpoints. ! 240: * breakpoint.c (set_breakpoint): Like break_command_1 ! 241: but takes arg predecoded into symtab and line. ! 242: ! 243: * core.c (exec_file_command): Call xgdb_display_exec_file. ! 244: ! 245: * valprint.c (type_print_base): For struct bitfields, ! 246: print the bit size. ! 247: ! 248: Thu Aug 20 02:46:47 1987 Richard M. Stallman (rms at prep) ! 249: ! 250: * Version 2.4. ! 251: ! 252: * m68k-pinsn.c (print_insn_arg): Implement place = '3'. ! 253: ! 254: * findvar.c (write_register_bytes): Arg to ! 255: store_inferior_registers should be -1: write all registers. ! 256: ! 257: * dbxread.c (symbol_file_command): If no arg, ! 258: just discard all symbols. ! 259: ! 260: * core.c (myread): Flush the 4th arg (filename). ! 261: * source.c (find_source_lines): Don't pass 4th arg. ! 262: * symmisc.c (read_symsegs): Ditto. ! 263: ! 264: * dbxread.c (process_one_symbol): One call to `define_symbol' ! 265: lacked 3rd arg. ! 266: ! 267: * inflow.c (write_inferior_memory): On failure, return the errno value. ! 268: * core.c (write_memory): ditto. ! 269: * breakpoint.c ({insert,remove}_breakpoints): ditto. ! 270: * utils.c (print_sys_errmsg): Like perror_with_name but don't ! 271: signal an error; also, the error code is an arg instead of from ! 272: `errno'. ! 273: * infrun.c : Save the value from insert_breakpoints and pass it to ! 274: print_sys_errmsg. ! 275: ! 276: * main.c (input_from_terminal_p): Put in omitted `return'. ! 277: ! 278: * Makefile (expread.o): Use $(CC). ! 279: ! 280: Sun Jun 7 04:42:51 1987 Richard M. Stallman (rms at prep) ! 281: ! 282: * version.c: Version 2.3. ! 283: ! 284: * inflow.c (terminal_ours): Save fcntl flags correctly. ! 285: * inflow.c (term_status_command): ! 286: Print the tchars and ltchars structures, byte by byte. ! 287: ! 288: Mon May 25 14:37:14 1987 Richard M. Stallman (rms at prep) ! 289: ! 290: * version.c: Version 2.2. ! 291: ! 292: * breakpoint.c (do_breakpoint_commands): ! 293: Advance breakpoint_commands before executing the command, ! 294: in case command is `cont' and it hits another bpt with commands. ! 295: ! 296: Sun May 24 20:45:04 1987 Richard M. Stallman (rms at prep) ! 297: ! 298: * value.h: Declare `contents' long and cast its address to char *. ! 299: ! 300: * expread.y (prefixify_expression): Don't call alloca among the decls. ! 301: ! 302: * printcmd.c (print_variable_value): Flush unused local `space'. ! 303: ! 304: * main.c (execute_command): Barf on "user" like other class names. ! 305: ! 306: Fri May 22 01:34:37 1987 Richard M. Stallman (rms at prep) ! 307: ! 308: * m68k-pinsn.c (fetch_arg): New arg position 'j', for movec. ! 309: (print_insn_arg): New arg syntax 'J', for movec. ! 310: * m68k-opcode.h: movec uses 'Jj'. Everything reformatted. ! 311: bf... and cas... insns were corrected. ! 312: ! 313: * inflow.c (create_inferior): Fork and exec with given args and env. ! 314: Call close_exec_file. ! 315: (inferior_died): Record the fact that the inferior no longer exists. ! 316: Call reopen_exec_file. ! 317: ! 318: * core.c (close_exec_file): New fn: Close the execchan if it's open. ! 319: (reopen_exec_file): New fn: Reopen execchan if not currently open. ! 320: ! 321: * infrun.c (wait_for_inferior): Call inferior_died if it exits. ! 322: ! 323: * infcmd.c (run_command): Don't fork and exec; call create_inferior. ! 324: ! 325: * findvar.c (read_var_value): For reg var in a convertable reg, ! 326: fetch reg in its own virtual type and then cast to variable's type. ! 327: ! 328: * symtab.h: Declare xmalloc to return char *. ! 329: ! 330: * dbxread.c (read_dbx_symtab): Record static text syms as ! 331: misc-functions. But if an assembler symbol supplies the address ! 332: for a debugger symbol, don't record it as a misc-function. ! 333: ! 334: * utils.c (query): Do clearerr (stdin) frequently in case of C-d. ! 335: ! 336: * dbxread.c (process_one_symbol, define_symbol): ! 337: Pass the stab's DESC down to define_symbol. ! 338: DESC = 0 means GCC output: if type is "short", believe it. ! 339: ! 340: * dbxread.c (read_enum_type): Don't allocate the type here; ! 341: take it as an argument. (Like read_struct_type.) ! 342: (read_type)): Before call to read_enum_type, allocate the type ! 343: or get the one already allocated. ! 344: ! 345: * printcmd.c (print_frame_args): Print a comma before ! 346: every arg except the first. ! 347: ! 348: Wed May 13 00:36:00 1987 Richard M. Stallman (rms at prep) ! 349: ! 350: * m68k-pinsn.c (convert_{to,from}_68881): ! 351: Hand-assemble the fmoved and fmovex insns. ! 352: ! 353: * dbxread.c (define_symbol): For case 'p', a parameter, ! 354: if specified type is short or char, change it to int. ! 355: This is for how PCC handles arguments. ! 356: Define new case 'P' that does what 'p' used to do. ! 357: Maybe GCC will use this. ! 358: ! 359: Mon May 4 21:52:44 1987 Richard M. Stallman (rms at prep) ! 360: ! 361: * main.c (main): If SET_STACK_LIMIT_HUGE, set the ! 362: run-time stack limit as high as it can go. ! 363: * m-sun3.h, m-vax.h: define SET_STACK_LIMIT_HUGE. ! 364: ! 365: Sun May 3 08:46:23 1987 Richard Mlynarik (mly at prep) ! 366: ! 367: * command.c, expread.y, findvar.c, infcmd.c, inflow.c, utils.c, ! 368: values.c, defs.h: Various ANSI C compatibility changes ! 369: ([email protected] <[email protected]>) ! 370: ! 371: * core.c, inflow.c: Fix calls to supply_register. ! 372: * findvar.c (supply_register): Instead of register value as int, ! 373: pass address of buffer in core containing contents in raw form. ! 374: ! 375: Sat Apr 18 17:09:42 1987 Richard Mlynarik (mly at prep) ! 376: ! 377: * main.c (command_loop): ! 378: Do any cleanups made by a executing a command each time around. ! 379: ! 380: * source.c (directory_command): ! 381: make_cleanup (free, dirname), not ! 382: make_cleanup (free_current_contents, &dirname) ! 383: (rlk <[email protected]>) ! 384: ! 385: Mon Apr 13 20:28:26 1987 Leonard H. Tower Jr. (tower at prep) ! 386: ! 387: * gdb.1: fixed typo and italicization errors. ! 388: (<kgk%[email protected]> id AA16470;Sun,12 Apr 87 14:30:07 EST) ! 389: ! 390: Sat Apr 11 15:41:01 1987 Richard Mlynarik (mly at prep) ! 391: ! 392: * dbxread.c (read_dbx_symtab): ! 393: No name for symbol => "" not 0 (avoid referencing memory 0) ! 394: (tower <[email protected]>) ! 395: ! 396: Mon Mar 30 22:24:07 1987 Leonard H. Tower Jr. (tower at prep) ! 397: ! 398: * gdb.1: Unix style manual page pointing at internal gdb ! 399: documentation, and info sub-system in GNU Emacs. ! 400: ! 401: Fri Mar 20 12:07:15 1987 Richard M. Stallman (rms at prep) ! 402: ! 403: * COPYING: Clarifications about distribution fees and mixing. ! 404: * main.c (copying_info): Same changes. ! 405: ! 406: Tue Mar 17 17:40:14 1987 Richard M. Stallman (rms at prep) ! 407: ! 408: * values.c (unpack_field_as_long): Avoid >>= operator ! 409: since ISI compiler has a bug. ! 410: ! 411: Sat Mar 7 12:19:35 1987 Richard M. Stallman (rms at prep) ! 412: ! 413: * GDB version 2.1. ! 414: ! 415: * values.c (unpack-field-as-long): Tests for endianness were broken. ! 416: * findvar.c (read_var_value): ! 417: Now we initialize the union as an int and test it as a char. ! 418: ! 419: Sun Mar 1 16:16:20 1987 Richard M. Stallman (rms at prep) ! 420: ! 421: * main.c (define_command): Command class symbols ! 422: must be cast to int. ! 423: ! 424: Mon Feb 23 02:47:44 1987 Richard M. Stallman (rms at prep) ! 425: ! 426: * source.c (list_command): Reword error messages. ! 427: New message for case of first arg not just a line-number ! 428: and no symtab specified by it. ! 429: ! 430: Sun Feb 22 21:15:19 1987 Richard M. Stallman (rms at prep) ! 431: ! 432: * dbxread.c (compare_misc_functions): ! 433: Compare the addresses as unsigned numbers. ! 434: ! 435: Sun Feb 22 13:11:45 1987 Richard Mlynarik (mly at prep) ! 436: ! 437: * main.c (define_command, document_command): ! 438: Stuff was being unnecessarily malloced (-and- not freed!) ! 439: ! 440: * main.c (execute_command): ! 441: User-defined commands don't take args. ! 442: Don't confuse empty user command with no command. ! 443: Replace bogus `etext' test with a comparison against ! 444: class_user. ! 445: ! 446: * main.c (define_command): ! 447: If the command of the specified name is built-in, note that when ! 448: asking whether to redefine it (this is suppressed for class_alias ! 449: -- should it not be?) ! 450: ! 451: * main.c (define_command): ! 452: If command was previously built-in, don't preserve its ! 453: documentation (otherwise could get error later when trying to free ! 454: the non-malloced text of built-in documentation strings) ! 455: ! 456: Tue Feb 17 16:23:57 1987 Richard Mlynarik (mly at prep) ! 457: ! 458: * main.c (echo_command): Don't die if not given any arg. ! 459: * main.c (cd_command): Echo new cwd if interactive. ! 460: ! 461: Thu Feb 12 11:22:56 1987 Richard M. Stallman (rms at prep) ! 462: ! 463: * stack.c (initialize): "bt" now appears in help aliases. ! 464: ! 465: * Version 2.0 released. ! 466: ! 467: Wed Feb 11 17:45:45 1987 Richard M. Stallman (rms at prep) ! 468: ! 469: * m68k-opcode.h: Errors corrected in several instructions ! 470: and reordering done for assembler's sake. ! 471: ! 472: * m-vax.h (POP_FRAME): End with call to set_current_frame. ! 473: ! 474: Tue Feb 10 15:06:07 1987 Richard M. Stallman (rms at prep) ! 475: ! 476: * infrun.c (wait_for_inferior): Set stop_print_frame to 1 ! 477: after checking breakpoint condition. ! 478: ! 479: * infcmd.c (run_stack_dummy): Save many flags. ! 480: ! 481: Thu Feb 5 07:12:20 1987 Richard Mlynarik (mly at prep) ! 482: ! 483: * source.c (directory_command): ! 484: Step over `:' ! 485: ! 486: Mon Feb 2 23:40:32 1987 Richard M. Stallman (rms at prep) ! 487: ! 488: * infcmd.c (set_environment_command): Fix stupid error ! 489: for case where no "=" appears in the string. ! 490: ! 491: Mon Jan 26 13:46:52 1987 Richard M. Stallman (rms at prep) ! 492: ! 493: * printcmd.c (print_frame_args): Round end-of-arg offset ! 494: up rather than down to multiple of int. ! 495: ! 496: Fri Jan 23 15:11:50 1987 Richard M. Stallman (rms at prep) ! 497: ! 498: * source.c (directory_command): If dir is not added cause already ! 499: present, print explanation. ! 500: ! 501: * infrun.c (proceed): Use read_pc (), not stop_pc, ! 502: to get current pc to think about. stop_pc could have been ! 503: clobbered by call_function. ! 504: ! 505: Fri Jan 23 15:00:55 1987 Richard Mlynarik (mly at prep) ! 506: ! 507: * source.c (directory_command): ! 508: If dir is already in source_path, don't append another copy of it. ! 509: ! 510: Thu Jan 22 00:31:03 1987 Richard M. Stallman (rms at prep) ! 511: ! 512: * Version 2.0. ! 513: ! 514: * blockframe.c (get_pc_function_start): ! 515: Understand misc functions. ! 516: ! 517: * core.c (core_file_command): ! 518: Copy all register contents into the array `registers' ! 519: Save a.out header of executable file in core_aouthdr. ! 520: Print name of executable file that was running, if we know ! 521: where to find it. ! 522: ! 523: * core.c (exec_file_command): ! 524: Save a.out header in exec_aouthdr and file's mtime ! 525: in exec_mtime. ! 526: ! 527: * core.c (validate_files): Check that core file's a.out hdr ! 528: matches exec file's. ! 529: ! 530: * New handling of registers: ! 531: Now all registers are fetched once when the program stops or ! 532: when a core file is selected. Their contents are kept in ! 533: `registers', an array of bytes. This is done by ! 534: `fetch_inferior_registers'. `read_register', etc., just look ! 535: there. Writing a register works through ! 536: `store_inferior_registers' which writes one or all registers ! 537: from `registers' back to the inferior. ! 538: ! 539: A register now can have a "raw" data format and a "virtual" ! 540: data format, which may require conversion or even be different sizes. ! 541: The conversion can be different for different registers. ! 542: For example, the 68000 cpu registers need no conversion ! 543: and both raw and virtual size is 4, but the 68881 floating point ! 544: registers have raw size 12 (for extended fmt) and virtual size 8 ! 545: (for double). Macros in the m- file such as REGISTER_BYTES, ! 546: REGISTER_BYTE, REGISTER_{RAW,VIRTUAL}_SIZE, and ! 547: REGISTER_CONVERT_TO_{RAW,VIRTUAL} control these things. ! 548: ! 549: `read_register' and `write_register' are usable only on registers ! 550: which hold an int and need no conversion (raw fmt = virtual fmt). ! 551: For other registers, `read_register_bytes' is used, or ! 552: `read_relative_register_raw_bytes'. ! 553: ! 554: * m-sun3.h: Define the 68881 fp registers. ! 555: Know how to recognize insns that save them. ! 556: Make dummy frames save them. ! 557: ! 558: * core.c (read_register, write_registers): Functions deleted. ! 559: * findvar.c (read_register, write_registers): New functions, ! 560: not the same as the old ones of the same name. ! 561: ! 562: * findvar.c (supply_register): Function used by ! 563: fetch_inferior_registers, etc., to install the register ! 564: values fetched from the inferior. ! 565: ! 566: * findvar.c (read_register_bytes, write_register_bytes): ! 567: Read spec'd number of bytes from the byte-array `registers'. ! 568: ! 569: * findvar.c (read_relative_register_raw_bytes): ! 570: Replaces old function `read_relative_register'; accepts ! 571: address of where to store the contents; # bytes stored is size ! 572: of the specified register in raw format. ! 573: ! 574: * findvar.c (value_of_register, read_var_value): ! 575: Convert register values and values of register variables ! 576: from raw format to virtual format. ! 577: ! 578: * findvar.c (locate_var_value): Like `read_var_value' but ! 579: returns value for variable's address. ! 580: ! 581: * value.h: Add new field VALUE_REGNO to each value. It holds ! 582: register number to control virtual-to-raw conversion ! 583: for assignments to the value. ! 584: ! 585: * valops.c (value_assign): Convert data from virtual to raw format ! 586: if value came from a register variable. ! 587: Use read_register_bytes and write_register_bytes. ! 588: ! 589: ! 590: * infcmd.c (continue_command): Subtract 1 from arg ! 591: before setting breakpoint's ignore-count. ! 592: ! 593: * infcmd.c (jump_command): Query if spec'd line is outside ! 594: of the current function. ! 595: ! 596: * infcmd.c (finish_command): Now finish the selected frame, ! 597: and no arg required. ! 598: ! 599: * infcmd.c (set_environment_command): Allow space to separate ! 600: varname and value. ! 601: ! 602: * infcmd.c (registers_info): Print both raw and virtual data ! 603: format if they differ. Allow register name as arg. ! 604: Ask for a Newline each 16 registers. ! 605: ! 606: * inflow.c (kill_inferior): call mark_breakpoints_out. ! 607: * inflow.c ({fetch,store}_inferior_registers for Sun): ! 608: Get the fp registers and store them in right places in ! 609: `registers'. ! 610: * inflow.c ({read,write}_inferior_register): Deleted. ! 611: ! 612: * infrun.c (wait_for_inferior): Single-stepping is not considered ! 613: to have hit a breakpoint unless the pc before the step matches the ! 614: address of the breakpoint. Necessary on machines where ! 615: breakpoints leave the pc incremented. ! 616: ! 617: If shell gets SIGSEGV, pass the signal silently to it. ! 618: ! 619: * m68k-pinsn.c, m68k-opcode.h: ! 620: Add the 68881 instructions. New operand codes `F', `I', `s' ! 621: and `k' are needed for them. New place codes `78tcik'. ! 622: NEXTBYTE now skips a word but fetches just a byte. ! 623: Explicit sign-extension removed from NEXTBYTE and NEXTWORD. ! 624: NEXTSINGLE, NEXTDOUBLE, NEXTEXTEND and NEXTPACKED defined. ! 625: Various changes to implement the new operand and place codes. ! 626: print_index changed because displacement-size codes for ! 627: word and long displacement were interchanged. ! 628: ! 629: * m68k-pinsn.c (convert_{from,to}_68881): Functions added ! 630: to support REGISTER_CONVERT_TO_{RAW,VIRTUAL} on 68000. ! 631: ! 632: * main.c (main): Move around calls to setjmp. ! 633: * main.c (define_command, document_command): ! 634: Accept a from_tty argument instead of calling input_from_terminal_p. ! 635: ! 636: * printcmd.c (address_info): Print info on class and address ! 637: of a specified symbol. For register symbols, gives name of register. ! 638: ! 639: * printcmd.c (print_command): Remember explicitly whether ! 640: `make_cleanup' was called. ! 641: ! 642: * printcmd.c (print_frame_args): Know how arg-addresses vary with ! 643: data type on big-endian machines. ! 644: ! 645: * source.c (directory_command): Detect `:' in arg and reject it. ! 646: Free the old directory-path. Simplify things like `/.' in ! 647: dirname. ! 648: ! 649: * source.c (openp): Simplify `./' in specified name. ! 650: ! 651: * source.c (find_source_lines): Compare source mtime against ! 652: `exec_mtime' and warn if source is newer. ! 653: ! 654: * source.c (line_info): No arg means use last line listed ! 655: or line following last one this command was used on. ! 656: If from tty, clear out argument so Return is like `i li' without ! 657: arg. ! 658: ! 659: * stack.c (frame_info): Print addresses registers are saved at. ! 660: ! 661: * stack.c (return_command): When asking for confirmation, give ! 662: name of function that will be made to return. ! 663: ! 664: * valops.c (call_function): If function type is ! 665: pointer-to-function, dereference it to compute return type. ! 666: If pointer-to-object, assume function returns int. ! 667: If char, assume that the value's address is the function address ! 668: (because it's a misc functon). If int, the value itself is the ! 669: function address. ! 670: ! 671: * dbxread.c (compare_symbols): Sort register symbols ! 672: before all others. ! 673: ! 674: * eval.c (evaluate_subexp_for_address): New function like ! 675: `evaluate_subexp' but returns a value for the address where ! 676: the subexpression's value would be located. ! 677: ! 678: * eval.c (evaluate_subexp_for_sizeof): New function like ! 679: `evaluate_subexp' but returns a value for the size of the subexp. ! 680: ! 681: * eval.c (evaluate_subexp_with_coercion): Like `evaluate_subexp' ! 682: but coerces arrays to pointers (without taking the time to ! 683: read the array contents). ! 684: ! 685: * eval.c (evaluate_subexp): Use the three new functions above ! 686: when appropriate instead of calling self recursively. ! 687: ! 688: Wed Jan 14 17:00:03 1987 Richard Mlynarik (mly at prep) ! 689: ! 690: * core.c (core_file_command): ! 691: Use correct file in calls to perror_with_name ! 692: ! 693: Mon Jan 12 03:34:35 1987 Richard Mlynarik (mly at prep) ! 694: ! 695: * breakpoint.c (map_breakpoint_numbers): ! 696: Err if no args not supplied, otherwise would get mpv. ! 697: ! 698: * main.c (main): ! 699: Command-line arg "-d dir" adds dir to source-file directory ! 700: search-list. ! 701: ! 702: Sun Jan 11 19:19:52 1987 Richard Mlynarik (mly at prep) ! 703: ! 704: * symmisc.c (free_all_symtabs): ! 705: Don't call free on 0. ! 706: ! 707: * core.c (exec_file_command): ! 708: Use correct name in call to perror_with_name. ! 709: Record absolute pathname. ! 710: Don't savestring an arg to concat. ! 711: ! 712: * dbxread.c (symbol_file_command): ! 713: Record absolute name of pathname opened. ! 714: Print a message if file doesn't have a symbol-table. ! 715: Don't savestring an arg to concat. ! 716: ! 717: * source.c (openp): ! 718: Add new arg filename_opened, which if non-zero will be set to a ! 719: malloced string of the absolute name of the actual filename opened. ! 720: ! 721: * breakpoint.c (clear_command): ! 722: If from_tty or cleared more than one breakpoint at location, ! 723: print which bpts were deleted. ! 724: ! 725: * breakpoint.c (break_command_1, break_command, tbreak_command): ! 726: If from_tty, mention any other breakpoints set at same location. ! 727: ! 728: * symtab.c (decode_line_1): ! 729: If no symtabs, err mentioning `symbol-file' command rather than ! 730: saying "function foo not defined" ! 731: ! 732: Fri Jan 9 01:25:19 1987 Richard Mlynarik (mly at prep) ! 733: ! 734: * main.c (set_prompt_command): ! 735: Add support command "set-prompt" ! 736: ! 737: * printcmd.c (undisplay_command): ! 738: Fix paren error to make "undisplay <number>" work. ! 739: ! 740: Wed Jan 7 12:06:09 1987 Richard Mlynarik (mly at prep) ! 741: ! 742: * main.c (print_gdb_version, gdb_version_info): ! 743: Add command "info version" to report the version ! 744: of gdb for use in bug reports. ! 745: ! 746: * infcmd.c: ! 747: Ensure inferior_args always points to string starting with a space ! 748: and is never 0. ! 749: ! 750: * printcmd.c: (clear_displays, undisplay_command): ! 751: Fix bug in clear_displays which led to looping. ! 752: Make undisplay_command call it instead of wrong-looking code which ! 753: looked at (display->number == 0) instead of (display == 0) to ! 754: determine if it were at the end of the chain. ! 755: ! 756: Mon Dec 15 20:57:06 1986 Richard M. Stallman (rms at prep) ! 757: ! 758: * utils.c (query): Don't ignore a second line if given a null line. ! 759: ! 760: * infrun.c (normal_stop): Print "bug in shell" message ! 761: only for a segmentation fault. ! 762: ! 763: * main.c (main): Read init file from home directory if any, ! 764: before init file from current directory. ! 765: ! 766: Thu Dec 4 09:05:35 1986 Richard M. Stallman (rms at prep) ! 767: ! 768: * source.c (select_source_symtab): Don't ref thru arg if null. ! 769: ! 770: * m68k.opcode.h: For trap instruction code, use type T. ! 771: * m68k-pinsn.c (print_insn_arg): Recognize new arg-code T ! 772: and print the trap vector properly. ! 773: ! 774: * m-sun[23].h (FRAME_FIND_SAVED_REGS): Recognize a movl REG,-(sp) ! 775: as a way to save one register. Recognize clrw -(sp); movw -(sp) ! 776: after saving regs as a way to save the PS register. Adjust the ! 777: way to find the starting pc of a stack dummy frame for the fact ! 778: that these frames now save the PS. ! 779: ! 780: * m-sun[23].h (POP_FRAME): Restore PS register if frame saved it. ! 781: ! 782: * m-sun[23].h (PUSH_DUMMY_FRAME): Push the old PS register. ! 783: ! 784: * m-sun[23].h (CALL_DUMMY, etc.): Fix erroneous binary code for ! 785: the addl #nnn,sp instruction. Insert clrw -(sp); movw -(sp) ! 786: to indicate that the PS has been saved. ! 787: ! 788: * infrun.c (wait_for_inferior): If inferior exits, call ! 789: mark_breakpoints_out so it works to delete breakpoints afterward. ! 790: ! 791: * infrun.c (normal_stop): After popping a stack dummy frame, ! 792: select the frame that we get to. ! 793: ! 794: * dbxread.c (process_one_symbol): Store new `depth' field ! 795: in all context_stack elements created. For N_RBRAC, test ! 796: that depth matches that in the context_stack; if not, error. ! 797: ! 798: * dbxread.c (all callers of error): Make all error messages ! 799: start "Invalid symbol data: " and end with value of symnum. ! 800: Also change a few aborts to errors. ! 801: ! 802: Mon Dec 1 20:20:37 1986 Richard M. Stallman (rms at prep) ! 803: ! 804: * version.c: Version 1.11. ! 805: ! 806: * breakpoint.c (condition_command): If no condition spec'd, ! 807: print "breakpoint N now unconditional". ! 808: ! 809: * breakpoint.c (commands_command): Give different error messages ! 810: for cases of args not containing a breakpoint number ! 811: and args containing anything after the breakpoint number. ! 812: ! 813: * commands.c (lookup_command): Don't store a zero in *p ! 814: if have an undefined subcommand that is not an error. ! 815: ! 816: * commands.c (lookup_command): For recursive call, ! 817: pass subcommand list properly. Was passing the address ! 818: of the word containing the list. ! 819: ! 820: * core.c ({core,exec}_file_name): If no arg, tell user ! 821: what the effect is. ! 822: ! 823: * dbxread.c (define_symbol): Accept class code 'v' ! 824: for static variable within a function. ! 825: ! 826: * dbxread.c (read_type): Now allow any plain number or ! 827: pair of numbers in parens, with no code letter. This means ! 828: define new type same as type with specified number, or define ! 829: it as void if specified number's type is not yet mentioned. ! 830: ! 831: * m68k-pinsn.c (print_insn_arg): Case of general operand ! 832: in byte insn that happened to be immediate used wrong arg-size. ! 833: ! 834: * printcmd.c (set_next_address): Set next_address from arg ! 835: and also set value of `$_' from it. ! 836: ! 837: * printcmd.c (do_examine): Save address in last_examine_address ! 838: and value fetched to examine in last_examine_value. ! 839: ! 840: * printcmd.c (x_command): Copy last_examine_{address,value} ! 841: into values of `$_' and `$__'. Change `x' documentation string. ! 842: ! 843: * source.c (directory_command): Query when no args now says ! 844: what new value it wants use for the path. ! 845: ! 846: * source.c (list_command): Don't die in cases like `list ,+30'. ! 847: ! 848: * source.c (line_info): Call `set_next_address' to make `x' ! 849: display the text of the line. Change `info list' doc string. ! 850: ! 851: Sat Nov 29 07:59:29 1986 Richard M. Stallman (rms at prep) ! 852: ! 853: * printcmd.c (undisplay_command): If get no arg, ! 854: rather than crashing, query and then delete undisplay everything. ! 855: ! 856: Fri Nov 28 15:43:52 1986 Richard M. Stallman (rms at prep) ! 857: ! 858: * dbxread.c (process_one_symbol): If N_LBRAC sym ! 859: has a greater value that N_RBRAC, ignore the ! 860: N_LBRAC value and give the block zero length. ! 861: ! 862: Tue Nov 25 03:10:12 1986 Richard M. Stallman (rms at prep) ! 863: ! 864: * dbxread.c (process_one_symbol): Ignore N_NSYMS symbols ! 865: that appear in Ultrix. ! 866: ! 867: Sat Nov 22 22:49:06 1986 Richard M. Stallman (rms at prep) ! 868: ! 869: * version.c: version 1.10. ! 870: ! 871: * valprint.c (type_print*): ! 872: SHOW < 0 now means abbreviate struct/union members ! 873: or enum values with `...'. SHOW now decremented on ! 874: each recursion in type_print_base. Several places ! 875: that used to check !show now check show <= 0. ! 876: ! 877: * valprint.c (val_print): Pass -1 for SHOW to type_print ! 878: when printing typename inside parens or braces. ! 879: ! 880: * printcmd.c (print_command): If no value specified to print, ! 881: print the value of $. ! 882: ! 883: * expression.h, expread.y, eval.c, expprint.c: ! 884: OP_MEMVAL renamed UNOP_MEMVAL ! 885: and now allows any expression, not just an integer address. ! 886: It now has same format as UNOP_CAST and works almost like it. ! 887: Each place that referred to it has been rewritten ! 888: starting with a copy of the code that handles UNOP_CAST. ! 889: Doc for `print' command changed for this. ! 890: ! 891: * source.c (init_source_path): ! 892: Free and zero out any line_charpos's saved in source symtabs. ! 893: ! 894: * breakpoint.c (condition_command): ! 895: Parse the condition in the environment of the code where the ! 896: breakpoint is set. This requires finding the breakpoint ! 897: before parsing, so code is rearranged. ! 898: ! 899: * dbxread.c (dbx_alloc_type): ! 900: New function given typenums returns the type for those typenums ! 901: or allocates a new, empty type for those typenums and returns it. ! 902: ! 903: * symtab.c (smash_type_to_{pointer,function}): ! 904: New functions modify an already-allocated type object ! 905: to be a pointer to or function returning some given type. ! 906: ! 907: * dbxread.c (read_type): Uses dbx_alloc_type in many cases. ! 908: Reading a pointer or function type now works by doing that, ! 909: then reading the value type or type pointed to, then smashing ! 910: it into the type already allocated. This makes some fwd refs win. ! 911: Likewise for structs and unions. ! 912: ! 913: * dbxread.c (read_struct_type): Now receives the type object ! 914: as args. Used to get typenums as args and look up the type ! 915: itself. ! 916: ! 917: * dbxread.c (symbol_file_command): ! 918: At very end, clear out any type name that `char *' has received. ! 919: ! 920: Thu Nov 20 16:43:53 1986 Richard M. Stallman (rms at prep) ! 921: ! 922: * m-sun2.h, m-sun3.h (FIND_FRAME_SAVED_REGS): ! 923: Was incrementing address even for regs not saved. ! 924: ! 925: Sun Nov 16 14:59:07 1986 Richard M. Stallman (rms at prep) ! 926: ! 927: * values.c (value_field): Was adding in byte offset ! 928: before calling unpack_field_as_long, which itself ! 929: adds in the offset. Now pass addr of start of structure. ! 930: ! 931: * infrun.c (normal_stop): Clean up inferior_pid conditionals: ! 932: just return early if no inferior. ! 933: ! 934: Thu Nov 13 15:45:50 1986 Richard M. Stallman (rms at prep) ! 935: ! 936: * dbxread.c (struct header_file): add new field .instance ! 937: to distinguish the various entries for one header file. ! 938: ! 939: * dbxread.c (process_one_symbol): Use the `value' of ! 940: a N_BINCL or N_EXCL as the instance code for the header file. ! 941: ! 942: * dbxread.c (add_{new,old}_header_file): ! 943: Accept an instance code as arg and treat it as if it were ! 944: part of the file name for distinguishing and finding entries. ! 945: ! 946: * dbxread.c (add_new_header_file, read_type): ! 947: Turn off the header_file_prev_index feature with #if 0. ! 948: ! 949: * values.c (unpack_field_as_long, modify_field): ! 950: Run-time test to distinguish big and little endian machines ! 951: and do shifting accordingly. ! 952: ! 953: Tue Nov 11 00:31:18 1986 Richard M. Stallman (rms at prep) ! 954: ! 955: * version.c: version 1.9. ! 956: ! 957: * breakpoint.c (delete_command): ! 958: Don't query if 2nd arg is zero. ! 959: ! 960: * breakpoint.c (clear_breakpoints): ! 961: Pass 2nd arg of zero to delete_command. ! 962: ! 963: Sat Nov 8 23:29:19 1986 Richard M. Stallman (rms at prep) ! 964: ! 965: * breakpoint.c (delete_command): ! 966: Ask for confirmation when used with no arg (delete all). ! 967: ! 968: Fri Nov 7 11:23:09 1986 Richard M. Stallman (rms at prep) ! 969: ! 970: * infrun.c (start_inferior, wait_for_inferior): ! 971: Eliminate `stop_in_shell' which was not being maintained right. ! 972: New variable `running_in_shell' is set to 1 or 0 when the ! 973: expected SIGTRAPs happen, and is simply examined at other times. ! 974: ! 975: * infrun.c (wait_for_inferior): ! 976: If get SIGSEGV with running_in_shell == 1, it is sh ! 977: allocating memory. Pass the signal silently to the shell. ! 978: ! 979: * core.c (exec_file_command): ! 980: data_{start,end} are adjusted unconditionally when an ! 981: exec file is opened, so closing counter-adjustment is ! 982: now unconditional as well. ! 983: ! 984: * printcmd.c (x_command): ! 985: Don't erase the expression from the calling args ! 986: if cllaed noninteractively (used to be clobbering ! 987: definitions of user-defined commands). ! 988: ! 989: * source.c (list_command): likewise. ! 990: ! 991: Wed Nov 5 09:41:00 1986 Richard M. Stallman (rms at prep) ! 992: ! 993: * Makefile: New variable OBSTACK1 that people can use ! 994: to make obstack.o a dependency of gdb. ! 995: ! 996: * breakpoint.c (initialize): ! 997: Define new aliases "br", "bre" and "brea" for "break". ! 998: ! 999: Sun Nov 2 21:16:06 1986 Richard Mlynarik (mly at prep) ! 1000: ! 1001: * symmisc.c (read_symsegs): ! 1002: Add an extra protection against invalid symbol-file ! 1003: ! 1004: * m-vax.h: ! 1005: Set KERNEL_U_ADDR and STACK_END_ADDR non-4.2-specifically ! 1006: ! 1007: Tue Oct 21 13:34:14 1986 Richard Mlynarik (mly at prep) ! 1008: ! 1009: * breakpoints.c (initialize): ! 1010: Delet reference to non-existent command "tenable" from doc of "enable" ! 1011: ! 1012: Tue Oct 14 19:58:27 1986 Richard Mlynarik (mly at prep) ! 1013: ! 1014: * printcmd.c (display_command, undisplay_command): ! 1015: * infcmd.c (run_command): ! 1016: Call dont_repeat. ! 1017: ! 1018: ! 1019: Local Variables: ! 1020: mode: indented-text ! 1021: eval: (auto-fill-mode 1) ! 1022: left-margin: 8 ! 1023: fill-column: 74 ! 1024: version-control: never ! 1025: End:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.