Tue Nov 10 09:50:25 1992 Ian Lance Taylor (ian@cygnus.com) * 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. Thu Nov 5 17:55:41 1992 Jim Wilson (wilson@sphagnum.cygnus.com) * 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. Wed Nov 4 07:50:46 1992 Ken Raeburn (raeburn@cygnus.com) * 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. Fri Oct 23 14:40:38 1992 Ian Lance Taylor (ian@cygnus.com) * obj-coffbfd.c (write_object_file): check return value of bfd_close_all_done. Tue Oct 20 13:02:25 1992 Ian Lance Taylor (ian@cygnus.com) * 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. Mon Oct 5 09:28:57 1992 Steve Chamberlain (sac@thepub.cygnus.com) 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. Tue Sep 29 12:22:52 1992 Steve Chamberlain (sac@thepub.cygnus.com) * obj-coffbfd.c (write_object_file): don't fixup for the z8k * tc-z8k.c: lots of bug fixes Tue Sep 29 10:51:55 1992 Ian Lance Taylor (ian@cygnus.com) * 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. Mon Sep 28 21:16:51 1992 Ken Raeburn (raeburn@cambridge.cygnus.com) * tc-i960.c (get_cdisp): Use NO_RELOC, not 0, in call to fix_new. Fri Sep 25 18:18:52 1992 Ian Lance Taylor (ian@cygnus.com) * 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. Tue Sep 22 13:02:07 1992 Sean Eric Fagan (sef@cygnus.com) * 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. Tue Sep 22 15:10:51 1992 Ken Raeburn (raeburn@cambridge.cygnus.com) * 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. Fri Sep 18 08:02:18 1992 Steve Chamberlain (sac@thepub.cygnus.com) * tc-m68k.c (m68k_ip): An(disp) is not pc relative. Sun Sep 13 20:29:39 1992 Ian Lance Taylor (ian@cygnus.com) * 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. Fri Sep 11 10:21:04 1992 Steve Chamberlain (sac@thepub.cygnus.com) Support for i386 coff * obj-coffbfd.h : added stuff * tc-i386.c (tc_coff_fix2rtype): new function * tc-i386.h : new coff defines Wed Sep 9 11:10:24 1992 Ian Lance Taylor (ian@cygnus.com) * 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. Fri Aug 28 16:25:22 1992 Ian Lance Taylor (ian@cygnus.com) * 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). Tue Aug 25 15:11:08 1992 Steve Chamberlain (sac@thepub.cygnus.com) * z8k.c, z8k.h, z8k.mt: z8000 support stuff Mon Aug 24 12:45:12 1992 Ian Lance Taylor (ian@cygnus.com) * 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. Wed Aug 19 11:20:59 1992 Ian Lance Taylor (ian@cygnus.com) * 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. Tue Aug 11 12:58:14 1992 Ken Raeburn (raeburn@cygnus.com) * sparc.mt: New file. Mon Aug 10 14:37:08 1992 Per Bothner (bothner@cygnus.com) * tc-m68k.c: ".align N" means align to N-byte boundary *only* if TN_SUN3; otherwise align to 2**N-byte bounary. Thu Aug 6 12:08:42 1992 Steve Chamberlain (sac@thepub.cygnus.com) * config/tc-h8300.c: if a :8 is seen after an operand, fill top two bytes of any constant with 0xff: 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. Mon Jul 6 17:09:32 1992 Steve Chamberlain (sac@cygnus.com) * obj-coffbfd.c (fill_section): mark .lit sections as STYP_LIT Tue Jun 9 07:50:46 1992 Steve Chamberlain (sac@thepub.cygnus.com) * 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 Thu May 28 11:20:27 1992 Jim Wilson (wilson@sphagnum.cygnus.com) * tc-sparc.c: Use new ARCHITECTURES_CONFLICT_P macro. Mention new -Asparclite flag. Mon May 4 18:56:19 1992 Steve Chamberlain (sac@thepub.cygnus.com) * 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. Thu Mar 12 04:42:38 1992 K. Richard Pixley (rich@cygnus.com) * tc-m68k.h, te-sun3.h: moved LOCAL_LABELS_FB definition from tc-m68k.h to te-sun3.h. Wed Mar 11 23:34:46 1992 K. Richard Pixley (rich@cygnus.com) * te-sun3.h: add LOCAL_LABELS_DOLLAR. Fri Feb 21 06:22:15 1992 K. Richard Pixley (rich@rtl.cygnus.com) * 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. Fri Feb 21 02:17:22 1992 Minh Tran-Le (TRANLE@INTELLICORP.COM) * 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. Fri Feb 21 01:53:50 1992 Minh Tran-Le (TRANLE@INTELLICORP.COM) * 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.] Tue Feb 18 02:11:10 1992 K. Richard Pixley (rich at cygnus.com) * 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.