+Fri Mar 12 18:33:36 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
+
+ * configure.in: recognize sparc-sun-solaris2* instead of -solaris2
+
+
+ * expr.c, write.c: Ultrix native 4.2 cc requires assert condition
+ to be on a single line.
+
+
+ * Makefile.in (config.h): Create file, writing out definitions of
+ target cpu, alias, and canonical name.
+ (ALL_CFLAGS): No longer define TARGET_CPU.
+
+ * Makefile.in (check): Print a message, instead of quitting
+ silently.
+
+ * as.c (main): Don't catch any signals, for now.
+
+ * version.c: Deleted.
+ * Makefile.in: Generate it, putting in only the version number
+ itself.
+ (VERSION): New variable.
+ * as.c: Include config.h.
+ (main): Reformatted version string. Include target alias. Don't
+ print if not requested (i.e., unknown -v argument).
+
+ * as.c (stralloc): Deleted.
+ (main): Call strdup instead.
+
+ * configure.in: Handle all 68300 series chips.
+ * config/tc-m68k.c: Include config.h.
+ (md_assemble): Assume TARGET_CPU is defined. Accept some 68300
+ series cpus as defaults.
+ (md_parse_option): Accept some m68300 series CPUs as defaults.
+
+
+ * as.c (EXIT_SUCCESS, EXIT_FAILURE): Define to normal values if
+ not already defined.
+ (main, got_sig): Use them.
+ * config/ho-vms.h (EXIT_SUCCESS, EXIT_FAILURE): Reverse default
+ values.
+
+
+ * config/obj-ecoff.c, config/obj-ecoff.h: Preliminary ECOFF
+ support.
+
+ * config/tc-mips.h (TARGET_FORMAT): Define based on OBJ_AOUT vs.
+ OBJ_ECOFF as well as TARGET_BYTES_*_ENDIAN.
+ (struct loc, struct proc, struct file): Moved to tc-mips.c within
+ #ifndef OBJ_ECOFF block, since ECOFF uses different versions.
+ * config/tc-mips.c: Rearranged for ECOFF support. Added
+ prototypes for all static functions. Moved existing minimal
+ debugging format support info #ifndef OBJ_ECOFF blocks.
+ (macro_build_lui): Eliminated sign_extend argument, because ECOFF
+ does not support a non sign extended high 16 bits reloc. Adjusted
+ all callers accordingly.
+ (tc_get_register): Renamed from get_register, and made non-static.
+
+ * config/mips-big.mt, config/mips-lit.mt: New files. Define
+ TARGET_BYTES_BIG_ENDIAN and TARGET_BYTES_LITTLE_ENDIAN,
+ respectively.
+ * configure.in (mips-*-bsd*): Use gas_target mips-lit.
+ (mips-*-ultrix*, mips-*-irix*, mips-*-ecoff): New targets, using
+ obj_format ecoff and gas_target mips-lit or mips-big.
+
+
+ * version.c: Bump to version 2.0.1.
+
+
+ * write.c (chain_frchains_together): Check that seg_info (section)
+ is not NULL.
+ (write_object_file): Call obj_frob_file after setting the symbols,
+ not before.
+
+
+ * config/tc-i386.h (TC_COUNT_RELOC): Look for fx_addsy only.
+
+
+ * read.h: Define stringer here.
+ read.c, config/obj-ieee.c, config/obj-tcm88k.c: Not any of these
+ places.
+
+
+ * read.c (s_space): Multiply repeat count by mult, not fill.
+
+
+ * read.c: Include ctype.h.
+
+
+ Patches from Eric Youngdale:
+ * make-gas.com: Find obstack.obj if it's not in the current
+ directory.
+ * read.c (s_ignore): Don't declare is_end_of_line. It's
+ redundant, and triggers a VMS gcc compiler bug.
+
+ * write.c (write_object_file): Macro SUB_SEGMENT_ALIGN now takes
+ current segment as an argument. (Ignored in all cases but VMS.)
+ All callers and definitions changed.
+
+
+ * listing.c: Cleaned up a bit, added prototypes, made NO_LISTING
+ case compile again.
+
+
+ * config/tc-m68k.c (isbyte): Accept all values from -255 to +255,
+ so "~0x80" won't be rejected.
+
+ * config/obj-elf.c: No longer include elf/reloc.h.
+ (obj_elf_section): Set SEC_READONLY and SEC_CODE for text section.
+ (obj_elf_stab, obj_elf_desc): Deleted do-nothing and commented-out
+ routines.
+ (obj_elf_xstab): New routine.
+ (obj_elf_set_size): Call as_warn, not fprintf. Pass desired
+ argument to s_ignore. Put "#if 0" around unused code.
+ (obj_pseudo_table): Use s_ignore instead of do-nothing routines.
+ Call elf_xstabs for .stabs and .xstabs operators.
+
+ * config/tc-sparc.h (TARGET_FORMAT) [OBJ_ELF]: Now "elf32-sparc".
+
+ * write.c (relax_and_size_seg): Set SEC_RELOC only if fixups are
+ present.
+
+ * configure.in: mips-bsd configuration was missing format spec.
+ Should use aout.
+
+ * Makefile.in (Makefile): Depends on configure.in.
+
+ * config/tc-mips.c (append_insn): Don't check for alignment of
+ frag in memory; alignment of instructions in section is a separate
+ matter.
+
+ * config/tc-mips.c (macro_build_lui): Fix some assumptions of ANSI
+ C availability.
+
+ * listing.h: Always provide function declarations, not macros, so
+ pcc won't lose.
+
+
+ * CONTRIBUTORS: Update Gilmore entry.
+
+
+ * frags.c (frag_init): New function.
+ (zero_address_frag, bss_address_frag): Now initialized at run
+ time.
+ * as.c (main): Call frag_init.
+
+
+ * app.c (do_scrub_next_char): In LEX_IS_LINE_COMMENT_START case:
+ Don't unget ch2 if we didn't get it.
+
+
+ * doc/Makefile.in (TEXIDIR): Updated for new layout.
+
+ * config/tc-sparc.c (s_common): Add support for ELF version.
+ (tc_gen_reloc) [BFD_ASSEMBLER]: New function.
+ * config/tc-sparc.h (TARGET_ARCH, TARGET_FORMAT) [BFD_ASSEMBLER]:
+ New macros.
+ (md_convert_frag): New macro.
+
+ * config/tc-m68k.c (m68k_ip): For PC-relative addressing of a
+ symbol, fix the offset so "+2" isn't required.
+
+ * config/tc-i960.c (line_comment_chars, line_separator_chars):
+ Define as common/bss.
+ (op_hash, reg_hash, areg_hash, iclasses_seen, br_cnt): Default C
+ initializers are sufficient.
+
+ * config/obj-aout.h [BFD_ASSEMBLER]: Include libaout.h from bfd.
+ (TARGET_FORMAT) [BFD_ASSEMBLER]: Default to "a.out".
+ (S_SET_*, S_GET_*, obj_frob_symbol) [BFD_ASSEMBLER]: New macros.
+ (S_SET_TYPE) [!BFD_ASSEMBLER]: New macro.
+ * config/obj-aout.c: Use PARAMS macro for declarations. Remove
+ "IGNORE_DEBUG" conditional, since both branches are identical.
+ Use S_SET_TYPE, S_GET_TYPE, and S_GET_DESC instead of directly
+ referencing symbol structure members.
+ (obj_aout_frob_symbol) [BFD_ASSEMBLER]: New function.
+
+ * as.h (struct frag): Reordered a couple of fields for better
+ packing.
+
+ * write.c (record_alignment) [BFD_ASSEMBLER]: Record it in the
+ section info.
+ (write_contents) [BFD_ASSEMBLER]: New function.
+ (write_object_file) [BFD_ASSEMBLER]: Always handle -R here. Call
+ fix_new with BFD_RELOC_NONE instead of 0 or NO_RELOC. Call
+ obj_frob_file, obj_frob_symbol, tc_frob_symbol if defined.
+ (fixup_segment): Make sure common-section symbols get treated the
+ same as undefined symbols.
+ (fix_new) [BFD_ASSEMBLER]: Argument r_type is of type
+ bfd_reloc_code_real_type. Use seg_fix_{root,tail}P derived from
+ section info.
+ * write.h (fix_new): Update prototype.
+
+ * tc.h (md_operand, md_convert_frag, tc_headers_hook,
+ md_section_align, md_undefined_symbol): Don't provide prototypes
+ if these are defined as macros.
+ (md_convert_frag) [BFD_ASSEMBLER]: BFD version needs bfd and
+ section passed.
+
+ * symbols.c (symbol_new): Argument NAME is now pointer to const.
+ Simplified STRIP_UNDERSCORE code. Remove assumptions about null
+ pointers in freshly allocated storage. [BFD_ASSEMBLER]: Get new
+ BFD symbol.
+ (colon): Display other/desc fields of redefined symbol only if
+ S_GET_OTHER and S_GET_DESC are defined.
+ (symbol_make): Argument NAME is now pointer to const.
+ (symbol_find, symbol_find_base): Likewise.
+ (S_IS_*, S_GET_*, S_SET_*) [BFD_ASSEMBLER]: New functions.
+ * symbols.h: Fix prototypes for new const arguments. Add
+ prototypes for BFD_ASSEMBLER S_* functions.
+
+ * subsegs.c (subseg_change) [BFD_ASSEMBLER]: BFD version of code
+ for changing to an existing section.
+ (subseg_new_rest) [BFD_ASSEMBLER]: Split off from subseg_new,
+ called by subseg_new and subseg_set.
+ (subseg_new) [BFD_ASSEMBLER]: Rewritten to change to new section,
+ given section name and subseg number.
+ (subseg_set) [BFD_ASSEMBLER]: New function; change to a possibly
+ new section/subsection.
+
+ * read.c: Don't include ctype.h.
+ (cons) [BFD_ASSEMBLER]: For undefined symbols, use BFD_RELOC_32
+ for now; should be machine-dependent.
+
+ * configure.in: Accept *-*-elf and *-*-solaris* as ELF format
+ targets, forcing BFD use.
+
+
+ * config/tc-sparc.c: Use PARAMS macro for static function
+ declarations. Use BFD_RELOC_ macros everywhere, with
+ compatibility macros declared for non-BFD mode.
+ (struct sparc_it) [BFD_ASSEMBLER]: Use bfd_reloc_code_real_type
+ instead of enum reloc_type.
+ (emit_sparc_reloc): Commented-out function deleted.
+ (md_convert_frag): Deleted.
+ (tc_aout_pre_write_hook): Don't define for BFD_ASSEMBLER.
+ (md_apply_fix): Changed calling sequence (conditionally) for BFD
+ version.
+ * config/tc-sparc.h (md_convert_frag): New macro.
+
+ * config/obj-aout.c (obj_aout_stab): Refer to undefined_section,
+ not SEG_UNKNOWN. Use S_SET_TYPE, S_GET_TYPE, S_GET_DESC instead
+ of referencing fields directly.
+
+ * write.c (cvt_frag_to_fill): New function; extracted from
+ write_object_file.
+ (write_object_file) [! BFD_ASSEMBLER]: Call it.
+ (relax_and_size_seg) [BFD_ASSEMBLER]: New function; relax section
+ and set its size and flags.
+
+ * struc-symbol.h (struct symbol) [BFD_ASSEMBLER]: Replace some
+ fields with BFD equivalents. Turn on back-pointers, and add
+ target-specific fields at end.
+
+
+ * config/obj-coffbfd.c (fill_section): Don't set vaddr here.
+ (write_object_file): Set it here instead, so that fixup_segment
+ can see the correct value.
+
+
+ * write.c (write_object_file): Check for errors and warnings and
+ bail out before processing contents.
+ (chain_frchains_together_1): New function, does most of the work
+ of remove_subsegs.
+ (chain_frchains_together) [BFD_ASSEMBLER]: New function.
+ (remove_subsegs) [! BFD]: Call it.
+ (write_object_file) [BFD_ASSEMBLER]: Converted to use BFD
+ structures and routines.
+
+ * config/obj-elf.*: New files.
+
+ * config/mips.mt, config/rs6000.mt: Deleted.
+
+ * config/h8300.mt: Don't specify compiler here.
+
+ * config/z8k.mt: The z8k code depends on the z8k opcode table,
+ not the h8300 one.
+ * config/tc-z8k.h: Comment fix.
+
+ * write.c: Reordered some functions for better inlining.
+ (fixup_segment): Linkrelax code is no longer conditional on
+ TC_I960.
+
+
+ * config/{h8500.mt, tc-h8500.c, tc-h8500.h, obj-coffbfd.c,
+ obj-coffbfd.h}: support for the H8/500
+
+
+ * config/obj-vms.h (SUB_SEGMENT_ALIGN): Define VMS version here.
+ * write.c (write_object_file): Not here.
+ (fix_new): Initialize fx_addnumber.
+
+ * listing.c: Don't include target-cpu.h explicitly, since as.h
+ includes it.
+
+
+ * write.h [BFD_ASSEMBLER]: Don't declare next_object_file_charP,
+ *_fix_root, *_fix_tail, seg_fix_rootP, seg_fix_tailP.
+ (struct fix): Reordered fields for compactness and efficiency.
+ Converted some logical fields to 1-bit fields.
+
+ * config/obj-aout.h: Use PARAMS.
+ [BFD_ASSEMBLER]: Don't define/declare AOUT_MACHTYPE, seg_N_TYPE,
+ N_TYPE_seg, DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE.
+
+ * read.c: Don't include listing.h; as.h includes it. Removed
+ DONTDEF code.
+ [BFD_ASSEMBLER]: Include subsegs.h.
+ (old_buffer, new_broken_words): Default initialization is
+ sufficient.
+
+ * output-file.c [BFD_ASSEMBLER]: Include bfd.h, default TARGET_MACH
+ to 0, define stdoutput.
+ (output_file_create) [BFD_ASSEMBLER]: Call bfd_perror on failure.
+ Call bfd_set_arch_mach.
+ (output_file_close) [BFD_ASSEMBLER]: Call bfd_close, not
+ bfd_close_all_done. Call bfd_perror on failure.
+ (output_file_append) [BFD_ASSEMBLER]: Don't define.
+
+ * config/m68kcoff.mt (LOCAL_LOADLIBES): Delete definition.
+
+ * subsegs.h (segment_info_type): Always define. Omit field scnhdr
+ if not MANY_SEGMENTS. Define new field bfd_section if
+ BFD_ASSEMBLER.
+ (seg_info): New macro.
+
+ * expr.c, input-scrub.c: Use PARAMS macro. Deleted unused
+ variables, and some irrelevant comments.
+
+ * Makefile.in (ALL_CFLAGS): Include $(BFDDEF).
+ (LIBS): Include $(BFDLIB). Don't bother with $(CLIB).
+ * configure.in: Permit --with-bfd-assembler now, with a warning.
+ Variable need_bfd is now a boolean, as is new variable bfd_gas.
+ Set BFDDEF and BFDLIB in Makefile when appropriate.
+
+ * as.c: Removed "#ifdef DONTDEF" and "#ifdef comment" code.
+ (main): Refer to flag_always_generate_output instead of
+ flagseen['Z'].
+
+ * as.c (main) [BFD_ASSEMBLER]: Open output bfd.
+ (*_section) [BFD_ASSEMBLER]: Define them.
+ (perform_an_assembly_pass) [BFD_ASSEMBLER]: Initialize them, and
+ set section flags when appropriate.
+ * as.h (SEG_NORMAL) [BFD_ASSEMBLER]: Require that the specified
+ section is not absolute, undefined, or an assembler internal one.
+ (absolute_section, undefined_section): Always define.
+ * expr.c, read.c, symbols.c: Refer to *_section, not SEG_*; break
+ switch statements into if-else trees.
+ * symbols.c [MANY_SEGMENTS]: Deleted redundant definitions of
+ SEG_BSS and SEG_DATA.
+
+ * as.h (frag_now_fix): New macro.
+ * symbols.c (colon): Use it.
+
+
+ * config/tc-mips.c: Added mips support for mips-dec-bsd.
+ * config/tc-mips.h: Added mips support for mips-dec-bsd.
+ * config/ho-mipsbsd.h: Added mips support for mips-dec-bsd.
+ * config/mips-opcode.h: Added mips support for mips-dec-bsd.
+ * configure.in: Added mips support for mips-dec-bsd.
+ * atof-generic.c: Define TRUE and FALSE if not defined.
+
+
+ * version.c: Bumped version number to 1.93.05.
+
+
+ * config/obj-coff.c (obj_emit_relocations): Don't use #elif.
+ (obj_emit_lineno): Don't need return at end of void function.
+ (obj_symbol_new_hook): Ditto.
+
+ * config/tc-m68k.c: Removed some unused code.
+ (tc_aout_fix_to_chars): Array nbytes_r_length is now const.
+
+ * config/tc-m68k.h (TC_COUNT_RELOC): Don't emit reloc if only
+ offset field is set.
+
+
+ * config/tc-sparc.c (architecture_requested, warn_on_bump,
+ md_relax_table): Use default zero initialization.
+ (s_reserve): Since SEG_E2 is equivalent to SEG_BSS, just use the
+ latter, instead of selecting with preprocessor conditionals.
+
+Thu Jan 7 08:58:21 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
+
+ * configure.in: recognise all sparclite variants
+
+
+ * read.c (s_data) [!BFD_ASSEMBLER]: Fix typo in 4 Jan change --
+ accidentally changed to use subseg_change where it should have
+ been subseg_new.
+
+
+ * expr.c (operand): If character other than comma or newline is a
+ logical end-of-line character, use the newline case.
+ From Eric Youngdale:
+ (operand): Set X_add_number field for floating-point numbers.
+ (operand): Treat zero byte as end-of-operand.
+
+ * configure.in (per-target): Look for with_bfd_assembler option.
+ For now, only accept "no", until the merge is done.
+
+ * as.c, flonum-konst.c, hex-value.c, input-file.c, version.c,
+ config/obj-aout.h, config/obj-vms.c: VMS -> HO_VMS.
+ * read.c: Finish conversion to S_* macros in the VMS only
+ parts of the program. Add "const" modifier to hex_value.
+ * as.c, read.c, symbols.c, write.c: Change "ifdef VMS" to
+ "ifdef OBJ_VMS".
+ * expr.c: Add "const" modifier to hex_value.
+ * symbols.c: Finish conversion to S_* macros in the VMS only
+ parts of the program. Add "const" modifier to
+ md_[long,short]_jump_size. Remove declaration of const_flag
+ (which will be declared in obj-vms.h).
+ * write.c: Add "const" modifier to md_[long,short]_jump_size.
+ Fix arguments to VMS_write_object_file.
+ * config-gas.com: New file. Script for VMS systems to set up the
+ configuration to build gas for VMS, and create config.status.
+ * make-gas.com: Redone to work with new scheme.
+ * obj-vms.c: Patch to fix bug where we were not correctly parsing the
+ stabs directives.
+ * obj-vms.c: Define macros COPY_LONG and COPY_SHORT which
+ will swap bytes if needed on a big endian system. Use throughout
+ as needed.
+ * obj-vms.c (obj_aout_stab): Add code to generate listing file.
+ * obj-vms.c (VMS_typedef_parse): Add alias to correctly handle certain
+ types of malformed stabs. Change parsing algorithm so that we are
+ more certain of having all of the information that we need on hand.
+ * obj-vms.c (final_forward_reference): New function, used to help
+ resolve the data types of as many struct elements as possible
+ when some part of the struct is not fully defined by the compiler.
+ * obj-vms.c (VMS_LSYM_Parse): Correctly handle case of continuation
+ stabs directives.
+ * obj-vms.c (VMS_write_object_file): Define all vtable psects
+ as symbols as well in the object file. Look for external functions
+ that start with "__vt.", and turn them into variables, since the
+ g++ compiler is incapable of doing this.
+ * tc-vax.c: Add '1' option for backward compatibility with older GCC
+ versions.
+ * bignum-copy.c (bignum_copy): Fix bug where we pad with zeroes.
+ * input-scrub.c (as_where): Fix bug where as would crash if we did not
+ have the name of the source file yet.
+ * config/ho-vms.h: define HO_VMS, not HO_VAX.
+
+
+ * read.c (s_data): Always use "data_section", since it'll map to
+ SEG_DATA or SEG_E1 if needed.
+ (s_lcomm): Likewise with bss_section.
+ (s_fill): Use memset, not bzero.
+
+
+ * read.c: Deleted some code under "#ifdef DONTDEF" that was for
+ handling GDB symbol table data.
+
+ * config/obj-aout.h (segment_name): Delete definition.
+ (seg_name): Delete declaration.
+ * config/obj-bout.h (segment_name, seg_name): Ditto.
+ * config/obj-vms.h (segment_name, seg_name): Ditto.
+ * config/obj-coff.h (segment_name): Ditto.
+ * config/obj-coffbfd.h (segment_name): Ditto.
+
+ * Changes for BFD_ASSEMBLER:
+ * obj.h (obj_crawl_symbol_chain): Declare only if not
+ BFD_ASSEMBLER.
+ (obj_header_append, obj_pre_write_hook): Ditto.
+ * as.h (stdoutput): New var, defined only if BFD_ASSEMBLER.
+ (segT) [BFD_ASSEMBLER]: New typedef for "asection *".
+ (segment_name) If BFD_ASSEMBLER, look up BFD section name;
+ otherwise, use seg_name array.
+ (seg_name): Declare only if not BFD_ASSEMBLER.
+ (section_alignment): Declare only if not BFD_ASSEMBLER.
+ (big_section, reg_section, pass1_section, diff_section,
+ absent_section, text_section, data_section, bss_section): If
+ BFD_ASSEMBLER, declare as variables; otherwise, declare as macros,
+ mapping to segT enum values.
+ (tc_aout_fix_to_chars, next_object_file_charP): Force parse errors
+ if these are used or defined, if BFD_ASSEMBLER.
+ (subseg_set, subseg_new) [BFD_ASSEMBLER]: Functionality of old
+ subseg_new split into two functions.
+ (SEG_NORMAL): For BFD_ASSEMBLER, always return true, for now.
+
+ * as.h (volatile): Don't define if already defined.
+ (had_errors, had_warnings): Provide prototypes for ANSI C even if
+ NO_STDARG.
+ (as_bad, as_fatal, as_tsktsk, as_warn): For GNU C version 2,
+ declare with format attribute for -Wformat checking.
+
+
+ * app.c, config/tc-*.c: Don't include read.h, since it is already
+ included by as.h.
+
+ * These are based on patches from Minh Tran-le
+ * configure.in (i[34]86-ibm-aix*): Accept i486 for host. Use
+ obj_format coffbfd and gas_target i386coff for target.
+ (i[34]86-*-isc*): New host (uses sysv).
+ * config/i386aix.mt: Removed (no longer used).
+ * config/mh-i386aix (RANLIB): Use true rather than /bin/true.
+ (MINUS_G): Removed.
+ (LDFLAGS): Added, defined as -shlib.
+ * config/te-i386aix.h (REVERSE_SORT_RELOCS): Undefine.
+ * config/te-sco386.h (LOCAL_LABEL): Don't define.
+ (DOT_LABEL_PREFIX): Define.
+ * expr.c (operand): If DOT_LABEL_PREFIX, use .L0\001 as a label
+ name rather than L0\001.
+ * read.c (s_lcomm): Make a frag in SEG_BSS rather than using
+ local_bss_counter.
+ * symbols.c, symbols.h (local_bss_counter): Removed.
+ * write.c (write_object_file): bss no longer uses
+ local_bss_counter. Pass correct data and bss size to
+ VMS_write_object_file.
+ * config/obj-vms.c (VMS_write_object_file): Accept bss size as
+ argument, rather than using local_bss_counter.
+ * config/tc-m88k.c (s_bss): Don't use local_bss_counter.
+ * config/tc-sparc.c (s_reserve): Don't use local_bss_counter.
+ * config/obj-coffbfd.c (had_lineno, had_reloc): Removed.
+ (size_section): Restored sanity check.
+ (do_relocs_for): Base section address on s_paddr rather than
+ computing it. Adjust a29k R_IHIHALF special case to account for
+ section paddr (used to require paddr to be zero). If there are no
+ reclos, set s_relptr to 0. Set relocation size in object_headers.
+ (fill_section): Always set s_vaddr here, removing
+ ZERO_BASED_SEGMENTS case. Force s_scnptr for bss to 0. Don't set
+ NOLOAD for i386 .bss, because it confuses the SVR3 native linker.
+ Set STYP_INFO for .comment.
+ (coff_header_append): Use object headers and H_{SET,GET}_* macros.
+ Make aouthdr writing depend on OBJ_COFF_OMIT_OPTIONAL_HEADER.
+ (crawl_symbols): Handle 8 character section name correctly. Use
+ H_{SET,GET}_* macros.
+ (do_linenos_for): Set lineno size in object_headers.
+ (write_object_file): Use H_{SET,GET}_* macros. Don't bother to
+ set s_vaddr here. If string_byte_count remains 4, set it back to
+ 0, and only write strings out if there are some. Call
+ fill_section before do_relocs_for and do_linenos_for.
+ (obj_coff_section): Handle optional quoted second argument giving
+ section characteristics.
+ (obj_coff_bss): Added to handle .bss.
+ (obj_coff_ident): Added to handle .ident (puts string in .comment
+ section).
+ (obj_coff_lcomm): Put common symbols in .bss, not .data.
+ (fixup_mdeps): Change to segment. Call frag_wane after
+ md_convert_frag.
+ (fixup_segment): Explicitly check S_IS_COMMON before making 386
+ adjustment (already happened only for common symbols, but this is
+ clearer).
+ * config/obj-coffbfd.h (OBJ_COFF_OMIT_OPTIONAL_HEADER): Define.
+ * config/tc-i386.c (s_bss): Don't use if I386COFF.
+ (md_pseudo_table): Ignore .optim and .noopt.
+ (tc_coff_sizemachdep): New function.
+ * config/tc-i386.h (REVERSE_SORT_RELOCS): Undef, for SVR3
+ compatibility.
+ (LOCAL_LABEL): Removed definition.
+ (DOT_LABEL_PREFIX): Defined.
+
+
+ * app.c (app_push): Use memcpy, not bcopy.
+ (do_scrub_next_char): For \", return " not '.
+ (symbol_chars): Now const.
+
+ * expr.c (operand): If not LOCAL_LABELS_FB, don't look for "0f"
+ and "0b". If LOCAL_LABELS_DOLLAR, check for "0$".
+
+ * config/obj-coff.h: Don't use #elif.
+
+ * config/ho-sunos.h: Don't include sys/stdtypes.h; 4.0.3 doesn't
+
+
+ * write.c, obj-ieee.c: don't define SUB_SEGMENT_ALIGN if it is
+ already defined.
+
+
+ * app.c (do_scrub_begin): allow single quote strings if so
+ configured.
+
+ * config/*z8k*: checkpoint
+
+
+ * read.c (read_a_source_file): avoid calling xmalloc (0).
+
+
+ * listing.c: Call xmalloc, not malloc; don't declare malloc.
+
+ * Changes to support SCO 3.2v4:
+ * read.c (s_align_bytes, s_align_ptwo): If not SEG_DATA or
+ SEG_BSS, fill with NOP_OPCODE.
+ * config/i386coff.mt: Add opcode/i386.h to TARG_CPU_DEPENDENTS.
+ * config/obj-coffbfd.c (do_relocs_for): Increment addr even if not
+ using ZERO_BASED_SEGMENTS.
+ (fill_section): If ZERO_BASED_SEGMENTS, set segment addresses, but
+ never set segment address for SEG_E2 (.bss) and don't write out
+ SEG_E2 contents. Set .init and .fini sections to STYP_TEXT.
+ (obj_coff_endef): Don't merge labels or symbols awaiting forward
+ definitions, and don't merge tags with non-tags. Check for .bf
+ rather than just checking whether the second character is b and
+ the third character is f.
+ (obj_coff_val): gcc can generate values which we don't handle
+ correctly; discard information for now, since it only affects the
+ debugging information.
+ (tag_find_or_name): Don't insert tags in the symbol table.
+ (yank_symbols): Don't merge labels.
+ (write_object_file): Don't define SUB_SEGMENT_ALIGN if it is
+ already defined. Fill subsegments with NOP_OPCODE, not 0. Don't
+ set segment address if ZERO_BASED_SEGMENTS.
+ (obj_coff_section): Accept and ignore a trailing quoted string, as
+ used in AT&T i386 syntax.
+ (fixup_segment): Take segment as argument. On the i386, adjust PC
+ relative addends by the segment vaddr.
+ * tc-i386.h: Define SUB_SEGMENT_ALIGN.
+ * tc-a29k.h: Define ZERO_BASED_SEGMENTS.
+ * tc-i386.c: (i386_operand): If I386COFF, accept any segment type.
+
+
+ * config/obj-coffbfd.c: Include libcoff.h.
+
+ * version.c: Now version 1.93.
+
+
+ * config/tc-i386.c (md_pseudo_table): For 386bsd and linux, do
+ power-of-two alignment for .align.
+
+ * as.h: If BROKEN_ASSERT, just redefine `assert' to be trivial,
+ and leave everything else alone.
+
+
+ * Makefile.in (as.new): Don't bother saving as.old.
+
+ * write.c: Conditionalize on OBJ_VMS, not VMS.
+ (magic_number_for_object_file): Don't define if OBJ_VMS.
+
+ * config/obj-vms.c: Changes for traditional C.
+
+
+ * config/ho-generic.h (malloc, realloc): Declare.
+
+ * Lots of comment/whitespace changes.
+
+ * write.h (struct fix): Some fields reordered, narrowed.
+
+ * read.c (MASK_CHAR): Define using C types, not magic number.
+
+ * as.c, input-file.c: Deleted some unused code.
+
+ * app.c, as.h: Doc fix.
+
+ * flonum-konst.c, flonum-mult.c: Include ansidecl.h.
+
+ * as.h (xmalloc): Argument is long.
+
+ * xmalloc.c (error): Remove declaration; as.h takes care of it.
+
+ * doc/as.texinfo: Regrouped documentation of some command-line
+ options. Updated options documentation for m68k. Some minor
+ wording/punctuation changes.
+
+
+ * configure.in: Accept target OS "vms".
+
+ * symbols.c: Merged ANSI and non-ANSI function decls, using
+ PARAMS macro.
+
+ * xmalloc.c: Just include as.h, don't bother trying to figure out
+ other header files.
+
+ * strstr.c, strerror.c: Deleted.
+ * Makefile.in: Deleted references.
+
+ * config/tc-ns32k.c: Don't include header file for string
+ declarations; leave that to ho-*.h.
+
+Fri Nov 27 04:11:36 1992 Ken Raeburn (raeburn at cambridge-laptop.cygnus.com)
+
+ * config/coff_gnu.h [TC_I860]: Guesses for reloc type values,
+ imported from FSF sources.
+
+ * messages.c (strerror): Declare unconditionally.
+
+ * as.h: Delete alloca and register definitions.
+
+ * config/atof-ieee.c (mask): Now const.
+
+ * obstack.c, obstack.h: Deleted.
+
+ * as.h (flag_readonly_data_in_text): New flag.
+ * as.c (main): Set it for -R.
+
+ * as.h (flag_suppress_warnings): New flag.
+ * as.c (main): Set it for -W.
+ * messages.c (as_warn): Check it instead of flagseen['W'].
+
+ * as.h (flag_always_generate_output): New flag.
+ * as.c (main): Set it for -Z.
+
+ * config/tc-sparc.h: Define NEED_FX_R_TYPE.
+ * config/tc-a29k.h: Ditto.
+ * write.h (struct fix): Don't conditionalize fx_r_type field on TC
+ macros.
+
+ * as.h: Merged ANSI and non-ANSI function decls, using PARAMS
+ macro.
+ * bignum.h, expr.h, flonum.h, frags.h, input-file.h, listing.h,
+ obj.h, output-file.h, read.h, struc-symbol.h, symbols.h, tc.h,
+ write.h: Likewise.
+ * read.c: Likewise.
+
+ * xmalloc.c: Conditionalize on HAVE_MALLOC_H, not USG. Fold in
+ xrealloc from xrealloc.c.
+ * xrealloc.c: Deleted.
+ * Makefile.in (REAL_SOURCES, OBJS): Adjusted.
+
+ * configure.in: For host CPU a29k, rs6000, vax, consider using bsd
+ or vms ho- files.
+
+ * config/ho-sysv.h (setbuffer, HO_USG): Deleted.
+
+ * config/atof-ieee.c (atof_ieee): Exponent field isn't a pointer;
+ don't initialize it with NULL.
+
+ * config/ho-vax.h (M_VAX): Deleted; was unused.
+
+ * README-vms, config/ho-vms.h, config/obj-vms.c, config/obj-vms.h:
+ New files imported from FSF version, contributed by Eric Youngdale.
+ * README-vms-dbg, config/vms: Deleted.
+
+ * ChangeLog, config/ChangeLog: Merged.
+
+ * config/*tahoe*, configure.in: Tahoe support brought in from FSF
+ version.
+
+ * input-file.c (input_file_open): Eliminate call to setvbuf.
+ [USG] (setbuffer): Deleted macro.
+
+
+ * all files: Whitespace changes for GNU indentation style, done by
+ GNU `indent'. Some cleanup still needed, especially of comments.
+
+ * configure.in: No te-386bsd.h file exists; don't try to use it.
+
+ * obj-coff.c (obj_coff_endef): Use as_warn, not fprintf.
+
+ * tc-m68k.c (md_assemble): Don't complain about 68000 with 68881;
+ could be doing emulation.
+
+
+ z8000 documentation
+ * doc/Makefile.in, doc/all.m4, doc/as-all.texinfo, doc/as.texinfo:
+ all modified.
+
+
+ * Makefile.in (as.o, obj-format.o): added dependency on subsegs.h.
+
+ * subsegs.h: add extern to segment_info declaration.
+
+ * read.h: added extern declarations for comment_chars,
+ line_comment_chars, and line_separator_chars.
+ read.c, app.c: removed definitions of comment_chars,
+ line_comment_chars, and line_separator_chars.
+
+ * tc-m68k.c (m68k_reg_parse): If REGISTER_PREFIX isn't defined,
+ still accept (but don't require) OPTIONAL_REGISTER_PREFIX before
+ the register name.
+ (insert_reg): put REGISTER_PREFIX before register names before
+ putting them in the symbol table.
+ * tc-m68k.h (OPTIONAL_REGISTER_PREFIX): Define to be "%", if not
+ M68KCOFF.
+
+ * obj-coffbfd.c (fill_section): set STYP_NOLOAD bit for .bss
+ section.
+
+ * atof-ieee.c, atof-ns32k.c, tc-*.c: made EXP_CHARS, FLT_CHARS,
+ comment_chars, line_comment_chars and line_seperator_chars
+ consistently const, and always initialized them. Included read.h.
+
+
+ * tc-sparc.c (sparc_ip): Add code to flag error if an absolute
+ constant will not fit in an immediate field.
+ (md_apply_fix, RELOC_BASE13 case): Check for relocation overflow.
+
+
+ * obj-coff.c (callj_table): Delete global variable.
+ (obj_emit_relocations): Define it locally here, and only if
+ TC_I960 is defined.
+
+ * tc-m68k.c (m68k_reg_parse): Underscore is part of a symbol name.
+ (m68k_ip): Don't warn about bignum used as float bit-pattern.
+
+ * obj-coff.c: Replaced ANSI and non-ANSI function declarations
+ with a single set using PARAMS macro.
+
+ * tc-i960.c (tc_bout_fix_to_chars): Bit-field fixups want a length
+ of 2.
+
+ * tc-i960.c: Missed a couple of 0->NO_RELOC conversions.
+
+ * tc-i960.h (N_BALNAME, N_CALLNAME): Define as char-type values,
+ so widening works consistently.
+
+
+ * version.c: Put conditional "const" before version_string, not
+ before dummy function for VMS. Now version 1.91.03.
+
+ * app.c (do_scrub_next_char): Need double-\ before `000' to show
+ printed rep of null character.
+
+
+ * obj-coffbfd.c (write_object_file): check return value of
+ bfd_close_all_done.
+
+
+ * Support for i386-sysv.
+ obj-coffbfd.c (do_relocs_for, write_object_file): set segment
+ addresses to reasonable sizes. New define ZERO_BASED_SEGMENTS can
+ be used to set them all to zero as was done before.
+ (fill_section): segment addresses now set in write_object_file.
+ (fill_section): Don't set STYP_NOLOAD for .bss section.
+ (fixup_segment): 386 uses strange common symbol format.
+ tc-i386.c (tc_coff_fix2rtype): use R_DIR32, not R_RELLONG, for
+ compatibility with SVR3.2 linker.
+ * configure.in: i386-sysv and i386-sco use coffbfd.
+
+ * app.c (do_scrub_next_char): discard whitespace after a label.
+
+Sat Oct 10 12:33:45 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
+
+ * configure.in: differentiate between SunOS 4 and Solaris2 for Sun4
+ hosts, use the sysv configuration for solaris2
+
+
+ fix i960+non-bfd coff bit rot.
+ * obj-coff.c (c_dot_file_symbol, obj_coff_ln, obj_coff_line):
+ support for C source listings. (obj_coff_endef): look in the right
+ part of the symbol for the symbol name
+
+ * tc-m68k.c (get_num): make it work for all segments, not just the
+ first three.
+
+Mon Oct 5 03:30:36 1992 Mark Eichin (eichin at tweedledumber.cygnus.com)
+
+ * configure.in: recognize i386-*-bsd emulation.
+
+Thu Oct 1 23:05:12 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
+
+ * configure.in: use the cpu-vendor-os triple for host and target
+
+
+ * obj-coffbfd.c (write_object_file): don't fixup for the z8k
+ * tc-z8k.c: lots of bug fixes
+
+
+ * tc-i960.h, tc-i960.c: avoid the ANSI preprocessor addition
+ #elif, since it is not supported by old compilers.
+ ho-rs6000.h, tc-m68k.c: the native RS/6000 compiler miscompiles a
+ couple of expressions in tc-m68k.c.
+
+
+ * read.c (cons): If NO_RELOC is defined, use it.
+
+ * tc-i960.c (get_cdisp): Use NO_RELOC, not 0, in call to fix_new.
+
+
+ * tc-m68k.h: if M68KCOFF, define DOT_LABEL_PREFIX (to require
+ local labels to start with a .) and set REGISTER_PREFIX to %.
+ tc-m68k.c (m68k_reg_parse): accept REGISTER_PREFIX if defined.
+
+
+ * messages.c: Comment changes.
+
+
+ * as.h: Test if __STDC__ is defined only, don't test its value.
+ * messages.c: If __STDC__ is not defined, define NO_STDARG.
+
+
+ * listing.c (debugging_pseudo): Add stabs and stabn as things to
+ ignore.
+
+
+ * obj-coffbfd.c (do_relocs_for,fill_section): now allocate all
+ sections starting from zero, rather than making them consecutive.
+ This makes subsequent reloc calculations easier, esp if the object
+ format doesn't understand addends. (obj_coff_lcomm): (maybe temporarily)
+ allocate lcomm in .data rather than in .bss. It seems that some
+ tools can't cope with a non-zero sized bss before linkage.
+
+
+ * tc-m68k.c: Replace "enum m68k_architecture" with "int"
+ throughout. That enum no longer means what we thought it meant.
+
+ * tc-m68k.c (md_assemble, md_parse_option): Handle new
+ "-mno-688[58]1" options.
+
+ * tc-m68k.c: Added CPU32 support.
+
+
+ * tc-m68k.c (m68k_ip): An(disp) is not pc relative.
+
+
+ * Makefile.in (as.new): Remove dependence on LOCAL_LOADLIBES.
+ Change LIBDEPS dependence to LIBS.
+
+
+ * Makefile.in (install): if $(tooldir) exists, install as in
+ $(tooldir)/bin.
+
+
+ * Added WARN_SIGNED_OVERFLOW_WORD define to give an error if any
+ .word is < -32768 or > 32767. The -J flag causes the error to be
+ ignored. This is to catch over-sized switches generated by gcc on
+ systems which don't support the broken .word hack.
+ as.c (main): permit -J if WARN_SIGNED_OVERFLOW_WORD.
+ write.c (fixup_segment): check for signed .word overflow if
+ WARN_SIGNED_OVERFLOW_WORD.
+
+ * write.c (fixup_segment): fixed missing parens in expression
+ checking for byte or word overflow.
+
+ * obj-coffbfd.h: define WARN_SIGNED_OVERFLOW_WORD.
+ obj-coffbfd.c (fixup_segment): check for signed .word overflow if
+ WARN_SIGNED_OVERFLOW_WORD.
+
+ * obj-coffbfd.c (fixup_segment): fixed missing parens in
+ expression checking for byte or word overflow.
+
+
+ Support for i386 coff
+ * obj-coffbfd.h : added stuff
+ * tc-i386.c (tc_coff_fix2rtype): new function
+ * tc-i386.h : new coff defines
+
+
+ * input-scrub.c (input_scrub_push): call input_file_begin, not
+ input_scrub_begin.
+ messages.c (as_perror): print ": " between the passed in error and
+ the strerror, like perror does.
+
+
+ * Makefile.in: use gas_target instead of modifying target_cpu.
+ From Steve Chamberlain:
+ Makefile.in: Handle m68*-*-coff*.
+ read.c, read.h: add mult argument to s_space
+
+ * tc-m68k.c (m68k_ip, m68k_ip_op, get_num, try_moto_index): merge
+ Motorola and MIT syntax; gas can now assemble either type of
+ file.
+ tc-m68kmote.c, tc-m68kmote.h: removed now superfluous files.
+ From Steve Chamberlain:
+ m68kcoff.mt: for m68k COFF.
+ obj-coffbfd.c: (fixup_mdeps) added
+ (size_section) removed bad sanity check
+ (fill_section) added rs_machine_dependent case
+ (write_object_file) call fixup_mdeps
+ (fixup_segment) set fx_subsy to 0.
+ obj-coffbfd.h: define WORKING_DOT_WORD (too hard to support) and
+ handle m68k.
+ tc-m68k.c, config/tc-m68k.h: added m68k COFF support and Motorala
+ pseudo ops.
+
+
+ * Makefile.in (LIBS): Include opcode library.
+
+
+ * config/tc-m68k.c (get_num, case SEG_BIG): If only small integers
+ including zero are accepted, pass +0.0.
+
+
+ * Makefile.in: map "as" through program_transform_name when
+ installing.
+
+ * doc/Makefile.in: map "as" through program_transform_name when
+ installing.
+
+
+ * Makefile.in (as.new): Depend on LOCAL_LOADLIBES.
+
+
+ * obj-bout.h, obj-bout.c (obj_header_append, obj_symbol_to_chars),
+ tc-i960.c (md_ri_to_chars): Always output bout object file in
+ little endian byte order (used to use endianness of host).
+
+
+ * config/tc-m68k.c (init_table): Now const. Always include 68851
+ data, so that "bc" is available to 68040 cache instructions.
+ Added "tt0", "tt1", and 68ec030 variants.
+ (md_assemble): Complain if 68000 (only) and 68881 are specified.
+ (enum _register): Added TT0, TT1.
+ (m68k_ip, cases '3' and 't'): Handle new operand type codes. Pass
+ line number correctly in "internal error" messages. Don't print
+ architecture-mismatch message for operand errors.
+
+ * config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather
+ than install_operand.
+
+
+ * listing.c (buffer_line): rewind to the start of include
+ files, they might be included twice.
+
+ * z8k.c, z8k.h, z8k.mt: z8000 support stuff
+
+
+ * Makefile.in: defined TARGET_CPU for C code so that it can choose
+ one element of a family.
+
+ * tc-m68k.c: use TARGET_CPU to choose default cpu type.
+
+ * te-generic.h: default to LOCAL_LABELS_DOLLAR and LOCAL_LABELS_FB
+ so that we can assemble hand-written libgcc code.
+
+
+ * messages.c (as_warn): Use fputs, not fprintf, with a buffer that
+ has already been formatted (but may still contain %-characters).
+ (as_bad): Likewise.
+
+
+ * tc-m68k.c, tc-m68kmote.c: the cas2 instruction is supposed to be
+ written with indirection on the last two operands, which can be
+ either data or address registers. Added a new operand type 'r'
+ which accepts either register type. Added '(' to notend stuff in
+ tc-m68kmote.c to accept (a0):(a2) in cas2 instruction.
+
+
+ * as.h (enum _relax_state): Start off at one, not zero, to better
+ catch uninitialized-variable errors.
+ (linkrelax): Declare new variable.
+
+ * messages.c (warning_count, error_count): Default initializer is
+ sufficient.
+
+ * write.c: Merged some declarations, using PARMS macro.
+ (text_frag_root, data_frag_root, bss_frag_root, text_last_frag,
+ data_last_frag): No longer static.
+ (write_object_file, case rs_align or rs_org): If HANDLE_ALIGN is
+ defined, call it. Change segments before calling fixup_segment.
+ (relax_align): If linkrelax, provide extra padding.
+
+ * obj-bout.c (obj_emit_relocations): Emit alignment relocs despite
+ their not having symbols associated.
+
+ * tc-i960.c (norelax, instrument_branches): Default initializer is
+ sufficient.
+ (linkrelax): Delete variable definition.
+ (mem_fmt): Call fix_new with NO_RELOC.
+ (tc_bout_fix_to_chars): Handle alignment relocs.
+ (i960_handle_align): New function.
+ * tc-i960.h (linkrelax): Delete declaration.
+ (HANDLE_ALIGN): New macro; calls i960_handle_align.
+ (NEED_FX_R_TYPE, NO_RELOC): New macros.
+
+
+ * config/sparc.mt: New file. Grab sparc opcode table from bfd
+ library.
+
+
+ * Makefile.in: always create installation directories. Removed
+ MINUS_G, set CFLAGS to default to -g, added FLAGS_TO_PASS, passed
+ FLAGS_TO_PASS to recursive makes.
+
+ * doc/Makefile.in: always create installation directories.
+
+
+ * input-scrub.c (input_scrub_pop, input_scrub_push): memcpy was
+ being used with args swapped, causing occasional lossage when
+ refilling buffers after an include file.
+
+
+ * messages.c (as_tsktsk): Use correct ANSI form for stdarg
+ version. Discard bogus DONTDEF version.
+ (as_warn, as_bad, as_fatal): Likewise.
+
+
+ * config/tc-m68k.c (m68k_ip): If instruction is invalid for the
+ selected architecture, print a message saying so and listing what
+ processors support it, rather than saying "operands mismatch".
+
+
+ * as.h [BROKEN_ASSERT]: If defined, turn off all assertion checks.
+
+ * config/ho-rs6000.h (M_RS6000): Don't define it.
+ (free): Declare it.
+ (BROKEN_ASSERT): Define it if not __STDC__.
+
+
+ * sparc.mt: New file.
+
+
+ * tc-m68k.c: ".align N" means align to N-byte boundary *only*
+ if TN_SUN3; otherwise align to 2**N-byte bounary.
+
+
+ * read.c (s_fill): make the .fill size clamped error a warn and
+ fix bug where 0's were always placed.
+
+ * config/tc-h8300.c: if a :8 is seen after an operand, fill top
+ two bytes of any constant with 0xff:
+
+
+ * config/tc-m68k.c (md_pseudo_table): fix the .align thing
+ the right way; for just the 68k. Sun 3 .align is nbytes, not ptwo.
+
+Wed Aug 5 01:54:34 1992 John Gilmore (gnu at cygnus.com)
+
+ * tc-m68k.c (try_index): Error if index scaling specified and
+ assembling for an older CPU than a 68020.
+
+
+ * config/tc-sparc.c (tc_aout_fix_to_chars): If pc-relative, take
+ fx_offset into account.
+
+
+ * configure.in (mips host): Accept "ultrix" with version number.
+
+ * expr.c (floating_constant): Separate "=-" to avoid confusing
+ ancient or broken compilers.
+
+ * config/tc-m68k.c (m68k_ip): Mismatch error could also indicate
+ processor/opcode mismatch, so reword the error message.
+ (md_assemble): If no CPU has been set (even if FPU/PMMU
+ characteristics have been), default to 68020. Don't need extra
+ quotes around error string.
+
+
+ * read.c (potable): Revert sac's incorrect change made Jul 13.
+ Align really is supposed to be ptwo not nbytes.
+
+
+ * Makefile.in: _Do_ include libiberty. (from sef)
+
+
+ * expr.c (integer_constant): Handle "0f" and "0b" label references
+ properly.
+
+
+ * write.c (fixup_segment): if relaxing, don't do anything.
+ * config/obj-bout.[ch] : maintain the a_relaxable file header info
+ * config/tc-i960.c: new option -linkrelax
+
+
+ * expr.c (expr): allow SEG_BSS in expressions
+ * read.c (potable): align should be nbytes, not ptwo!
+ * write.c (write_object_file): extra glue for new bss attributes
+ (relax_segment): SEG_BSS is ok now
+ * config/tc-m68k.c (m68k_ip_op): can now parse more @( modes
+
+
+ * obj-coffbfd.c (fill_section): mark .lit sections as STYP_LIT
+
+
+ * configure.in: recognize m680x0 as having sun3 emulation mode for
+ vxworks environment.
+
+
+
+ * Makefile.in: Add program_suffix (parallel to program_prefix)
+
+
+ * app.c (process_escape): new function to handle escapes the right
+ way, (do_scrub_next_char): use new function
+ * cond.c (s_ifdef): do ifdef/ifndef right
+ * read.c (s_fill): make the , expressions optional like the doc
+ says
+ * config/tc-h8300.[ch]: better warnings
+
* subsegs.c (subsegs_begin): create bss0_frchainP in the same was
* write.c (write_object_file): various changes to handle data in
the BSS segment in much the same was as stuff in the DATA segment.
- * subsegs.c (subseg_change): allow and handle a change into SEG_BSS.
+ * tc-m68k.c (m68kip): Fix typo so that only arch's >=68020 do
+ pcrel data stuff. (md_estimate_size_before_relax): when relaxing a
+ 68010 bxx into a bra+6 jmpxx, put the bytes of the jmp opcode into
+ the right place. (s_bss): Don't put .bss stuff into SEG_DATA, put
+ it into SEG_BSS
* configure.in: Recognize sparclite as a sparc variant.
+ * tc-sparc.c: Use new ARCHITECTURES_CONFLICT_P macro. Mention new
+ -Asparclite flag.
+
* config/tc-a29k.c: lint
* listing.c, expr.c: patches from Andrew Smith
+
+ * doc/Makefile.in: use m4 rather than gm4.
+
+
+ * obj-coffbfd.c: use is a synonym for section, (do_relocs_for):
+ calc the base of relocs correctly.
+ * tc-a29k.c (parse_operand): allow expressions to be in any section.
+
* as.c, write.c: use -K rather than -k for the broken word warning
* Makefile.in: pass down MAKEINFO explicitly on info.
+ * doc/Makefile.in: use $(MAKEINFO) not makeinfo.
+
* flonum-const.c: renamed flonum-konst.c to stop dos name
conflict.
+
+ * tc-m68k.h, te-sun3.h: moved LOCAL_LABELS_FB definition from
+ tc-m68k.h to te-sun3.h.
+
* configure.in: vxworks68 gets te-sun3.h.
* symbols.c: remove local_labels_dollar, replace with a function
interface for a sparse array. All users adjusted.
+ * te-sun3.h: add LOCAL_LABELS_DOLLAR.
+
+
+ * doc/Makefile.in: commented out line for building as-all.texinfo.
+ This is temporary.
+
+ * doc/as.texinfo, doc/as-all.texinfo: added menu item hooks.
+
* Makefile.in: added check target.
-subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
copyrights to '92, changed some from Cygnus to FSF.
+ * doc/Makefile.in, doc/configure.in: removed traces of namesubdir,
+ -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
+ copyrights to '92, changed some from Cygnus to FSF.
+
Tue Feb 25 14:17:15 1992 Steve Chamberlain (sac at rtl.cygnus.com)
* expr.c: If an expression is single comma, then return with
* read.c, write.c subsegs.c: back out the .bss changes.
+ * obj-aout.c: do not include stab.gnu.h if NO_LISTING.
+
+ * tc-i860.c, a.out.gnu.h: move i860 relocs to a proper place.
+
+ * a.out.h: removed.
+
* symbols.c (local_label_name): symbols now start with ^A.
* as.c (perform_an_assembly_pass): zero bss_fix_root, too.
+ * tc-i386.c: tc-i386.c: added handling of the following opcodes:
+ i/o opcodes - inb, inw, outb and outw. string manipulation with
+ att syntax - scmp, slod, smov, ssca, ssto.
+
+ * obj-coff.c: (for aix386) Moved the symbols .text, .data and .bss
+ to just after .file .
+
+ In obj_crawl_symbol_chain() where it tries to put the external
+ symbols apart, with the condition:
+ (!S_IS_DEFINED(symbolP) &&
+ !S_IS_DEBUG(symbolP) &&
+ !SF_GET_STATICS(symbolP))
+ it was moving too many symbols out. So I switch it back to the
+ condition:
+ (S_GET_STORAGE_CLASS(symbolP) == C_EXT && !SF_GET_FUNCTION(symbolP))
+
+ In obj_emit_relocations() added the conditional on KEEP_RELOC_INFO
+ so that we don't use the F_RELFLG which make the linker complain
+ that somebody has stripped the relocation info.
+
+ Also, the AIX ld program require that the relocation table
+ is sorted by r_vaddr like the standard ATT assembler does.
+
+ [he also changed the sizeof(struct ...)'s into the coff
+ style FOOSZ macros. I'm not sure this is right, but I can't
+ remember why. xoxorich.]
+
* Makefile.in, configure.in, doc: use the doc. Build it, install
* write.c: comment change only.
+ * tc-m88k.[hc]: pulled in from hack's unfinished work. These
+ aren't yet integrated.
+
+ * tc-i860.[hc]: blew off the dust. Something must still be done
+ about conflicting relocation types.
+
+ * tc-ns32k.c: Replaced previous tc_aout_fix_to_chars stub with the
+ real thing.
+
+ * tc-i960.c, tc-sparc.c: white space and comments only.
+
+ * tc-a29k.h: delete duplicate macro definition.
+
+ * new file atof-ns32k.c copied from hack's last unreleased gas.
+
Mon Feb 17 07:51:06 1992 K. Richard Pixley (rich at cygnus.com)
* config/tc-ns32k.c: actually make tc_aout_fix_to_chars work