Commit Graph

1228 Commits

Author SHA1 Message Date
Joern Rennecke
bf5ac1b8ed SH4 assembler extensions. 1997-08-29 19:03:06 +00:00
Ian Lance Taylor
4b231a267c * config/tc-alpha.c (load_expression): Check explicitly for O_big,
rather than calling abort.
1997-08-26 19:12:10 +00:00
Ian Lance Taylor
625ea5db80 Use address size prefix for loopw as for jcxz. 1997-08-26 16:33:34 +00:00
Ian Lance Taylor
02bdbd8b5d * config/tc-i386.c (md_assemble): In JumpByte case, when looking
for a WORD_PREFIX_OPCODE, change it to ADDR_PREFIX_OPCODE if this
	is jcxz.
1997-08-26 16:25:03 +00:00
Nick Clifton
b688e04e29 Set machine architecture and type. 1997-08-25 23:03:24 +00:00
Nick Clifton
cf735d2a93 Support constant expressions as register lists. 1997-08-25 18:21:02 +00:00
Nick Clifton
2b3e0f9e1e Switch from C++ style comment to C style. 1997-08-25 16:41:18 +00:00
Nick Clifton
5f04449977 Add support for curly brace register list syntax. 1997-08-22 17:44:55 +00:00
Nick Clifton
f483cb11c8 Fixed v850_section to cope with original section styles as well. 1997-08-21 21:43:44 +00:00
Nick Clifton
19f40fdca7 Added support for NEC style assembler pseudo ops:
.section "name", <type>
	.offset <expression>
	.bss
1997-08-21 17:54:49 +00:00
Fred Fish
015b3352e5 Tue Aug 19 08:59:12 1997 Fred Fish <fnf@cygnus.com>
* read.c (s_lcomm_internal): Renamed from s_lcomm, added arg to
	flag when alignment is in bytes instead of power of 2, and code to
	use that flag to convert alignment to bytes.
	(s_lcomm, s_lcomm_bytes):  New helpers that call s_lcomm_internal.
	* read.h (s_lcomm_bytes): Add prototype.
	* config/obj-coff.c (write_object_file): If ALIGNMENT_IN_S_FLAGS is
	defined, write alignment to alignment bits in section header s_flags
	rather than the s_align field.
start-sanitize-tic80
	* config/obj-coff.h (ALIGNMENT_IN_S_FLAGS): Define for TC_TIC80.
	* config/tc-tic80.c (md_pseudo_table): Use s_lcomm_bytes for bss
	pseudo, instead of s_lcomm which wants a power of two for alignment.
end-sanitize-tic80
PR 12215 and PR 13061
1997-08-19 16:46:03 +00:00
Nick Clifton
a365cd79ee Add support for v850e and v850eq targets.
Add support for BFD_RELOC_V850_16_PCREL.
1997-08-18 18:26:42 +00:00
Nick Clifton
035d8553d7 Fixed typo in previous delta and added more sanitization. 1997-08-14 19:55:03 +00:00
Nick Clifton
323b12f8ce oops - fixed typo. 1997-08-14 19:48:36 +00:00
Nick Clifton
58036ae4c9 Tidied up the sanitization. 1997-08-14 19:34:58 +00:00
Nick Clifton
32e23ecd9c Added support for v850e and v850eq instructions. 1997-08-14 02:03:34 +00:00
Richard Henderson
8cf777d667 * as.h (enum _relax_state): Add rs_leb128.
* read.c (potable): Add sleb128 and uleb128.
        (sizeof_*leb128, output_*leb128, emit_leb128_expr, s_leb128): New
        functions.
        * read.h: Update prototypes.
        * symbols.c (resolve_symbol_value): Streamline quite a bit.  Return
        the symbol value, add a second FINALIZE argument that prevents
        changes from being comitted.  Update all callers.
        * write.c (cvt_frag_to_fill, relax_segment): Handle rs_leb128.
        * doc/as.texinfo: Document the new pseudos.
1997-08-12 05:42:00 +00:00
Ian Lance Taylor
4dc4c45dec * configure.in: Define TARGET_BYTES_BIG_ENDIAN if endian is set.
Don't set targ or gas_target.  Define SCO_ELF and
	TARGET_SOLARIS_COMMENT when appropriate.  Don't substitute for
	target_frag.
	* Makefile.am: Remove @target_frag@.
	(INCLUDES): Remove $(INTERNAL_CFLAGS), $(CROSS), $(HDEFINES), and
	$(TDEFINES).
	(dep-am): Mark as phony.
	* acconfig.h: Add TARGET_BYTES_BIG_ENDIAN, TARGET_SOLARIS_COMMENT,
	and SCO_ELF.
	* config/arm-big.mt, config/arm-lit.mt: Remove.
	* config/mips-big.mt, config/mips-lit.mt: Remove.
	* config/ppc-big.mt, config/ppc-lit.mt: Remove.
	* config/ppc-sol.mt: Remove.
	* config/i386coff.mt, config/m68kcoff.mt: Remove.
	* config/m88kcoff.mt: Remove.
	* config/sco5.mt: Remove.
	* configure, config.in, Makefile.in: Rebuild.
1997-08-06 19:06:49 +00:00
Ian Lance Taylor
e2b4bd2ae1 * Makefile.am: New file, based on old Makefile.in.
* acinclude.m4: New file, from old aclocal.m4.
	* configure.in: Call AM_INIT_AUTOMAKE and AM_PROG_LIBTOOL.  Remove
	shared library handling; now handled by libtool.  Replace
	AC_CONFIG_HEADER with AM_CONFIG_HEADER.  Call AC_PROG_YACC,
	AC_PROG_LEX, and AC_DECL_YYTEXT.  Call AM_MAINTAINER_MODE,
	AM_CYGWIN32, and AM_EXEEXT.  Don't call CY_CYGWIN32 or CY_EXEEXT.
	* config.in: New file, created by autoheader.
	* conf.in: Remove.
	* acconfig.h: Mention PACKAGE, VERSION, and USING_CGEN.
	* stamp-h.in: New file.
	* as.c (print_version_id): Change GAS_VERSION to VERSION.
	(parse_args): Likewise.
	* config/obj-vms.c: (Write_VMS_MHD_Records): Likewise.
	* Makefile.in: Now built with automake.
	* aclocal.m4: Now built with aclocal.
	* configure: Rebuild.
1997-08-06 04:30:05 +00:00
Ian Lance Taylor
703f5e6e28 * config/tc-mips.c (macro): Fix handling of a double load from a
symbol plus an offset.
This is the test case, with -mips1:
	l.d	$f0,values+256
1997-08-04 21:00:37 +00:00
Jeff Law
15d8ae9d85 * config/tc-v850.c (md_assemble): Sign extend constants value
for hi and hi0 expressions.
        (v850_insert_operand): Enable range checking for generic 16bit
        operands.
finish work for pr12944.
1997-07-31 21:11:17 +00:00
Jeff Law
d222309aef * config/tc-v850.c (md_assemble): Turn on fx_no_overflow for
LO16, HI16 and HI16_S relocs.
pr12979
1997-07-29 20:19:02 +00:00
Fred Fish
e6e676a501 * config/tc-tic80.c (build_insn): Remove "extended" and replace with
"fx" and "fxfrag".  Add "ffrag".  Change code to initialize and use
	the right f/ffrag and fx/fxfrag pairs since instruction may be split
 	across frags.
PR 12899
1997-07-24 20:34:02 +00:00
David Edelsohn
9f6da65302 * config/tc-sparc.c (last_opcode): New static local.
(md_assemble): Don't issue "FP branch in delay slot" warning if
	the delay slot has been annulled.
1997-07-22 19:52:22 +00:00
Jeff Law
47bfb6fce3 * config/tc-v850.c (system_registers): Fix ordering of registers.
pr12913 (c/h from nec).
1997-07-21 14:54:49 +00:00
Fred Fish
e53430c439 * config/tc-tic80.c (build_insn): Initialize extended word to zero
when it will be filled in later by relocation information.
PR 12796
1997-07-16 05:19:20 +00:00
Ian Lance Taylor
a652f74c72 * config/tc-mips.c (macro_build): Restore check of fmt argument.
(mips_ip): Fix ISA checks.
1997-07-15 17:03:15 +00:00
Fred Fish
8ae66b94c6 * config/tc-tic80.c (build_insn): Fix endianness problem with
O_big operands.
PR 12765
1997-07-15 02:53:47 +00:00
Ian Lance Taylor
4dc8550840 * config/tc-mips.c (check_absolute_expr): Change warning to
error.
PR 12849.
1997-07-14 03:45:16 +00:00
Jeff Law
931a1858a6 * config/tc-mips.c (macro_build): Refine code to check if an
instruction is available on a particular cpu variant.
        (mips_ip): Likewise.
toshiba 5900 stuff
1997-07-11 16:40:14 +00:00
Ian Lance Taylor
76fb6d2f2f * config/tc-i386.c (tc_i386_fix_adjustable): Change ifndef
OBJ_AOUT to ifdef OBJ_ELF.
	(md_apply_fix3): When mangling 32 bit PC relative reloc for
	BFD_ASSEMBLER, handle one ELF case for COFF as well, and add a PE
	case.
	* write.c (fixup_segment): Change special case for i386-coff to
 	not apply for i386-pe.
	* config/obj-coff.c (coff_adjust_section_syms): Only count fixups
	which were not done.
	(coff_frob_file_after_relocs): Rename from coff_frob_file.
	(coff_format_ops): Initialize frob_file_after_relocs field rather
	than frob_file field.
	* config/obj-coff.h (coff_frob_file): Don't declare.
	(coff_frob_file_after_relocs): Declare.
	(obj_frob_file): Don't define.
	(obj_frob_file_after_relocs): Define.
	* configure.in: Set bfd_gas to yes for i386-*-cygwin32.
	* configure: Rebuild.
1997-07-08 02:57:50 +00:00
Ian Lance Taylor
b709b16fdc * config/obj-coff.c (fixup_segment): Never subtract section
address from PC relative reloc which will be fully resolved.
1997-07-02 16:05:55 +00:00
Michael Meissner
d006e43527 Remove brokeness in PowerPC asm 1997-06-27 23:19:15 +00:00
Ian Lance Taylor
24a3e62262 Mon Jun 16 19:12:51 1997 Geoff Keating <geoffk@ozemail.com.au>
* config/tc-ppc.h (tc_fix_adjustable): Don't let the assembler
	calculate relocations to any external symbol, because we might be
	linking a shared object and the symbol might be overriden or moved
	(for instance, moved into a static executable's .bss section).
	(GLOBAL_OFFSET_TABLE_NAME): Delete. This is an i386 wierdness.

	* config/tc-ppc.h (tc_fix_adjustable): GOT-based relocations can't
	be calculated by the assembler.

	* config/tc-ppc.c (md_apply_fix3): Handle @plt or @local branch
	whose destination lies in the same file, by ignoring the @plt or
	@local and aiming the branch at its destination.
1997-06-16 23:17:22 +00:00
Ian Lance Taylor
3a0358617e * config/tc-ppc.c (ppc_insert_operand): In 32 bit mode, with a
signed operand, sign extend a 32 bit value to the host size.
Permits dubious usage like
	addi  %r6,%r6,0xfffffeff
to assemble on a 64 bit host as it does on a 32 bit host.
1997-06-16 20:09:35 +00:00
Ian Lance Taylor
a52f90a4c8 * config/tc-i386.c (i386_operand): Use alloca rather than a fixed
buffer size to make a copy of the symbol.
1997-06-16 17:31:46 +00:00
Ian Lance Taylor
7436e4de5a Tue Jun 10 11:18:09 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* config/tc-arm.c (arm_adjust_symtab): Only set storage classes if
	OBJ_COFF.
1997-06-10 15:21:36 +00:00
Ian Lance Taylor
ccc30467a6 Tue Jun 10 11:18:09 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* config/tc-arm.c: Add prototypes for many static functions.
	(struct asm_opcode ): Add prototypes for parms field.
	(struct thumb_opcode ): Likewise.
	(fp_op2): Remove unused flags parameter.
	(output_inst): Make static.
	(arm_after_pass_hook): Remove unused ignore parameter.
	* config/tc-arm.h (arm_after_pass_hook): Declare.
	(arm_start_line_hook): Declare.
	(arm_frob_label): Declare.
1997-06-10 15:20:05 +00:00
Ian Lance Taylor
af438bdb10 * config/tc-m68k.c (md_section_align): If a.out and BFD, force
section size to be aligned.
1997-06-09 16:53:45 +00:00
Ian Lance Taylor
7257418129 * config/tc-sh.h (md_cons_align): Define.
(sh_cons_align): Declare.
	* config/tc-sh.c (md_pseudo_table): Add .uaword and .ualong.
	(sh_no_align_cons): New static variable.
	(s_uacons): New static function.
	(sh_cons_align): New function.
	(sh_handle_align): Warn about misaligned data.
	* doc/c-sh.texi: Document .uaword and .ualong.
PR 12528.
1997-06-06 21:17:46 +00:00
Nick Clifton
f8a2144336 Merged in the changes from the armT-970328-branch. 1997-06-03 23:25:43 +00:00
Gavin Romig-Koch
5c6f5923c7 Add r3900 support. 1997-06-02 15:56:00 +00:00
Nick Clifton
46686c7839 Added support for storing ARM Procedure Calling Standard variant, and ARM
architecture variant in the BFD and COFF structures.  This goes towards
fixing PRs 11709 and 11326 and will integrate with future updates to LD and
GCC.
1997-05-14 17:00:43 +00:00
Fred Fish
af942f1dc2 Fix thinko in previous change. 1997-05-13 19:00:57 +00:00
Fred Fish
7b02bacd3d * config/tc-tic80.c (md_apply_fix): Check PC relative relocations
for overflow/underflow, only insert lower 15 bits into instruction.
1997-05-13 17:55:41 +00:00
Ian Lance Taylor
a5586bdc2f * config/tc-mips.c (macro): Handle constants for M_LI_D and
M_LI_DD.
	(mips_ip): For 'F', 'L', 'f', and 'l', generate a constant rather
	than an address if the floating point value looks sufficiently
	simple.
PR 12237.
1997-05-07 19:41:17 +00:00
Ian Lance Taylor
91951af61f * config/tc-i386.c (md_section_align): If a.out and BFD, force
section size to be aligned.
1997-05-06 16:19:04 +00:00
Ian Lance Taylor
454b0ccda0 * config/tc-i386.h (RegMMX): Define.
* config/tc-i386.c (pi): Check for all register types.
	(type_names): Add RegMMX.
	(md_assemble): Handle RegMMX.
1997-05-05 21:18:17 +00:00
Ian Lance Taylor
85ce56358f Tue Apr 29 20:23:10 1997 Jim Wilson <wilson@cygnus.com>
* config/tc-mips.c (nopic_need_relax): Add new parameter
	before_relaxing.  Use it when testing ecoff_extern_size.
	(load_address, macro, md_estimate_size_before_relax): Fix all
	callers.
1997-04-30 00:26:21 +00:00
Ian Lance Taylor
aff65ed99d Sat Apr 19 22:52:03 1997 Jim Wilson <wilson@cygnus.com>
* config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
	for all undefined symbols.
1997-04-20 02:53:22 +00:00