Commit graph

1031 commits

Author SHA1 Message Date
Ian Lance Taylor
fa0cd59bc6 Tue Jul 22 16:19:34 1997 Robert Hoehne <robert.hoehne@Mathematik.TU-Chemnitz.DE>
* bucomm.c (make_tempname): If we might be using a DOS filesystem,
	check for a backslash as well as a slash.
1997-07-22 20:22:05 +00:00
Ian Lance Taylor
217947b23d More tweaks. Add windres documentation. 1997-06-26 19:27:42 +00:00
Ian Lance Taylor
a89c9be075 * rcparse.y: Add a couple of missing semicolons (accepted by bison
but not byacc).
1997-06-26 18:21:02 +00:00
Ian Lance Taylor
d5a7bb530d * windres.c (main): Quit if we didn't get any resources.
* rescoff.c (write_coff_file): Don't free the relocation array
	until after we've closed the BFD.
1997-06-26 17:53:57 +00:00
Ian Lance Taylor
662cc41eaf * resbin.c: New file.
* rclex.l, rcparse.y, rescoff.c, resrc.c, windres.c, windres.h:
	Numerous fixes and improvements.
	* Makefile.in: Rebuild dependencies.
 	(CFILES): Add resbin.c.
	(WINDRES_OBJS): Add resbin.o.
1997-06-26 00:59:44 +00:00
Ian Lance Taylor
e4486bdf9f Another windres snapshot. Can now read the COFF resources directory,
although it doesn't yet parse out the binary format.
1997-06-23 00:08:54 +00:00
Ian Lance Taylor
1d371d35ee First stab at Windows resource compiler:
* windres.h: New file.
	* windres.c: New file.
	* resrc.c: New file.
	* rcparse.y: New file.
	* rclex.l: New file.
	* configure.in: Define and substitute BUILD_WINDRES.
	* configure: Rebuild.
	* Makefile.in: Rebuild dependencies.
 	(WINDRES_PROG): New variable.
	(PROGS): Add @BUILD_WINDRES@.
	(HFILES): Add dlltool.h and windres.h.
	(CFILES): Add windres.c and resrc.c.
	(GENERATED_CFILES): Add rcparse.c and rclex.c.
	(WINDRES_OBJS): New variable.
	$(WINDRES_PROG): New target.
	(rcparse.c, rcparse.h, rclex.c): New targets.
Snapshot.  windres can parse and print rc files.
1997-06-22 21:35:35 +00:00
Ian Lance Taylor
8eb693acc4 * dlltool.c (export_type): Add data field.
(def_exports): Add data parameter.  Change all callers.
	(dump_def_info): Print data field.
	(gen_def_file): Likewise.
	(make_one_lib_file): Handle data field by not emitting simple
	label and not emitting anything in SEC_TEXT.
	(dtab): Print data field.
	(process_duplicates): Merge data field.
	* dlltool.h (def_exports): Update declaration.
	* defparse.y (expline): Accept opt_DATA.  Pass it to def_exports.
	(opt_DATA): New non-terminal.
1997-06-12 16:30:55 +00:00
Ian Lance Taylor
a33f735924 * dlltool.h: New file.
* deflex.l: Include dlltool.h and libiberty.h.  Don't declare
	strdup.  Use xstrdup rather than strdup.
	* defparse.y: Include bfd.h, bucomm.h, and dlltool.h.
	* dlltool.c: Include dlltool.h and time.h.  Make a lot of
	variables and functions static.  Make a lot of char * variables
	and parameters const.  Add declarations for static functions.  Do
	some reindenting.  Hide more PowerPC stuff inside DLLTOOL_PPC.
1997-06-11 21:18:10 +00:00
Ian Lance Taylor
b4a3d22176 Wed Jun 11 12:05:52 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* ar.c (bfd_special_undocumented_glue): Add const.
1997-06-11 16:06:29 +00:00
Bob Manson
fd4addafba Removed global variable "exec_output". remote_load now returns
the output as part of its result.
1997-06-04 00:25:16 +00:00
Ian Lance Taylor
044c6b40b2 * configure.in: Don't clear OPCODES when --enable-commonbfdlib is
used on HP/UX.
	* configure: Rebuild.
1997-05-12 17:14:57 +00:00
Ian Lance Taylor
4066f85fd5 * Makefile.in (INSTALL): Set to @INSTALL@.
(INSTALL_XFORM, INSTALL_XFORM1): Remove.
	(install): Depend upon installdirs.  Use $(program_transform_name)
	directly, rather than using $(INSTALL_XFORM) and
	$(INSTALL_XFORM1).
	(installdirs): New target.
	(install-info): Run mkinstalldirs.
1997-04-15 17:45:20 +00:00
Ian Lance Taylor
4c62d7407d revert last patch 1997-04-14 20:04:38 +00:00
Ian Lance Taylor
7f92ace993 * Makefile.in (INSTALL): Set to @INSTALL@. 1997-04-14 20:01:10 +00:00
Ian Lance Taylor
49163945f7 * binutils-all/ar.exp (long_filenames): Check for a file system
with a 14 character file name length limit.
1997-04-14 16:37:29 +00:00
Ian Lance Taylor
575653d37d From Thomas Graichen <graichen@rzpd.de>:
* Makefile.in: Always use $(SHELL) when running move-if-change.
	* configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub.
	* configure: Rebuild.
1997-04-14 15:57:21 +00:00
Ian Lance Taylor
33106b6039 * configure.in: Add AC_FUNC_ALLOCA.
* configure, config.in: Rebuild.
	* bucomm.h: Add alloca handling, copied from gas/as.h.
	* dlltool.c: Add #pragma alloca for AIX to start of file.
	* nlmconv.c: Likewise.
1997-04-04 20:07:07 +00:00
Ian Lance Taylor
a067162dd2 * Makefile.in (distclean): Remove site.exp and site.bak. Remove
everything that clean removes.
1997-04-04 18:35:06 +00:00
Ian Lance Taylor
fbe0d6c29f * Makefile.in (distclean): Remove site.exp and site.bak. 1997-04-04 18:28:25 +00:00
Ian Lance Taylor
3884d17b45 * Makefile.in (VERSION): Set to 2.8.1. 1997-04-03 18:19:26 +00:00
Ian Lance Taylor
e46ea72de6 remove uninteresting TODO file 1997-04-02 20:44:14 +00:00
Ian Lance Taylor
e72afe26be Tue Apr 1 16:21:44 1997 Klaus Kaempf <kkaempf@progis.de>
* configure.com: New file.
	* config.h-vms: Remove file.
	* makefile.vms: Update for new configure scheme.
1997-04-01 21:22:54 +00:00
Ian Lance Taylor
ed41b431d0 Fri Mar 28 17:57:53 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
* Makefile.in ($(OBJDUMP_PROG)): Don't link against BFDLIB twice.
	* configure.in: Add AC_ARG_ENABLE for commonbfdlib.  If it is set,
	set OPCODES to empty.
	* configure: Rebuild.
1997-03-28 23:17:08 +00:00
Ian Lance Taylor
2483354d4b Based on patch from Marty Leisner <leisner@sdsp.mc.xerox.com>:
* objcopy.c: Include <utime.h> or <sys/time.h>.
	(strip_options): Add "preserve-dates".
	(copy_options): Likewise.
	(copy_usage): Mention -p and --preserve-dates.
	(strip_usage): Likewise.
	(make_same_dates): New static function.
	(strip_main): Handle -p.
	(copy_main): Likewise.
	* binutils.texi, strip.1, objcopy.1: Document new option.
1997-03-27 22:02:46 +00:00
Ian Lance Taylor
8d9b566dc5 mention addr2line 1997-03-27 21:37:03 +00:00
Ian Lance Taylor
fb38844dcb addr2line.c contributed by Ulrich Lauther
<Ulrich.Lauther@zfe.siemens.de>:
	* addr2line.c: New file.
	* Makefile.in: Rebuild dependencies.
 	(ADDR2LINE_PROG): New variable.
	(MANPAGES): Add addr2line.
	(PROGS): Add $(ADDR2LINE_PROG).
	(CFILES): Add addr2line.c.
	($(ADDR2LINE_PROG)): New target.
	* binutils.texi: Document addr2line.
	* addr2line.1: New file.
1997-03-27 21:35:00 +00:00
Ian Lance Taylor
6d17c8eb26 * version.c (print_version): Update copyright date. 1997-03-27 21:03:14 +00:00
David Edelsohn
718a5c17ea Remove m32r sanitization. 1997-03-24 21:29:21 +00:00
Jeff Law
1afd299b8f * size.c (usage): Make definition match its prototype.
(display_bfd, lprint_number, rprint_number): Likewise.
        (print_berkeley_format, sysv_internal_printer): Likewise.
        (print_sysv_format): Likewise.
        * nm.c (set_print_radix, set_output_format): Likewise.
        * objcopy.c (filter_bytes): Likewise.
1997-03-21 04:28:24 +00:00
Ian Lance Taylor
ce1f5b2a4e Tue Mar 18 16:39:55 1997 H.J. Lu <hjl@lucon.org>
* Many files: Add function prototypes.
	* ar.c (mri_emul, get_pos_bfd): Make static.
	* arlex.l: Include "libiberty.h".  Don't declare strdup.  Use
	xstrdup rather than strdup.
	* arparse.y (yyerror): Make argument const.  Correct typo.
	* arsup.c (strdup): Don't declare.
	(ar_save): Use xstrdup rather than strdup.
	* filemode.c: Include "bucomm.h".
	* nm.c (usage): Make static.
	(print_symname): Make format and name const.
	* objcopy.c (cat): Remove.
	(copy_archive): Make output_target const.  Use concat, not cat.
	(copy_file, simple_copy, smart_rename): Make arguments const.
	* objdump.c (read_section_stabs): Likewise.
	(print_section_stabs): Likewise.
	(display_target_tables): Don't declare getenv.
	* strings.c (strings_object_file): Change file to const.
	(print_strings): Change filename to const.
	* Makefile.in: Rebuild dependencies.

Tue Mar 18 11:37:24 1997  Ian Lance Taylor  <ian@cygnus.com>

	* configure.in: Add BFD_NEED_DECLARATION(getenv).
	* acconfig.h: Add NEED_DECLARATION_GETENV.
	* bucomm.h (getenv): Declare if NEED_DECLARATION_GETENV.
	* configure, config.in: Rebuild.
	* nlmconv.c (getenv): Don't declare.
1997-03-18 21:51:04 +00:00
Ian Lance Taylor
e0742b2400 * Makefile.in: Rebuild dependencies. 1997-03-18 16:37:42 +00:00
Ian Lance Taylor
9793039fc6 Based on patches from Jamie Lokier <jamie@rebellion.co.uk>:
* objdump.c: Include "demangle.h".
	(do_demangle): New static variable.
	(usage): Mention -C/--demangle.
	(long_options): Add "demangle".
	(objdump_print_symname): New static function.
	(objdump_print_addr_with_sym): Use objdump_print_symname.
	(disassemble_bytes): Likewise.
	(dump_reloc_set): Likewise.
	(dump_symbols): Demangle symbol name.
	(main): Handle -C.
	* binutils.texi, objdump.1: Document -C/--demangle.
1997-03-15 21:50:56 +00:00
Ian Lance Taylor
5c59269f50 * objdump.c (usage): Mention --no-show-raw-insn.
(long_options): Add "no-show-raw-insn".
	(disassemble_bytes): Handle --no-show-raw-insn.
	* binutils.texi, objdump.1: Document --no-show-raw-insn.
1997-03-15 20:37:45 +00:00
Martin Hunt
02053c20d5 Add d30v to cpus. 1997-03-06 19:58:37 +00:00
Michael Meissner
b185d567f5 Use change-log-mode, not indented-text-mode 1997-02-27 18:45:17 +00:00
Ian Lance Taylor
ab3a59cf4c * objdump.c (adjust_section_vma): New static variable.
(usage): Mention --adjust-section-vma.
	(OPTION_ADJUST_VMA): Define.
	(long_options): Add "addjust-vma".
	(display_bfd): If adjust_section_vma is not 0, add it to all the
	section addresses.
	(main): Handle OPTION_ADJUST_VMA.
	* binutils.texi, objdump.1: Document --adjust-vma.
1997-02-26 02:30:31 +00:00
Ian Lance Taylor
c05a9b3368 Thu Feb 13 21:34:43 1997 Klaus Kaempf (kkaempf@progis.de)
* config.h-vms: sbrk() is provided on openVMS/Alpha.
	* makefile.vms: allow compiling with current gcc snapshot.
1997-02-14 02:36:21 +00:00
Ian Lance Taylor
f2566b6114 * arsup.c, coffgrok.c, dlltool.c, nlmconv.c: Use xmalloc rather
than malloc.
1997-02-14 01:18:32 +00:00
Ian Lance Taylor
dd199a3ef7 * objdump.c (disassemble_data): Correct VMA argument to
find_symbol_for_address.  Improve handling of code with no symbol
	followed by code with a symbol.
1997-02-12 21:13:06 +00:00
Ian Lance Taylor
0988ea9f3e Wed Feb 12 12:16:47 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* objdump.c (disassemble_bytes): Make output of raw instructions
	work better for non-standard values of bytes_per_chunk and
	bytes_per_line.

I also fixed the spacing in the last patch.
1997-02-12 17:18:38 +00:00
Martin Hunt
33a795ddf3 Thu Feb 6 14:14:59 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
* objdump.c (disassemble_bytes): Added code to allow some control
 	over the way raw instructions are displayed.
1997-02-06 22:22:37 +00:00
Ian Lance Taylor
20bf2b0a01 * stabs.c (struct bincl_file): Add next_stack field.
(push_bincl): Put the new file on both bincl_list and
	bincl_stack.  Clear the file_types field.
	(pop_bincl): Use the next_stack field when popping the stack.
	Don't put the file on bincl_list.
	(find_excl): Include the file name when warning about an unfound
	N_EXCL.

	* debug.c (debug_type_samep): Don't crash if we are passed NULL.
PR 11465.
1997-02-06 17:46:46 +00:00
Ian Lance Taylor
70dce6775f Thu Feb 6 11:54:24 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
* objcopy.1: Add missing space after .B.
1997-02-06 16:55:10 +00:00
Ian Lance Taylor
8275482ce0 Fri Jan 31 10:33:07 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* objdump.c (disassemble_data): Initialize `aux.require_sec'.
1997-01-31 15:34:12 +00:00
Ian Lance Taylor
0948199a7b tweak last change 1997-01-29 19:08:53 +00:00
Ian Lance Taylor
54f74247cb fix copyrights, add NEWS entry 1997-01-29 19:00:54 +00:00
Ian Lance Taylor
51b8c41677 * objdump.c (objdump_print_value): Add skip_zeroes parameter.
Change all callers.
	(objdump_print_addr_with_sym): Likewise.  Call objdump_print_value
	to print address.
	(objdump_print_addr): New static function.
	(objdump_print_address): Just call objdump_print_addr.
	(disassemble_bytes): Print real address, not function offset.
	Skip a certain number of leading zeroes.

	* objdump.c (disassemble_zeroes): New static variable.
	(usage): Mention --disassemble-zeroes.
	(long_options): Add "disassemble-zeroes".
	(disassemble_bytes): Check disassemble_zeroes.
Changes requested by LSI.
1997-01-29 18:58:04 +00:00
Bob Manson
787f622077 Major revision to testsuites for cross-testing and DOS testing support. 1997-01-29 09:40:31 +00:00
Ian Lance Taylor
b4aabb244e * objdump.c (disassemble_bytes): Don't skip zeroes if the
disassembler has told us that we are in a branch delay slot.
1997-01-28 21:47:52 +00:00
Ian Lance Taylor
a6a7e138bf * size.c (berkeley_sum): Rewrite. Skip sections which are not
SEC_ALLOC.  Count SEC_READONLY sections as text.
1997-01-20 20:05:33 +00:00
Ian Lance Taylor
6ded661565 * Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE. 1996-12-31 20:43:28 +00:00
Ian Lance Taylor
d4dd7795d9 * configure.in: Work around bug in AC_FUNC_VFORK in autoconf 2.12.
* configure: Rebuild.
1996-12-27 16:20:58 +00:00
Stan Shebs
51cd0ae7db * mpw-make.sed: Use NewFolderRecursive for installation. 1996-12-19 19:29:38 +00:00
Ian Lance Taylor
9a442fe8a5 Based on patch from Andrew J Klossner <andrew@pogo.wv.tek.com>:
* objcopy.c (OPTION_WEAKEN): Define.
	(copy_options): Add "weaken".
	(copy_usage): Mention --weaken.
	(weaken): New static variable.
	(filter_symbols): Handle weaken.
	(copy_object): Call filter_symbols if weaken.
	(copy_main): Handle OPTION_WEAKEN.
	* binutils.texi, objcopy.1: Document --weaken.
PR 11272.
1996-12-19 18:16:45 +00:00
Ian Lance Taylor
9681fa4501 objdump --dynamic-reloc now works with ELF 1996-12-15 20:00:20 +00:00
Ian Lance Taylor
e763bd6fad * ieee.c (parse_ieee_bb): Always initialize namcopy to avoid gcc
warning about uninitialized variable.
	(ieee_read_cxx_class): Likewise, for pf.
	(ieee_enum_type): Likewise, for i.
1996-12-06 22:22:52 +00:00
Ian Lance Taylor
a1e48de01d * objdump.c (disassemble_data): Don't crash if there is no
symbol.
1996-11-25 21:54:02 +00:00
Angela Marie Thomas
ff0bc27973 finally remove errant mentions of Sanitize 1996-11-18 03:13:31 +00:00
Ian Lance Taylor
cbcfa12917 * binutils.texi: Add section on reporting bugs. 1996-11-01 20:08:52 +00:00
Ian Lance Taylor
fbc3fbe587 * stabs.c (struct stab_handle): Add bincl_list field.
(parse_stab): Pass value to push_bincl.  Call find_excl for
	N_EXCL.
	(struct bincl_file): Add hash, file and file_types fields.
	(push_bincl): Add hash parameter.  Save it in the new hash field.
	Save the file number in the new file field.
	(pop_bincl): Put the bincl_file on bincl_list, rather than freeing
	it.  Save the file types in the new file_types field.
	(find_excl): New static function.
PR 10980.
1996-11-01 03:06:49 +00:00
Ian Lance Taylor
0098633432 * ieee.c (ieee_lineno): Don't compare line number addresses to
info->highaddr (undo part of October 28 patch).
1996-11-01 02:21:50 +00:00
David Edelsohn
2b5c4499c2 (set_expected_cpus): Add m32r. 1996-10-31 18:59:51 +00:00
Ian Lance Taylor
af9168428d * objdump.c (objdump_print_value): Don't print the empty string
for zero.
1996-10-29 21:41:28 +00:00
Ian Lance Taylor
0788224594 * stabs.c (struct stab_handle): Add function_end field.
(start_stab): Initialize function_end.
	(finish_stab): Pass info->function_end to debug_end_function.
	(parse_stab): If info->function_end is set, use it as the address
	which ends a function.
1996-10-28 22:17:52 +00:00
Ian Lance Taylor
5317d6f945 * ieee.c (ieee_array_type): Remember the correct size. 1996-10-28 22:12:02 +00:00
Ian Lance Taylor
9720a1a70f * ieee.c (ieee_finish_compilation_unit): Permit coalescing ranges
that are up to 0x1000 bytes apart, not just 64.
	(ieee_add_bb11_blocks): Don't bother to emit a BB11 that is less
	than 0x100 bytes.
	(ieee_lineno): Only emit line numbers that are less than
	info->highaddr.
1996-10-28 22:01:06 +00:00
Ian Lance Taylor
59f2e5dbeb * ieee.c (struct ieee_defined_enum): Add defined field.
(ieee_enum_type): If the enum tag has been seen before but not
	defined, reuse the same type index, and define it.
	(ieee_tag_type): If this enum has not been defined, add an
	undefined entry to the list of enums.
PR 10946.
1996-10-25 20:57:15 +00:00
Ian Lance Taylor
653735e1ba * objdump.c (disassemble_bytes): Let the disassembler override the
number of bytes printed on a line.
1996-10-25 16:14:40 +00:00
Ian Lance Taylor
4cb99ff2a1 * objdump.c (prefix_addresses): New static variable.
(long_options): Add "prefix-addresses".
	(compare_symbols): Sort BSF_FUNCTION symbols before other
	symbols.
	(find_symbol_for_address): New static function, broken out of
	objdump_print_address.
	(objdump_print_addr_with_sym): New static function, broken out of
	objdump_print_address.
	(objdump_print_address): Call new functions.
	(disassemble_bytes): New static function, broken out of
	disassemble_data.  Change disassembly format, unless
	prefix_addresses is set.
	(disassemble_data): Call disassemble_bytes.  Unless
	prefix_addresses is set, disassemble in chunks headed by a
	symbol.
	* binutils.texi, objdump.1: Document --prefix-addresses.
1996-10-24 21:21:17 +00:00
Ian Lance Taylor
e32ded5231 * rddbg.c (read_section_stabs_debugging_info): Preserve the
backslash when concatenating multiple stabs strings.
1996-10-24 20:43:23 +00:00
David Edelsohn
e39174c3f8 * dlltool.c (scan_open_obj_file): Fix loop exit test.
Add missing parameter to def_exports.
1996-10-10 18:47:46 +00:00
Ian Lance Taylor
d39bedb220 * Makefile.in (LEX_OPTIONS): Set to empty string. -I -Cem is the
default for flex, and is not recognized by lex.
PR 10819.
1996-10-08 16:07:23 +00:00
Ian Lance Taylor
55311d1cf1 * binutils.texi (Target Selection): Document that you can now
specify targets using configuration triplets.
1996-10-03 21:43:00 +00:00
Jason Molenda
42ad648437 * Makefile.in (clean): Remove config.log. 1996-10-03 06:38:49 +00:00
Ian Lance Taylor
f57e938fd5 Wed Oct 2 15:49:16 1996 Klaus Kaempf <kkaempf@progis.de>
* makefile.vms: Bump version date.
1996-10-02 19:50:19 +00:00
Ian Lance Taylor
01b1f5eb29 * lib/utils-lib.exp (binutil_version): Fix for current version
printing.
1996-10-01 19:11:13 +00:00
Ian Lance Taylor
7f924d5516 * version.c (print_version): New function.
* bucomm.h (print_version): Declare.
	* ar.c (program_version): Don't declare.
	(do_show_version): Remove.
	(usage): Add help parameter.  Print bug report address.
	(main): Set is_ranlib at start.  Check for --help and --version.
	Call print_version, not do_show_version.
	* nlmconv.c (program_version): Don't declare.
	(main): Call print_version.
	(show_usage): Print bug report address.
	* nm.c (program_version, print_version): Don't declare.
	(usage): Print bug report address.
	(main): Call print_version.
	* objcopy.c (program_version): Don't declare.
	(copy_usage): Print bug report address.
	(strip_usage): Likewise.
	(strip_main): Call print_version.
	(copy_main): Likewise.
	* objdump.c (program_version): Don't declare.
	(usage): Print bug report address.
	(main): Call print_version.
	* size.c (program_version): Don't declare.
	(usage): Print bug report address.
	(main): Call print_version.
	* strings.c (program_version): Don't declare.
	(main): Call print_version.
	(usage): Print bug report address.
	* Makefile.in: Update dependencies.
1996-10-01 19:10:40 +00:00
Ian Lance Taylor
81530f93ef * ieee.c (struct ieee_write_type): Add reflocalp field.
(ieee_pointer_type): Set reflocalp after pushing type.
	(ieee_function_type): If reflocalp is set, make this type local.
	(ieee_range_type, ieee_array_type, ieee_set_type): Likewise.
	(ieee_const_type, ieee_volatile_type): Likewise.
	(ieee_struct_field, ieee_class_baseclass): Likewise.
PR 10638.
1996-09-16 21:45:01 +00:00
Ian Lance Taylor
0dcbbb6029 * ieee.c (struct ieee_info): Add global_types field.
(parse_ieee_bb): When starting a BB1, initialize the types field
	to the global_types field.
	(parse_ieee_be): When ending a BB2, copy the types field to the
	global_types field.
1996-09-16 19:33:04 +00:00
Ian Lance Taylor
decf286508 * objcopy.c (change_leading_char): New static variable.
(OPTION_CHANGE_LEADING_CHAR): Define.
	(copy_options): Add "change-leading-char".
	(copy_usage): Mention --change-leading-char.
	(filter_symbols): Add obfd parameter.  Change all callers.
	Implement change_leading_char.
	(copy_object): Call filter_symbols if change_leading_char.
	(copy_main): Handle OPTION_CHANGE_LEADING_CHAR.
	* binutils.texi, objcopy.1: Document --change-leading-char.
1996-09-13 21:34:08 +00:00
Ian Lance Taylor
93f66767b9 * objdump.c (L_tmpnam): Never define.
(display_target_list): Use choose_temp_base instead of tmpnam.
	(display_info_table): Likewise.
PR 10482.
1996-08-29 15:30:19 +00:00
Ian Lance Taylor
48d94633c6 * wrstabs.c (struct string_hash_entry): Add next field.
(struct stab_write_handle): Change strings to a pointer to
	string_hash_entry.  Add last_strings field.  Remove strings_alloc
	field.
	(string_hash_newfunc): Initialize next field.
	(stab_write_symbol): Copy string into hash table rather than into
	buffer.  Keep a list of hash table entries.
	(write_stabs_in_sections_debugging_info): Initialize last_string.
	Copy strings from list of hash table entries in memory.
	(stab_modify_type): If the entry on the stack is a definition,
	make a new definition rather than failing an assert.
	(stab_array_type): The size is only zero if high is strictly less
	than low.
PR 10377.
1996-08-23 04:00:43 +00:00
Ian Lance Taylor
d8fc141a56 * prdbg.c (pr_fix_visibility): Don't abort on
DEBUG_VISIBILITY_IGNORE.
1996-08-23 03:27:47 +00:00
Ian Lance Taylor
f110739b39 * debug.c (debug_name_type): Correct error message. 1996-08-23 03:26:59 +00:00
Ian Lance Taylor
b69f18f103 * configure.in: Substitute HLDENV.
* configure: Rebuild.
	* Makefile.in (HLDENV): New variable.  Use it whenever linking a
	program.
1996-08-23 00:09:01 +00:00
Stan Shebs
1906118dc7 * mpw-make.sed: Add symbolic doublequotes around the version
number.
1996-08-16 02:32:31 +00:00
Ian Lance Taylor
2a774ae9a6 Thu Aug 8 12:27:52 1996 Klaus Kaempf <kkaempf@progis.de>
* makefile.vms: Add better support for DEC C compilation.
	Add new macros as in Makefile.in.
1996-08-08 16:29:04 +00:00
Ian Lance Taylor
f0bbf79aea Wed Aug 7 14:27:33 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
* configure.in: Call BFD_NEED_DECLARATION on strstr and sbrk.
	* acconfig.h (NEED_DECLARATION_STRSTR): New macro.
	(NEED_DECLARATION_SBRK): New macro.
	* configure, config.in: Rebuild.
	* bucomm.h (strstr): Declare if NEED_DECLARATION_STRSTR.
	(sbrk): Declare if HAVE_SBRK and NEED_DECLARATION_SBRK.
1996-08-07 18:30:39 +00:00
Ian Lance Taylor
d24728a8b8 * objdump.c (disassemble_data): Set disasm_info.flavour from
abfd.
1996-07-26 18:07:33 +00:00
Ian Lance Taylor
64564077fd * dlltool.c (secdata): In non DLLTOOL_PPC case, change alignment
of .text section to 2.
1996-07-23 18:04:35 +00:00
Stu Grossman
18f39dfa12 * objdump.c (dump_section_stabs): Fix test for stabs sections
ending with numbers.  This fixes a problem with .stab being
	confused with .stab.index.
1996-07-22 15:49:34 +00:00
Ian Lance Taylor
7bcb64e019 * stabs.c (stab_demangle_fund_type): Return a void * for a
template, rather than simply aborting.
1996-07-10 17:35:33 +00:00
Ian Lance Taylor
c6304c0e13 * ar.c (open_inarch): Add file parameter. Change all callers. If
this is a newly created archive, set the target based on the
	file.
	* arsup.h (open_inarch): Update declaration.
1996-07-08 19:34:09 +00:00
Ian Lance Taylor
6af6c1e6ad * rdcoff.c (parse_coff): Get address to pass to debug_end_function
from function size, not value of .ef symbol.  From Ning
	Mosberger-Tang <ning@AZStarNet.com>.
1996-07-04 22:34:20 +00:00
Ian Lance Taylor
6624477c48 * Makefile.in (VERSION): Set to cygnus-2.7.1. 1996-07-04 19:38:41 +00:00
Ian Lance Taylor
9a14baf2fb fixup 1996-07-03 21:07:53 +00:00
Ian Lance Taylor
16c3e32aa0 * objcopy.c (strip_main): Add -o option, and handle it.
(strip_usage): Mention -o.
	* binutils.texi, strip.1: Mention -o.
1996-06-30 17:45:24 +00:00
Jason Molenda
f3d564b2dd * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
INSTALL_PROGRAM, INSTALL_DATA): Use autoconf set values.
        (docdir): Removed.
        * configure.in (AC_PREREQ): Autoconf 2.5 or higher.
        * configure: Rebuit.
1996-06-25 12:05:26 +00:00
Ian Lance Taylor
67c8c90141 * objdump.c (endian): New static variable.
(usage): Mention -EB/-EL/--endian.
	(long_options): Add "endian".
	(disassemble_data): If endianness was specified, replace
	abfd->xvec with a copy of itself with the given endianness.
	(main): Handle -EB/-EL/--endian.
	* binutils.texi, objdump.1: Mention -EB/-EL/--endian.
1996-06-24 20:49:28 +00:00
Ian Lance Taylor
8530ae8eed * configure.in: On alpha*-*-osf*, link against libbfd.a if not
using shared libraries.
	* configure: Rebuild with autoconf 2.10.
1996-06-24 16:04:19 +00:00
Ian Lance Taylor
25eb508ed4 * objdump.c (stabs): Change from struct internal_nlist * to
bfd_byte *.
	(print_section_stabs): Fetch stabs information directly, rather
	than assuming that struct internal_nlist is the right size.
1996-06-20 01:00:26 +00:00
Ian Lance Taylor
11de29d03b * binutils.texi: Document change to binary format: file position
based on load address, not section VMA.
1996-06-19 18:50:41 +00:00
Ian Lance Taylor
e10a4fc492 Tue Jun 18 15:03:44 1996 Klaus Kaempf <kkaempf@progis.de>
* config.h-vms, makefile.vms: New files.
1996-06-18 19:10:39 +00:00
Ian Lance Taylor
4f6d25a69e * dlltool.c (make_one_lib_file): Use BFD_RELOC_RVA rather than
BFD_RELOC_32 in IDATA7.
PR 9877.
1996-06-17 16:48:48 +00:00
Ian Lance Taylor
77dd44697f * nm.c (struct get_relocs_info): Define.
(line_numbers): New static variable.
	(long_options): Add "line-numbers".
	(usage): Mention -l and --line-numbers.
	(main): Handle -l.
	(print_symbol): Print line numbers if requested.
	(get_relocs): New static function.
	* binutils.texi, nm.1: Document -l/--line-numbers.
1996-06-12 18:59:47 +00:00
Ian Lance Taylor
1154821182 * objdump.c (dump_reloc_set): Add sec parameter. Change all
callers.  If with_line_numbers is set, display line numbers of
	relocation entries.
	* binutils.texi, objdump.1: Document -l with -r.
1996-06-12 03:14:14 +00:00
Ian Lance Taylor
7d1f346446 * README: Add notes on how to build if you don't have ar. 1996-06-06 19:14:16 +00:00
Michael Meissner
eb6dc7a527 Make main an int function, not void 1996-06-03 21:40:45 +00:00
Ian Lance Taylor
43f1d101ef * nm.c (filter_symbols): Check for BSF_WEAK as well as
BSF_GLOBAL.
	* objcopy.c (filter_symbols): Likewise.
1996-05-31 18:10:44 +00:00
Ian Lance Taylor
f687b277ce * objdump.c (disassemble_data): Don't refer to bytes past the end
of data.
1996-05-03 18:31:00 +00:00
Ian Lance Taylor
50b802e0f5 * rddbg.c (read_symbol_stabs_debugging_info): Move call to
free_saved_stabs outside the loop over the symbols.
1996-04-24 18:11:23 +00:00
Ian Lance Taylor
17aa82848e * objdump.c (compare_symbols): Sort symbols whose names start with
`.' after other symbols.  If no other decision can be made, sort
	symbols by name.
1996-04-23 16:58:18 +00:00
Ian Lance Taylor
9590fa867b * dep-in.sed: Substitute $(BFDDIR) for @BFDDIR@.
* Makefile.in: Rebuild dependencies.
	(dep.sed): Substitute $(BFDDIR) for @BFDDIR@.
1996-04-18 20:03:52 +00:00
Ian Lance Taylor
f32fb3fd1f * rdcoff.c: New file.
* rddbg.c (read_debugging_info): Read COFF symbols if COFF flavour
	and no stabs were found.
	* budbg.h (parse_coff): Declare.
	* Makefile.in: Rebuild dependencies.
	(CFILES): Add rdcoff.c.
	(DEBUG_OBJS): Add rdcoff.o.
1996-04-16 17:53:58 +00:00
David Edelsohn
2afb4d5ddb * nlmconv.c (choose_temp_base{,_try}): Delete, in libiberty now.
(link_inputs): Update call to choose_temp_base.
1996-04-15 22:57:02 +00:00
Ian Lance Taylor
b4cb4ea2ac * configure.in: Permit --enable-shared to specify a list of
directories.
	* configure: Rebuild.
1996-04-08 18:45:08 +00:00
Ian Lance Taylor
38d7c0125d * objdump.c (dump_section_header): Print the SEC_LINK_ONCE flag
and the SEC_LINK_DUPLICATES field.
1996-03-29 21:34:34 +00:00
J.T. Conklin
c31418c180 * nlmconv.1: Changed to be recognized by catman -w on Solaris. 1996-03-29 19:36:44 +00:00
Ian Lance Taylor
16bd15e9af * wrstabs.c (stab_enum_type): Set buf before using it. 1996-03-28 19:25:17 +00:00
Ian Lance Taylor
15731fdc0b * stabs.c (struct stab_handle): Add field abfd.
(start_stab): Add abfd parameter.
	(parse_stab_string): Skip the symbol leading char when searching
	for the value of a global symbol.
	* budbg.h (start_stab): Update declaration.
	* rddbg.c (read_section_stabs_debugging_info): Pass abfd to
	start_stab.
	(read_symbol_stabs_debugging_info): Likewise.
1996-03-22 20:51:47 +00:00
Ian Lance Taylor
f8910eff75 Wed Mar 20 18:08:19 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* objdump.c (disassemble_data): Make sure sym_name is always set.
	(dump_section_header): Always put a space after the section name.
	(dump_bfd_header): Terminate output with newline.
1996-03-20 23:09:56 +00:00
Ian Lance Taylor
5a52c5f8fe * wrstabs.c: New file.
* budbg.h (write_stabs_in_sections_debugging_info): Declare.
	* objcopy.c (write_debugging_info): For COFF or ELF, output stabs
	in sections.
	* Makefile.in: Rebuild dependencies.
	(CFILES): Add wrstabs.c.
	(WRITE_DEBUG_OBJS): New variable.
	($(OBJCOPY_PROG)): Use $(WRITE_DEBUG_OBJS), not $(DEBUG_OBJS).
	($(STRIP_PROG)): Likewise.
1996-03-20 21:51:25 +00:00
Ian Lance Taylor
e820a5b09e * ieee.c (struct ieee_handle): Add fields complex_float_index and
complex_double_index.
	(ieee_complex_type): Cache type index in complex_float_index and
	complex_double_index, depending upon size.  Set size on type stack
	to size * 2.

	* ieee.c (ieee_empty_type): Use builtin_unknown, not 0.
	(ieee_void_type): Use builtin_void, not 1.

	* ieee.c (parse_ieee_ty): Handle 'V' type code.
	(parse_ieee_atn): Don't require two numbers for type 10.

	* ieee.c (parse_ieee_be): Add one to offset at end of function or
	block.

	* ieee.c (struct ieee_block): Add field skip.
	(parse_ieee_bb): Don't call debug_record_function for __XRYCPP
	function, and set skip field.
	(parse_ieee_be): Don't call debug_end_function if skip is set.
1996-03-20 21:49:31 +00:00
Ian Lance Taylor
a912e811fc * configure.in: Add AC_FUNC_VFORK.
* configure, config.in: Rebuild.
	* dlltool.c, nlmconv.c: Include <vfork.h> if HAVE_VFORK_H is
	defined.
1996-03-18 23:52:43 +00:00
Ian Lance Taylor
6ae6090e22 * stabs.c (parse_stab_range_type): A complex type is defined as a
subrange of itself with the high bound zero.
	* ieee.c (ieee_complex_type): Don't crash on sizes of 12 or 16.
1996-03-18 23:06:29 +00:00
Ian Lance Taylor
efda824b08 * ieee.c (ieee_write_undefined_tag): Switch to global_types even
if it is not empty.
	(ieee_tag_type): For an enum, look through info->enums.
1996-03-12 19:33:31 +00:00
Ian Lance Taylor
7826d7e117 tweak last patch 1996-03-12 17:26:23 +00:00
Ian Lance Taylor
ea2488ad2e * configure: Rebuild with autoconf 2.8. 1996-03-12 17:22:07 +00:00
Ian Lance Taylor
e1b8810917 * debug.c (debug_type_samep): Don't loop endlessly in
DEBUG_KIND_ENUM case.  From Eric Baur <ecb@nexen.com>.
1996-03-12 17:10:22 +00:00
Ian Lance Taylor
89a8a65d62 * rddbg.c (read_section_stabs_debugging_info): Call save_stab for
each stab entry, call stab_context on an error, and call
	free_saved_stabs before rturning.
	(read_symbol_stabs_debugging_info): Likewise.
	(SAVE_STABS_COUNT): Define.
	(struct saved_stab): Define.
	(saved_stabs, saved_stabs_index): New static variables.
	(save_stab, stab_context, free_saved_stabs): New static functios.
1996-03-11 17:38:16 +00:00
Ian Lance Taylor
7fc01fc90f * objdump.c (stab_name): Remove.
(struct stab_print): Remove.
	(stab_print): Remove.
	(dump_stabs): Don't initialize stab_name.
	(print_section_stabs): Call bfd_get_stab_name rather than using
	the stab_name array.
1996-03-11 17:37:38 +00:00
Stan Shebs
ad77e2b8ab * mpw-make.sed: Update to handle shared library support. 1996-02-27 02:13:37 +00:00
Ian Lance Taylor
ce67d0c3ac Sat Feb 24 11:21:49 1996 Alan Modra <alan@spri.levels.unisa.edu.au>:
* Makefile.in ($(OBJDUMP_PROG)): Search $(BFDLIB) before
	$(OPCODES).
1996-02-24 19:22:35 +00:00
Ian Lance Taylor
2724d37edf * configure.in: Don't tamper with LDFLAGS. Call AC_PROG_CC before
configure.host.
	* configure: Rebuild.
1996-02-15 22:12:32 +00:00
Ian Lance Taylor
efa864530f * configure.in: Substitute RPATH_ENVVAR.
* configure: Rebuild.
	* Makefile.in (RPATH_ENVVAR): New variable.
	(check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
1996-02-15 18:57:34 +00:00
Ian Lance Taylor
2a7f07fefa * objcopy.c (smart_rename): Rather than doing chmod then chown, do
chmod without setuid, then chown, then chmod with setuid.
1996-02-15 17:46:49 +00:00
Ian Lance Taylor
f566f73fea Wed Feb 14 16:46:42 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
* arsup.c (map_over_list): Reindent.  Don't assume that the
	function does not delete the BFD.
	(ar_addlib_doer): Don't set prev->next if prev is NULL.
1996-02-14 21:48:20 +00:00
Ian Lance Taylor
90e5f484e5 * ieee.c (ieee_regno_to_genreg): Convert register numbers for m68k
and i960.
	(ieee_genreg_to_regno): Likewise.
1996-02-14 20:13:13 +00:00
Ian Lance Taylor
fe1dc0a656 * ieee.c: Extensive changes to write code to put types in the
global type block when possible, to output ranges for all memory
	occupied by the module, and to improve efficiency.
1996-02-12 19:41:47 +00:00
Ian Lance Taylor
d774870757 * debug.c (struct debug_handle): Remove class_mark field. Add
id_list and compare_list fields.
	(struct debug_class_id): Define.
	(struct debug_type_compare_list): Define.
	(debug_write): Initialize info->id_list
	(debug_write_name): Remove reference to info->class_mark.
	(debug_write_type): Get id for all structs and classes.  Simplify
	test for whether struct has already been written.
	(debug_write_class_type): Get id for all classes.  Simplify test
	for whether class has already been written.
	(debug_write_block): Don't write out blocks other than the top
	level block if they have no local variables.
	(debug_set_class_id): New static function.
	(debug_type_samep): New static function.
	(debug_class_type_samep): New static function.
	* prdbg.c (pr_start_struct_type): Always print id.
	(pr_start_class_type): Likewise.
	(pr_tag_type): Likewise.
1996-02-12 19:41:09 +00:00
Ian Lance Taylor
1dcea5a7df * ieee.c (ieee_start_compilation_unit): Clear modified and
modified_alloc fields of info.
1996-02-07 19:20:35 +00:00
Ian Lance Taylor
36fb98bec6 * configure.in: Check for --enable-shared. Substitute new
variables BFDLIB and OPCODES.
	* configure: Rebuild.
	* Makefile.in (BFDLIB): Set to @BFDLIB@.
	(OPCODES): Set to @OPCODES@.
1996-02-07 19:19:22 +00:00
Ian Lance Taylor
ae9120f917 * configure: Regenerate. 1996-02-02 21:50:53 +00:00
Steve Chamberlain
626a6542ec * configure: Regenerate with autoconf 2.7. 1996-02-01 21:39:44 +00:00
Steve Chamberlain
904fe36b83 * configure.in (i[3-6]86-*-win32): Becomes i[3-6]86-*-cygwin32.
(powerpc*-*-cygwin32): New.
	* configure: Regenerated.
1996-02-01 18:08:36 +00:00
Ian Lance Taylor
96c9632119 Wed Jan 31 13:22:03 1996 Richard Henderson <rth@tamu.edu>
* Makefile.in (distclean): Remove $(DEMANGLER_PROG).1.
1996-01-31 18:24:21 +00:00
Ian Lance Taylor
5da470b2bb Based on patches from H J Lu <hjl@zoom.com>:
* objcopy.c (remove_leading_char): New static variable.
	(OPTION_REMOVE_LEADING_CHAR): Define.
	(copy_usage): Mention --remove-leading-char.
	(filter_symbols): If remove_leading_char, and the first character
	of a global symbol matches the symbol leading char of the BFD,
	remove the first character.
	(copy_object): Filter the symbols if remove_leading_char is set.
	(copy_main): Handle --remove-leading-char.
	* binutils.texi, objcopy.1: Document --remove-leading-char.
1996-01-29 22:39:21 +00:00
Michael Meissner
eb684d4827 Fix up warning on SunOS 1996-01-27 20:44:54 +00:00
Ian Lance Taylor
392e2505bb tipo 1996-01-26 20:43:50 +00:00
Ian Lance Taylor
85d4b87066 * binutils.texi (nm): Improve documentation on symbol types.
(objdump): Reference the stabs manual from the discussion of the
	--stabs option.
1996-01-26 16:54:35 +00:00
Raymond Jou
e069197a14 * mpw-make.sed: Add a "stamps" target. 1996-01-25 19:38:14 +00:00
Ian Lance Taylor
980ef031a0 shorten copyright line 1996-01-25 18:55:00 +00:00
Ian Lance Taylor
1efb2ef007 * objdump.c (dump_headers, dump_section_header): Change objdump -h
output to be simpler and to include section file offsets.
1996-01-25 18:52:59 +00:00
Ian Lance Taylor
fab21c7850 * ieee.c (ieee_read_cxx_class): Don't multiply voffset by 4.
(struct ieee_write_type): Add name field.
	(struct ieee_type_class): Remove name field.  Change all uses to
	use new name field in type instead.
	(struct ieee_name_type): Likewise.
	(ieee_start_struct_type): Initialize name field of type.
	(ieee_start_class_type): Don't initialize classdef entry of tag.
	(ieee_class_method_var): Don't adjust voffset.
	(ieee_end_class_type): Likewise.
	(ieee_tag_type): Initialize new name field of type.
	(ieee_typdef): Set name after copying in type information.
1996-01-25 00:26:19 +00:00
Ian Lance Taylor
526fed067e * ieee.c (struct ieee_modified_type): Define.
(struct ieee_handle): Add modified and modified_alloc fields.
	(ieee_get_modified_info): New static function.
	(ieee_pointer_type): Cache type index.
	(ieee_const_type): Likewise.
	(ieee_volatile_type): Likewise.
1996-01-24 22:51:32 +00:00
Ian Lance Taylor
76e45938c3 * ieee.c (ieee_define_named_type): When creating a tag for an
anonymous struct, copy the name into memory.
	(ieee_tag_type): Likewise.
	* debug.c (debug_write_type): Only check and set id field for an
	unnamed object.
	(debug_write_class_type): Likewise.
1996-01-24 21:10:55 +00:00
Ian Lance Taylor
2466210755 * ieee.c: Various changes to write out types for functions and
references, and to not write out unnecessary function types.
1996-01-24 19:40:21 +00:00
Ian Lance Taylor
a837b8fc96 comment change 1996-01-24 19:38:16 +00:00
Ian Lance Taylor
74ae0c978d * ieee.c (struct ieee_var): Remove variable field. Add kind
field, and define some enum constants for it.
	(parse_ieee_ty): Set kind field of variable for 'x' and 'X' types.
	(parse_ieee_atn): Make an indirect slot for an external variable,
	although we otherwise don't record it.  Set kind field rather than
	variable field of pvar.
	(ieee_read_cxx_class): Try to get the type of a static member.
	(ieee_read_reference): Check kind field rather than variable
	field.
1996-01-24 17:08:25 +00:00
Ian Lance Taylor
c5baf5d9af fix ChangeLog entry 1996-01-24 01:27:44 +00:00
Ian Lance Taylor
501be095c9 * debug.h (enum debug_var_kind): Add DEBUG_VAR_ILLEGAL.
(enum debug_parm_kind): Add DEBUG_PARM_ILLEGAL.
	* debug.c (debug_get_parameter_types): Handle DEBUG_KIND_FUNCTION.
1996-01-24 01:26:49 +00:00
Ian Lance Taylor
3d2d462907 * ieee.c: Various changes to handle C++ reference types. 1996-01-24 01:26:21 +00:00
David Edelsohn
4e050e3b3e * objdump.c (disassemble_data): Pass fprintf to INIT_DISASSEMBLE_INFO. 1996-01-23 22:56:05 +00:00
Ian Lance Taylor
b96e1ce4f8 * ieee.c: Various changes to write out definitions of C++ classes. 1996-01-23 20:59:46 +00:00
Ian Lance Taylor
796369aa96 * debug.c (debug_append_filename): Remove.
* debug.h (debug_append_filename): Don't declare.
1996-01-23 20:59:18 +00:00
Ian Lance Taylor
c80b0dbaee * stabs.c (struct stab_handle): Remove last_type field. Add
so_string and so_value fields.
	(finish_stab): Call stab_emit_pending_vars before calling
	debug_end_function.  Don't warn about pending variables.
	(parse_stab): Accumulate N_SO strings until a non N_SO symbol is
	seen, rather than calling debug_append_filename.  Call
	stab_emit_pending_vars before calling debug_end_function.  Don't
	set info->last_type.
1996-01-23 20:58:57 +00:00
David Edelsohn
38aa863c90 * objdump.c (disassemble_data): Handle unknown endianness. 1996-01-23 17:58:32 +00:00
David Edelsohn
458bbd1f1e Add new option --show-raw-insn.
* objdump.c (show_raw_insn): New global.
	(usage): Update.
	(long_options): Update.
	(disassemble_data): Set disasm_info.flags if --show-raw-insn.

	* objdump.c (disassemble_data): Set new arch,mach,endian fields in
	disasm_info.
1996-01-23 00:50:24 +00:00
Ian Lance Taylor
4207b304c9 * ieee.c: Extensive changes to pass a single info argument around
in the reading routines, rather than several arguments.  Add code
	to read C++ debugging records.
1996-01-23 00:35:25 +00:00
Ian Lance Taylor
35aa91b97d * debug.h (debug_get_type_size): Declare.
(debug_get_field_name): Declare.
	(debug_get_field_bitpos): Declare.
	(debug_get_field_bitsize): Declare.
	(debug_get_field_visibility): Declare.
	(debug_get_field_physname): Declare.
	* debug.c (debug_get_real_type): Handle DEBUG_KIND_TAGGED.
	(debug_get_type_size): New function.
	(debug_get_field_name): New function.
	(debug_get_field_bitpos): New function.
	(debug_get_field_bitsize): New function.
	(debug_get_field_visibility): New function.
	(debug_get_field_physname): New function.
	(debug_write_type): Make sure we pass the real kind, not INDIRECT,
	to tag_type.  Pass the name recursively for INDIRECT.
1996-01-23 00:34:58 +00:00
Ian Lance Taylor
267e52989e * debug.h (struct debug_write_fns): Remove ellipsis_type. Add int
and boolean parameters to function_type.  Add boolean parameter to
	method_type.
	(debug_make_ellipsis_type): Don't declare.
	(debug_make_function_type): Add debug_type * and boolean
	parameters.  Change all callers.
	(debug_make_method_type): Add boolean parameter.  Change all
	callers.
	(debug_get_parameter_types): Add boolean * parameter.  Change all
	callers.
	(debug_get_target_type): Declare.
	* debug.c (struct debug_function_type): Add fields arg_types and
	varargs.
	(struct debug_method_type): Add field varargs.
	(debug_ellipsis_type, ELLIPSIS_P): Remove.
	(debug_make_ellipsis_type): Remove.
	(debug_make_function_type): Add arg_types and varargs parameters.
	(debug_make_method_type): Add varargs parameter.
	(debug_get_parameter_types): Add pvarargs parameter.
	(debug_get_target_type): New function.
	(debug_write_type): In case DEBUG_KIND_FUNCTION, push argument
	types and pass count to function_type.  In DEBUG_KIND_METHOD, use
	a signed int for the count, don't call ellipsis_type, and pass
	varargs to method_type.
	* stabs.c (struct stab_demangle_info): Add varargs field.
	(stab_demangle_argtypes): Add pvarargs parameter.  Change all
	callers.
	(stab_demangle_args): Likewise.
	(stab_demangle_type): In case 'F', pick up argument types.
	* prdbg.c (pr_ellipsis_type): Remove.
	(pr_function_type): Add argcount and varargs parameters.
	(pr_method_type): Add varargs parameter.
	* ieee.c (ieee_ellipsis_type): Remove.
	(ieee_function_type): Add argcount and varargs parameters.
	(ieee_method_type): Add varargs parameter.  Remove most of
	function body, and just call ieee_function_type.
1996-01-19 19:44:00 +00:00
Ian Lance Taylor
d3023c8f19 * stabs.c: Include "demangle.h". Added several new static
functions not listed below to demangle argument types; they are
	all called via stab_demangle_argtypes.
	(finish_stab): If the kind of an undefined tag is
	DEBUG_KIND_ILLEGAL, use DEBUG_KIND_STRUCT instead.  Warn if there
	are any pending variable.
	(parse_stab): Don't close the function when the block depth goes
	to zero.  Pass value to debug_end_function.
	(parse_stab_string): In case 'T', pass the name to
	parse_stab_type.
	(parse_stab_type): In case 'x', use stab_find_tagged_type.  In
	case '#', handle functions with variable numbers of arguments.
	(parse_stab_struct_type): Add tagname parameter.  Change all
	callers.
	(parse_stab_members): Add tagname and typenums parameters.  Change
	all callers.  If the type of a method is a stub, call
	parse_stab_argtypes to demangle the argument types and get the
	physical name of the function.
	(parse_stab_argtypes): New static function.
	(stab_record_variable): For a DEBUG_GLOBAL or DEBUG_STATIC
	variable, call debug_record_variable immediately.
	(stab_find_tagged_type): New static function.
1996-01-19 18:06:59 +00:00
Ian Lance Taylor
07aa1e1b7a * debug.h (enum debug_type_kind): Add DEBUG_KIND_ILLEGAL.
(struct debug_write_fns): Add field ellipsis_type.  Add id
	parameter to start_struct_type, start_class_type, and tag_type.
	(debug_make_ellipsis_type): Declare.
	(debug_find_named_type): Declare.
	(debug_get_type_kind): Declare.
	(debug_get_return_type): Declare.
	(debug_get_parameter_types): Declare.
	(debug_get_fields): Declare.
	(debug_get_field_type): Declare.
	* debug.c (struct debug_handle): Add fields class_id and base_id.
	(struct debug_class_type): Add field id.
	(struct debug_method_variant): Rename argtypes to physname.
	Change all uses.
	(debug_ellipsis_type): New static variable.
	(ELLIPSIS_P): New macro.
	(debug_make_ellipsis_type): New function.
	(debug_make_method_variant): Rename argtypes to physname.
	(debug_make_static_method_variant): Likewise.
	(debug_name_type): Always put types in the global namespace.
	(debug_find_named_type): New function.
	(debug_find_tagged_type): Treat DEBUG_KIND_ILLEGAL specially,
	rather than DEBUG_KIND_VOID.
	(debug_get_real_type): New static function.
	(debug_get_type_kind): New function.
	(debug_get_return_type): New function.
	(debug_get_parameter_types): New function.
	(debug_get_fields): New function.
	(debug_get_field_type): New function.
	(debug_write): Initialize base_id.
	(debug_write_type): Pass new id argument to tag_type.  Handle
	DEBUG_KIND_ILLEGAL.  Use id for	DEBUG_KIND_STRUCT and
	DEBUG_KIND_UNION.  Handle ellipsis for method arguments.
	(debug_write_class_type): Don't dereference kclass if it is NULL.
	Use id.
	* prdbg.c (pr_fns): Add pr_ellipsis_type.
	(pr_ellipsis_type): New static function.
	(pr_pointer_type): If this is a pointer to an array, parenthesize
	it correctly.
	(pr_start_struct_type): Add id parameter.
	(pr_start_class_type): Likewise.
	(pr_tag_type): Likewise.
	(pr_fix_visibility): Add the visibility to the top of the stack,
	not the second element on the stack.
	(pr_struct_field): Pop the stack before calling pr_fix_visibility.
	(pr_class_static_member): Likewise.
	(pr_class_start_method): Don't push a type, just set the method
	name in the type on the top of the stack.
	(pr_class_end_method): Don't pop the stack.
	(pr_class_method_variant): Rename argtypes parameter to physname.
	Append const and volatile rather than prepending them.  Add a
	space after the physname.
	(pr_class_static_method_variant): Likewise.
	* ieee.c (ieee_fns): Add ieee_ellipsis_type.
	(ieee_define_named_type): Use DEBUG_KIND_ILLEGAL rather than
	DEBUG_KIND_VOID.
	(write_ieee_debugging_info): Likewise.
	(ieee_typdef): Likewise.
	(ieee_ellipsis_type): New static function.
	(ieee_start_struct_type): Add id parameter.
	(ieee_start_class_type): Likewise.
	(ieee_tag_type): Likewise.
	(ieee_class_method_variant): Rename name to physname.
	(ieee_class_static_method_variant): Likewise.
1996-01-19 18:03:04 +00:00
Kim Knuttila
00d6548424 Changed section orders for alignment purposes 1996-01-18 22:48:53 +00:00
J.T. Conklin
264dac7c64 * srconv.c (wr_du): Set du.stackfrmt to 0.
(wr_un, wr_sc): Emit all sections, even those with 0 size.
1996-01-17 22:27:12 +00:00
J.T. Conklin
9ac5703369 * srconv.c (wr_hd): Space size within segment was being
stored in segment identifier field.
1996-01-17 00:17:13 +00:00
Stan Shebs
dda8716b94 * mpw-config.in (BUILD_NLMCONV, BUILD_SRCONV, SYSINFO_PROG,
BUILD_DLLTOOL): Put definitions for these into makefile when
	configuring, instead of always clearing in mpw-make.sed.
	* mpw-make.sed: Edit out any host_alias or target_alias settings,
	fix pathname to BFD internal include files, remove dependency
	calculation rules.
1996-01-16 20:12:17 +00:00
Ian Lance Taylor
854efa68e8 * binutils-all/objcopy.exp: Use the lma, not the vma, when testing
address adjustments.
1996-01-15 23:14:52 +00:00
Michael Meissner
71897943c4 update copyright 1996-01-11 22:50:52 +00:00
Michael Meissner
83f4323e5a Add support for SHT_ORDERED and SHF_EXCLUDE 1996-01-11 22:47:04 +00:00
Ian Lance Taylor
f2165194a4 * objcopy.c (filter_symbols): NULL terminate the output symbols.
(copy_object): Allocate space for a possible extra NULL pointer.
1996-01-11 17:34:12 +00:00
Ian Lance Taylor
499452f3cc * ieee.c (ieee_enum_type): Handle an undefined enum. 1996-01-11 17:33:47 +00:00
Ian Lance Taylor
36302909f2 * debug.c (debug_make_undefined_tagged_type): Make sure we are
given a kind of type we can handle.
	(debug_write_type): Handle undefined enums and structs.
	(debug_write_class_type): Handle undefined classes.
	* prdbg.c (pr_enum_type): Handle an undefined enum.
Also comment changes to debug.h.
1996-01-11 16:47:10 +00:00
Ian Lance Taylor
5207a907b6 * Makefile.in: (ALLOCA, MALLOC): Remove variables.
(ADDL_LIBS): Remove $(MALLOC) from definition.
	* alloca.c, gmalloc.c: Remove.
1996-01-10 20:43:39 +00:00
Ian Lance Taylor
0374a10562 * Makefile.in: Updated dependencies. 1996-01-10 20:33:36 +00:00
Ian Lance Taylor
3d01586485 * ieee.c: Add global function write_ieee_debugging_info and a
bunch of static functions and structs used to write out IEEE
	debugging information.
	* budbg.h (write_ieee_debugging_info): Declare.

	* ieee.c (struct ieee_type): Add pslot field.
	(enum builtin_types): Define.
	(ieee_builtin_type): For a pointer, return a pointer to the named
	type.  Use enum values rather than numbers.
	(ieee_alloc_type): New static function.
	(ieee_read_type_index): Use ieee_alloc_type.
	(parse_ieee_bb): Likewise.
	(parse_ieee_ty): Likewise.  Use ieee_builtin_type for array range,
	rather than making a new integer type.  Store the new type in the
	slot, if there is one.
	(parse_ieee_atn): Treat ATN10 as defining a register variable.
	(ieee_regno_to_genreg): Rename from ieee_regno_to_gen.  Change all
	callers.
	(ieee_genreg_to_regno): New static function.
1996-01-08 23:20:00 +00:00
Ian Lance Taylor
1ff0de4529 * stabs.c (parse_stab_type): Add new typename parameter. Change
all callers.
	(parse_stab_range_type): Add new typename parameter.  Change all
	callers.
1996-01-08 23:19:17 +00:00
Ian Lance Taylor
63840d265c * debug.h (struct debug_write_fns): Add tag parameter to
enum_type, start_struct_type, and start_class_type.
	* debug.c (debug_write_type): Pass any tag name to
	start_struct_type, debug_write_class_type, and enum_type.  If
	DEBUG_KIND_TAGGED, pass the name in the recursive call.
	(debug_write_class_type): Accept a new tag parameter, and pass it
	to start_class_type.
	* prdbg.c (pop_type): Don't remove '+' character.
	(pr_enum_type): Accept and use tag parameter.
	(pr_start_struct_type): Likewise.
	(pr_start_class_type): Likewise.
	(pr_class_baseclass): Adjust algorithm used to find where to put
	the baseclass name.
	(pr_tag): Don't bother to insert the tag name.
1996-01-08 23:18:51 +00:00
Ian Lance Taylor
f5818d79dd * objcopy.c: Include budbg.h.
(convert_debugging): New static variable.
	(OPTION_DEBUGGING): Define.
	(copy_options): Add "debugging".
	(copy_usage): Mention --debugging.
	(is_strip_section): Skip debugging sections if convert_debugging.
	(setup_section, copy_section): Likewise.
	(filter_symbols): Skip debugging symbols if convert_debugging.
	(copy_object): If convert_debugging, read and write debugging
	information.
	(write_debugging_info): New static function.
	(copy_main): Handle --debugging.
	* Makefile.in (DEBUG_OBJS): New variable.
	($(OBJCOPY_PROG)): Depend upon and link against $(DEBUG_OBJS).
	($(STRIP_PROG)): Likewise.
	(OBJDUMP_OBJS): Remove variable.
	($(OBJDUMP_PROG)): Use objdump.o $(DEBUG_OBJS) rather than
	$(OBJDUMP_OBJS).
	* binutils.texi, objcopy.1: Document --debugging.
1996-01-08 23:18:29 +00:00
Ian Lance Taylor
1a418120d7 update copyright 1996-01-08 23:14:40 +00:00
Ian Lance Taylor
f516798679 * ieee.c: New file with code to read IEEE debugging information.
* budbg.h (parse_ieee): Declare.
	* rddbg.c (read_debugging_info): Handle IEEE flavour files.
	(read_ieee_debugging_info): New static function.
	* Makefile.in: Rebuild dependencies.
	(CFILES): Add ieee.c.
	(OBJDUMP_OBJS): Add ieee.o.
1996-01-04 21:35:04 +00:00
Ian Lance Taylor
e1c145993e Implement generic debugging support. Implement a stabs reader and
a generic printer.
	* budbg.h, debug.c, debug.h, prdbg.c, rddbg.c, stabs.c: New files.
	* objdump.c: Include "debug.h" and "budbg.h".
	(dump_debugging): New global variable.
	(usage): Mention --debugging.
	(long_options): Add "debugging".
	(display_bfd): Handle --debugging.
	* Makefile.in (OBJDUMP_OBJS): New variable.
	($(OBJDUMP_PROG)): Use $(OBJDUMP_OBJS).
	* binutils.texi, objdump.1: Document --debugging.
1996-01-02 22:48:58 +00:00
Ian Lance Taylor
cd46af111e * Makefile.in: Add targets to automatically rebuild dependencies.
Remove targets which just listed dependencies of .o files.
	(DEP): New variable.
	(HFILES, GENERATED_HFILES): New variables.
	(CFILES, GENERATED_CFILES): New variables.
	(underscore.c): Don't do anything, just depend upon stamp-under.
	(stamp-under): New target; do what underscore.c used to do.
	(nlmconv.o): Depend upon sym.h and ecoff.h.
	(.dep, .dep1, dep.sed, dep, dep-in): New targets.
	(stage1, stage2, stage3, against, comparison): Remove.
	(de-stage1, de-stage2, de-stage3): Remove.
	(clean, distclean): Remove stamp-under and dep.sed.
	* dep-in.sed: New file.

	* Makefile.in (OBJDUMP_OBJS): New variable.
	($(OBJDUMP_PROG)): Use $(OBJDUMP_OBJS).
1996-01-02 22:48:13 +00:00
Jeff Law
dcd6706b1a * nm.c ( long_options): Add "--defined-only" option.
(usage): Update for new "--defined-only" option.
        (filter_symbols): Handle "--defined-only".
Part of mentor vm work.
1995-12-30 17:02:06 +00:00
Ian Lance Taylor
428e7fb4c2 * arparse.y: Include "bucomm.h", not <sysdep.h>.
* nlmheader.y: Don't include "sysdep.h".
1995-12-29 21:02:02 +00:00
Ian Lance Taylor
5d0bc3b9df * nm.c (print_symdef_entry): Check return value of
bfd_get_elt_at_index.
1995-12-26 23:20:35 +00:00
Michael Meissner
7920c1d195 Build dlltool if config is powerpc*-*-win* 1995-12-23 16:05:03 +00:00
Steve Chamberlain
445604d7eb * dlltool.c (fill_ordinals): Start from 1 if no other instructions
given.
1995-12-15 15:52:56 +00:00
Ian Lance Taylor
64c4b2ad86 * Makefile.in (clean): Remove $(DEMANGLER_PROG).1. From Ronald
F. Guilmette <rfg@monkeys.com>.
1995-12-12 17:08:17 +00:00