Commit graph

176 commits

Author SHA1 Message Date
Jim Wilson
0cef0e20f9 Flag error if absolute constant is too large for an immediate field. 1992-11-06 01:59:36 +00:00
Ken Raeburn
f3f45b1047 this morning's check-ins... 1992-11-04 16:01:54 +00:00
Ian Lance Taylor
1045c20b4d 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.
1992-10-23 21:42:04 +00:00
Ian Lance Taylor
6142210d1d 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.
1992-10-20 20:10:34 +00:00
Ian Lance Taylor
4b77b129c6 Added #include <ctype.h> to several files. It's often more efficient,
and on some systems it's required.
1992-10-14 20:20:03 +00:00
Steve Chamberlain
c116445e02 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
1992-10-06 00:03:20 +00:00
Steve Chamberlain
4f4476787a Mon Oct 5 09:28:57 1992 Steve Chamberlain (sac@thepub.cygnus.com)
* tc-m68k.c (get_num): make it work for all segments, not just the
	first three.
1992-10-05 16:30:05 +00:00
Steve Chamberlain
2f68cb548c * obj-coffbfd.c (write_object_file): don't fixup for the z8k
* tc-z8k.[ch]: lots of bug fixes
1992-09-29 19:25:33 +00:00
Ian Lance Taylor
7c42ad77f3 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.
1992-09-29 18:38:20 +00:00
Ken Raeburn
fdc6ba6423 tc-i960.c: use NO_RELOC 1992-09-29 01:27:27 +00:00
Ian Lance Taylor
fe86a81703 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.
1992-09-26 01:20:04 +00:00
Sean Eric Fagan
b066f445bb 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.
1992-09-22 20:07:55 +00:00
Ken Raeburn
df3768fb6c cpu32 and -mno-688?1 support from p3 1992-09-22 19:24:33 +00:00
Ken Raeburn
ae9c717ec6 cpu32 and -mno-688?1 support from p3 1992-09-22 19:19:02 +00:00
Ian Lance Taylor
065b6303d0 Roll bask the WRS change, since it had already been applied, and the
reversed patch they sent blew my mind.
1992-09-22 15:32:03 +00:00
Ian Lance Taylor
25fb44628a Patches from WRS:
Mon Sep 21 14:44:17 1992  Ian Lance Taylor  (ian@cygnus.com)

	* tc-m68k.c (m68k_ip): fixed move16 operand handling, from WRS.
1992-09-21 22:31:41 +00:00
Steve Chamberlain
04b07d16c7 * tc-m68k.c (m68k_ip): An(disp) is not pc relative. 1992-09-18 15:03:59 +00:00
Ian Lance Taylor
e41474b77d 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.
1992-09-14 05:25:56 +00:00
Ian Lance Taylor
76bf2d5d61 Sun Sep 13 20:29:39 1992 Ian Lance Taylor (ian@cygnus.com)
* obj-coffbfd.c (fixup_segment): fixed missing parens in
	expression checking for byte or word overflow.
1992-09-14 03:34:44 +00:00
Steve Chamberlain
6066ebada2 Whoops, forgot this one 1992-09-11 22:02:52 +00:00
Steve Chamberlain
28c8c50b43 Support for 386 coff 1992-09-11 17:23:31 +00:00
Ian Lance Taylor
3ad9ec6a7b 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.
1992-09-09 18:38:16 +00:00
Ken Raeburn
e53ab768f4 from p3: +0.0 is a small integer, at least for moveq 1992-09-04 23:25:16 +00:00
Steve Chamberlain
cfb48ce52d #include file moved 1992-08-31 22:53:15 +00:00
Jim Wilson
71703b0735 Update to SPARC Version 9 Draft 1.0.4. 1992-08-31 17:14:50 +00:00
Jim Wilson
01aec199eb Keep sparc.mt. 1992-08-31 00:27:23 +00:00
Jim Wilson
c6b16054ea Resolve someone else's CVS update conflict. 1992-08-31 00:01:22 +00:00
Ian Lance Taylor
8ae35e5919 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).
1992-08-29 00:16:47 +00:00
Ken Raeburn
4134a793c7 * 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.

From Colin Smith (colin@wrs.com):
* config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather than
install_operand.
1992-08-26 04:08:45 +00:00
Steve Chamberlain
163107a143 Support for the Z8k 1992-08-25 22:12:54 +00:00
Ian Lance Taylor
148eb5dd61 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.
1992-08-24 19:48:54 +00:00
Ian Lance Taylor
c50140c86b This is for PR 628.
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.
1992-08-19 18:27:48 +00:00
Ken Raeburn
09952cd955 mainly link-relax changes 1992-08-19 14:42:21 +00:00
Ken Raeburn
8be74775cd * 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".
1992-08-15 02:57:12 +00:00
Ken Raeburn
c8c7e0bf25 make it compile on rs6k: declare free, disable assertions, don't define M_RS6000 1992-08-13 20:55:03 +00:00
Ken Raeburn
0e7d3df73a fix up hostname in log entry 1992-08-11 17:04:54 +00:00
Ken Raeburn
f101ac57c0 grab bfd lib for opcode table 1992-08-11 17:00:47 +00:00
Per Bothner
bec66218fc * tc-m68k.c: ".align N" means align to N-byte boundary *only*
if TN_SUN3; otherwise align to 2**N-byte bounary.
1992-08-10 21:40:49 +00:00
Steve Chamberlain
1eaf4dd64d * config/tc-h8300.c: if a :8 is seen after an operand, fill top
two bytes of any constant with 0xff:
1992-08-06 19:09:57 +00:00
Steve Chamberlain
9e43698e16 * 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.
1992-08-05 19:05:43 +00:00
John Gilmore
934afcd434 * tc-m68k.c (try_index): Error if index scaling specified and
assembling for an older CPU than a 68020.

This bug was found at Adobe because GAS did not diagnose incorrect
68020 code generated by GCC when compiling for 68010.  We had to debug it
in the target system as failing instructions.
1992-08-05 08:59:10 +00:00
Ken Raeburn
680227f309 fix for pr1371: heed fx_offset in pcrel relocs 1992-08-01 23:20:55 +00:00
Ken Raeburn
6d27d3a205 * 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.
1992-08-01 02:26:13 +00:00
David Henkel-Wallace
cd625bf3f9 Keep OSE support 1992-07-23 18:23:44 +00:00
K. Richard Pixley
ebe30eae41 removed rcsids 1992-07-18 04:12:48 +00:00
Steve Chamberlain
462088b886 * 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
1992-07-16 15:22:26 +00:00
Steve Chamberlain
a933d598b6 * 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
1992-07-13 21:32:05 +00:00
Steve Chamberlain
f264b1f575 *** empty log message *** 1992-07-07 00:11:55 +00:00
Steve Chamberlain
7c2d4011a4 Wed Jun 24 10:57:54 1992 Steve Chamberlain (sac@thepub.cygnus.com)
* 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
1992-06-24 18:02:38 +00:00
Steve Chamberlain
a1765cf0fe * 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
1992-06-09 14:57:42 +00:00