Commit graph

4135 commits

Author SHA1 Message Date
Ian Lance Taylor
be5fbc8388 x 1998-06-04 00:08:42 +00:00
Ian Lance Taylor
aa56747a9b Wed Jun 3 18:21:56 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
* config/tc-i386.c (END_STRING_AND_SAVE): Protect arguments of
	macros and enclose in do while(0).
	(RESTORE_END_STRING): Likewise.
	(md_assemble): Add one to printed operand number so we start
	from 1 not 0.  Add some more gettext invocations.
	(i386_operand): Fix `%%s' -> `%%%s'. Inc printed operand
	number here too.

	* config/tc-i386.h (WAIT_PREFIX, LOCKREP_PREFIX, ADDR_PREFIX,
	DATA_PREFIX, SEG_PREFIX): Define.
	* config/tc-i386.c (struct _i386_insn): Remove wait_prefix field.
	(check_prefix): Remove function.
	(add_prefix): New function.  Add prefix to i.prefix as well as
	doing checks.
	(md_assemble): Changes for add_prefix.	Remove hack for wait
	prefix, instead always output prefixes in fixed order.	Test
	for jcxz/loop when selecting between word & dword operations,
	and add address size prefix rather than operand size prefix.
	Remove operand -> address size hack when emitting jcxz/loop.
	(i386_operand): Remove O_Absent check as it's done in expr.
1998-06-03 23:11:04 +00:00
Ian Lance Taylor
ec1e6bb850 Wed Jun 3 18:21:56 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
* config/tc-i386.c (SCALE1_WHEN_NO_INDEX): Define.
	(ebp, esp): Remove static variables.
	(MATCH): Remove test for InOutPortReg.
	(i386_operand): Properly handle InOutPortReg here instead.
	Disallows `inb (%dx,2)', `inb %es:(%dx)' and `mov (%dx),%ax'
	(md_assemble): Simplify and correct modrm and sib generation.
	(i386_operand): Add warning for scale without index.
	Rewrite checks for valid base/index combinations.
1998-06-03 22:28:28 +00:00
Ian Lance Taylor
921d7728b0 * configure.in: Recognize m5200 as a cpu_type of m68k.
* aclocal.m4: Rebuild with current libtool.
	* configure: Rebuild.
1998-06-03 19:12:08 +00:00
Ian Lance Taylor
5b3fc700b4 Wed Jun 3 14:11:59 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* config/tc-m68k.c (md_estimate_size_before_relax): Add more calls
	to relaxable_symbol to prevent references to external symbol from
	being relaxed.

Wed Jun  3 14:10:36 1998  Ian Lance Taylor  <ian@cygnus.com>

	* config/tc-m68k.c (relaxable_symbol): If TARGET_OS is "elf", all
	symbols are relaxable.
1998-06-03 18:16:11 +00:00
Doug Evans
7f7d7bc009 * config/tc-dvp.c (md_begin): Change alignment of .DVP.ovlytab to 4.
(create_vuoverlay_section): Entries are 4 bytes not 8.
1998-06-03 17:27:56 +00:00
Catherine Moore
1e3fba9b78 config/tc-v850.c (md_begin): Don't create special sections by default. 1998-06-03 14:32:15 +00:00
Jeff Law
edc8f76e73 * config/tc-mips.c (macro): For div and udiv, close the
reorder block as soon as possible.
1998-06-02 20:54:35 +00:00
Ian Lance Taylor
936433a9fd From Matt Semersky <matts@scd.hp.com>:
* macro.c (macro_mri_mode): New function.
	* macro.h (macro_mri_mode): Declare.
	* read.c (s_mri): Call macro_mri_mode when switching in and out of
	MRI mode.
1998-06-02 19:39:45 +00:00
Ian Lance Taylor
c7b21300a7 Tue Jun 2 15:08:36 1998 Geoff Keating <geoffk@ozemail.com.au>
* gas/ppc/ppc.exp: Run simpshft test.
	* gas/ppc/simpshft.d: New file.
	* gas/ppc/simpshft.s: New file.
1998-06-02 19:09:38 +00:00
Ian Lance Taylor
f9997132de Tue Jun 2 13:32:22 1998 Klaus Kaempf <kkaempf@progis.de>
* config/tc-alpha.c (s_alpha_comm): Defer restoring character
	until after xstrdup in OBJ_EVAX case.
1998-06-02 17:35:03 +00:00
Ian Lance Taylor
d05d27a9d1 Tue Jun 2 13:32:22 1998 Klaus Kaempf <kkaempf@progis.de>
* config/tc-alpha.c (s_alpha_comm): Allow alignment parameter in
	OBJ_EVAX case.
1998-06-02 17:33:07 +00:00
Ian Lance Taylor
dfe2482a89 Tue Jun 2 13:11:13 1998 Pat Rankin <rankin@eql.caltech.edu>
* config/tc-vax.c (md_create_short_jump): Fix off by two bug in
	offset calculation.  Also, use VAX_BRW from vax-inst.h instead
	of hardcoded magic number.
	(md_create_long_jump): Use VAX_JMP and VAX_ABSOLUTE_MODE macros.
1998-06-02 17:15:00 +00:00
Doug Evans
c68b56efc5 * read.c (do_s_func): New function.
(s_func): Call it.
	* read.h (do_s_func): Add prototype.
	* config/tc-dvp.c (md_pseudo_table): Add .func/.endfunc.
	(s_dvp_func): New function.
1998-06-02 16:54:59 +00:00
Doug Evans
30596dfc4f * read.c (do_s_func): New function.
(s_func): Call it.
	* config/tc-dvp.c (md_pseudo_table): Add .func/.endfunc.
	(s_dvp_func): New function.
1998-06-02 16:54:20 +00:00
Doug Evans
83e207013b * read.c (s_func): Prepend `leading char' by default. 1998-06-02 16:26:43 +00:00
Jeff Law
be294de6b3 * config/tc-mips.c (hilo_interlocks): The r5900 has HILO interlocks. 1998-06-01 23:07:21 +00:00
Jeff Law
773cf1a24b * gas/mips/break5900.d: Update after interlock changes.
* gas/mips/mips.exp: The r5900 has ilocks and gpr_ilocks.
        * gas/mips/div-ilocks.d: Handle both "break" instruction variants.
        * gas/mips/{div.d, mul-ilocks.d, mul.d}: Likewise.
1998-06-01 23:04:50 +00:00
Doug Evans
98e3a972c1 * gas/all/gas.exp: Don't run `align' test for dvp-*-*.
* gas/macros/macros.exp: Don't run `semi' test for dvp-*-*.
	* gas/dvp/align.[sd]: New testcase.
	* gas/dvp/semi.[sd]: New testcase.
1998-06-01 22:11:21 +00:00
Doug Evans
7908eab788 Don't run the `semi' testcase if dvp-*-*. 1998-06-01 22:09:48 +00:00
Doug Evans
99b7e42e1c Don't run the `align' testcase if dvp-*-*. 1998-06-01 22:09:19 +00:00
Doug Evans
27f6715d30 * config/tc-m32r.c (m32r_do_align): Only fill code sections with
nops if fill pattern not specified.
1998-06-01 19:48:48 +00:00
Ian Lance Taylor
8b398c5354 From Andrew Crabtree <andrewc@typhoon.rose.hp.com>:
* config/te-go32.h (TE_GO32): Define.
	* config/tc-i386.h (LOCAL_LABEL): Don't define if TE_GO32.
1998-06-01 18:10:16 +00:00
Doug Evans
082a41fc7c Implement .func/.endfunc pseudo-ops.
* read.h (stabs_generate_asm_func,stabs_generate_asm_endfunc): Declare.
	(s_func): Declare.
	* read.c (potable): Add .func,.endfunc.
	(s_func): New function.
	* stabs.c (stabs_generate_asm_func,stabs_generate_asm_endfunc): New
	functions.
	(in_doc_func_p,current_function_label): New static globals.
	(stabs_generate_asm_lineno): Emit function relative stabs if in .func.
1998-06-01 04:44:48 +00:00
Doug Evans
71c2d792ef Add docs for .func/.endfunc. 1998-06-01 04:40:53 +00:00
Doug Evans
dbef2779c0 * config/tc-dvp.c (create_vuoverlay_section): Set SEC_CODE flag for
overlay sections.
1998-06-01 03:53:57 +00:00
Doug Evans
7a70182554 (create_vuoverlay_section): Set SEC_CODE flag for overlay sections. 1998-06-01 03:53:32 +00:00
Doug Evans
c3b51879b3 * config/tc-dvp.h (ELF_TC_SPECIAL_SECTIONS): Delete .vuoverlay_table.
(VUOVERLAY_SECTION_PREFIX,VUOVERLAY_TABLE_SECTION_NAME): Delete.
	* config/tc-dvp.c (vuoverlay_string_section): New static global.
	(md_begin): Create overlay string section.
	(create_vuoverlay_section): Put section name in overlay string section.
	Put string's offset in overlay table entry.
1998-05-31 22:46:56 +00:00
Ian Lance Taylor
04e6b63b72 * config/tc-a29k.h (WORKING_DOT_WORD): Define.
* config/tc-alpha.h (WORKING_DOT_WORD): Define.
	* config/tc-arm.h (WORKING_DOT_WORD): Define.
	* config/tc-h8300.h (WORKING_DOT_WORD): Define.
	* config/tc-h8500.h (WORKING_DOT_WORD): Define.
	* config/tc-hppa.h (WORKING_DOT_WORD): Define.
	* config/tc-i860.h (WORKING_DOT_WORD): Define.
	* config/tc-i960.h (WORKING_DOT_WORD): Define.
	* config/tc-tic30.h (WORKING_DOT_WORD): Define.
	* config/tc-w65.h (WORKING_DOT_WORD): Define.
	* config/tc-z8k.h (WORKING_DOT_WORD): Define.
	* config/tc-a29k.c: Don't define md_short_jump_size,
 	md_long_jump_size, md_create_short_jump or md_create_long_jump.
	* config/tc-alpha.c: Likewise.
	* config/tc-alpha.h: Likewise.
	* config/tc-arm.c: Likewise.
	* config/tc-h8300.c: Likewise.
	* config/tc-h8500.c: Likewise.
	* config/tc-hppa.c: Likewise.
	* config/tc-i860.c: Likewise.
	* config/tc-i960.c: Likewise.
	* config/tc-ppc.c: Likewise.
	* config/tc-sh.c: Likewise.
	* config/tc-sparc.h: Likewise.
	* config/tc-tic30.c: Likewise.
	* config/tc-w65.c: Likewise.
	* config/tc-z8k.c: Likewise.
1998-05-29 22:25:56 +00:00
Ian Lance Taylor
f668d839e5 tipo 1998-05-29 21:37:44 +00:00
Ian Lance Taylor
ca16ec5c81 * symbols.c (symbol_find_base): Fix case insensitive symbol name
code.  From Chris Moller <moller@bops.com>.
1998-05-29 21:22:00 +00:00
Ian Lance Taylor
1a20177a13 Fri May 29 16:03:26 1998 Pat Rankin <rankin@eql.caltech.edu>
* config/tc-vax.c (_): Delete this macro used for placeholder
	values in vax_operand_width_size; it conflicts with the _() macro
	used for internationalization.
1998-05-29 20:08:25 +00:00
Ian Lance Taylor
4ea4905324 Based on patch from Klaus Kaempf <kkaempf@progis.de>:
* struc-symbol.h (struct broken_word): Add seg and subseg fields.
	* read.c (emit_expr): Initialize seg and subseg fields of a new
	broken word.
	* write.c (write_object_file): Switch to the appropriate segment
	and subsegment when processing a broken word.
1998-05-29 19:59:55 +00:00
Ian Lance Taylor
05a43d26fe * gas/mips/mips.exp: Adjust ilocks initialization to match current
assembler defaults more closely.
1998-05-29 19:27:54 +00:00
Ian Lance Taylor
dcb76edbb8 * config/tc-m68k.c (mri_assemble): New static function.
(build_mri_control_operand): Call mri_assemble rather than
	md_assemble.
	(s_mri_else, s_mri_break, s_mri_next, s_mri_for): Likewise.
	(s_mri_endf, s_mri_endw): Likewise.
1998-05-29 17:48:03 +00:00
Ian Lance Taylor
1793f86d75 * gas/sh/fp.s: Remove ftst/nan. The assembler no longer supports
the instruction.
	* gas/sh/basic.exp: Adjust accordingly.
1998-05-29 16:12:31 +00:00
Doug Evans
5dccb8b0f4 more attempts to handle `*' as mpg address 1998-05-29 01:08:08 +00:00
Doug Evans
dfa96dc4df tweak last entry 1998-05-29 01:06:37 +00:00
Doug Evans
c371a664d5 resolve mpgloc_sym in `*' case 1998-05-29 00:39:03 +00:00
Doug Evans
1554baf3cb * config/tc-dvp.h (ELF_TC_SPECIAL_SECTIONS): Add .vuoverlay_table.
(dvp_frob_file): Declare.
	(tc_frob_file): Define.
	(VUOVERLAY_SECTION_PREFIX,VUOVERLAY_TABLE_SECTION_NAME): New macros.
	* config/tc-dvp.c (VUOVERLAY_START_PREFIX): New macro.
	(vuoverlay_section_name,create_vuoverlay_section): New functions.
	(vuoverlay_section,vuoverlay_table_section): New static globals.
	(ovlysym_table): New static global.
	(md_begin): Create .vuoverlay_table section.
	(assemble_vif): Call create_vuoverlay_section for each mpg.
	(dvp_frob_label): Record vu labels in ovlysym_table for later
	movement from absolute section to their overlay section.
	(dvp_frob_file): New function.
	(md_apply_fix3): For 8/16/32/64 bit relocs, only process if fx_done.
1998-05-28 23:29:19 +00:00
Doug Evans
899c697bfe * config/tc-dvp.c (assemble_one_insn): Parse suffix operands
even when missing in input string.
Forgot to check ChangeLog entry in.
1998-05-28 23:23:14 +00:00
Ian Lance Taylor
8a9c148140 * config/tc-sparc.c (md_show_usage): Add \n\ to new string. 1998-05-27 15:17:07 +00:00
Stan Cox
fc23c14efc sparclite 86x big endian instruction / little endian data support. 1998-05-27 01:06:20 +00:00
Doug Evans
b9cafcf462 * gas/m32r/allinsn.d: Handle 64 bit bfd_vma.
* gas/m32r/uppercase.d: Likewise.
	* gas/m32r/m32rx.d: Likewise.
1998-05-22 22:58:08 +00:00
Doug Evans
96ecb5a1e8 * gas/dvp/upper-2.[sd]: Test absent dest -> xyzw. 1998-05-21 22:16:04 +00:00
Nick Clifton
9c92d37083 Fixes to allow testsuite to pass (modulo problems with cofftag). 1998-05-21 22:04:56 +00:00
Nick Clifton
5519850dea Fix for PR15642 - apply label alignment adjustment to all labels at the given address. 1998-05-20 00:03:01 +00:00
Ian Lance Taylor
200b86ea4f * gas/mips/mips16.d: Correct to reflect bug fix to disassembler. 1998-05-19 22:17:38 +00:00
Catherine Moore
7ccd2d11c4 *** empty log message *** 1998-05-19 13:20:47 +00:00
Catherine Moore
a5002978e0 Use number_to_chars_bigendian and number_to_chars_littleendian to
write data in sparc_handle_align.
1998-05-19 13:03:09 +00:00
Nick Clifton
59bb547b06 Fix PR 15948 1998-05-19 00:12:10 +00:00
Doug Evans
93624d0b55 * write.c (fixup_segment): Change "segment" to "section" in
error message.
1998-05-18 23:06:10 +00:00
Michael Meissner
e13d507e0f Change subtraction of two symbols message; At end of file flush any debug_sym links 1998-05-18 20:56:45 +00:00
Jeff Law
1190b223b8 * config/tc-mips.c (validate_mips_insn): Handle ';' opcode completer.
(mips_ip): Likewise.
1998-05-18 17:51:56 +00:00
Frank Ch. Eigler
1cc17500c3 * Added tests for R5900 mult1 instructions. 1998-05-18 17:48:38 +00:00
Jeff Law
cb6a332528 * vu0.s: Test vopmula/vopmsub with and without opcode
completer.
        * vu0.d: Corresponding changes.
1998-05-18 17:48:37 +00:00
Nick Clifton
98c5cd5a5a Changed command line switch from --m32rx-enable-special to --hidden
Removed documentation about the switch.
1998-05-18 17:34:24 +00:00
Frank Ch. Eigler
d9c2c0c569 * Followup for SCEI PR 15853.
Mon May 18 12:37:38 1998  Frank Ch. Eigler  <fche@cygnus.com>
	* config/tc-mips.c (macro): For R5900, use "B" operand format for
 	"break" instructions generated in macro (div etc.) instructions.
1998-05-18 13:33:26 +00:00
Michael Meissner
99fcd8a007 Improve error message 1998-05-18 13:33:25 +00:00
Frank Ch. Eigler
838aec1918 * Various MIPS test case tweaks.
Mon May 18 13:11:45 1998  Frank Ch. Eigler  <fche@cygnus.com>
	* gas/mips/{div,ld,mul}.d: Add assembler -mcpu= flag to match
 	disassembler.
start-sanitize-r5900
	* gas/mips/break5900.[sd]: Test that break instructions generated
 	in div/etc. macro instructions are of 20-bit variety for R5900.
end-sanitize-r5900
1998-05-18 10:15:38 +00:00
Gavin Romig-Koch
312bba6754 add ld-ilocks-addr32.d 1998-05-15 19:39:54 +00:00
Gavin Romig-Koch
11ba9527b6 * gas/mips/mips.exp: Distinguish chains with 32-bit addresses.
* gas/mips/ld-ilocks-addr32.d : New.
1998-05-15 18:53:56 +00:00
Nick Clifton
ca6a899da7 Change command line switch fron --enable-special to --m32rx-enable-special 1998-05-14 20:54:47 +00:00
Doug Evans
472de7df0d * gas/m32r/uppercase.[sd]: Test for HIGH,SHIGH,LOW,SDA. 1998-05-14 00:02:36 +00:00
Doug Evans
7c62987898 * config/tc-m32r.c (warn_unmatched_high): New static local.
(OPTION_WARN_PARALLEL): Rename from OPTION_WARN.
	(OPTION_NO_WARN_PARALLEL): Rename from OPTION_NO_WARN.
	(md_longopts): Recognize --{no-,}warn-unmatched-high.
	(md_parse_option): Likewise.
	(md_show_usage): Likewise.
	(m32r_frob_file): Likewise.
1998-05-13 22:10:12 +00:00
Doug Evans
1fd8bfbda5 * gas/m32r/m32rx.d: Pass --enable-special to gas. 1998-05-13 22:07:23 +00:00
Doug Evans
95d33c131a * read.c (generate_file_debug,generate_lineno_debug): New functions.
(read_a_source_file): Call them.
	* read.h (stabs_generate_asm_file): Declare.
	* stabs.c (stabs_generate_asm_file): New function.
	(generate_asm_file): New function.
	(stabs_generate_asm_lineno): Move file name handling into
	generate_asm_file.
1998-05-13 17:19:22 +00:00
Nick Clifton
32c2be7633 Add --enable-special command line switch. 1998-05-12 20:38:36 +00:00
Richard Henderson
ab26b0497a PR 15889 was also in the previous tc-d30v.c commit, but
missed bringing over the log message from the branch.
1998-05-12 19:06:14 +00:00
Richard Henderson
7d515759c9 * config/tc-d30v.c (cur_mul32_p, prev_mul32_p): Make static.
(d30v_current_align, d30v_current_align_seg): New variables.
        (d30v_last_label): New variable.
        (d30v_align, s_d30v_align, s_d30v_text): New functions.
        (s_d30v_data, s_d30v_section): Likewise.
        (md_pseudo_table): Call them.
        (md_begin): Initialize d30v_current_align_seg.
        (md_assemble): Call d30v_align when needed by known current alignment.
        (d30v_frob_label, d30v_cons_align): New functions.
        * config/tc-d30v.h (md_do_align): Remove.
        (tc_frob_label): Call d30v_frob_label.
        (md_cons_align): New.

PR 15642
1998-05-12 19:04:29 +00:00
Doug Evans
cb74aaa54c * config/tc-dvp.c (md_begin): Set type of output file to mips:r5900. 1998-05-11 19:49:29 +00:00
Frank Ch. Eigler
4f6f7a3a1c * New test cases for MIPS R5900-specific 20-bit break, at customer request. 1998-05-11 17:11:54 +00:00
Jeff Law
c8f90c731e * po/Make-in (install-info): New target. 1998-05-11 04:36:09 +00:00
Doug Evans
d67094c621 * Makefile.am: Update with `make dep-am'.
(HFILES): Add cgen.h.
	(cgen.o): Depend on cgen.h.
	* Makefile.in: Regenerate.
1998-05-07 23:40:41 +00:00
Jeff Law
d41e1fba52 * config/tc-mn10200.c (md_assemble): Handle "bra" just like "jmp"
instructions.
        * config/tc-mn10300.c (md_assemble): Likewise.
1998-05-07 21:50:14 +00:00
Doug Evans
f19f301d0c * cgen.c (cgen_md_apply_fix3): Don't pass newline to as_warn_where. 1998-05-07 18:47:57 +00:00
Frank Ch. Eigler
1d99416d38 * Keep new test cases ({trap,break}20.[sd]). 1998-05-07 17:51:51 +00:00
Frank Ch. Eigler
a5c3c53c34 * Converted conditional-trap MIPS opcodes to extra-operand variety also.
* Bonus test cases to confirm behavior.

[ChangeLog]
Thu May  7 12:50:33 1998  Frank Ch. Eigler  <fche@cygnus.com>

	* config/tc-mips.c (validate_mips_insn): Removed hack
	for previously inaccessible bitfields in some INSN_TRAP
	instructions.

[testsuite/ChangeLog]

Thu May  7 13:05:25 1998  Frank Ch. Eigler  <fche@cygnus.com>

	* gas/mips/break20.[sd]: New tests for 20-bit operand break and
 	sddbp instructions.
	* gas/mips/trap20.[sd]: New tests for 20-bit operand trap
 	instructions.
	* gas/mips/mips.exp: Run them.
1998-05-07 17:45:24 +00:00
Ian Lance Taylor
82df8834c9 Thu May 7 13:20:56 1998 Anders Blomdell <anders.blomdell@control.lth.se>
* gasp.c (grab_label): Permit a label to be a preprocessor
	variable by permitting a label to start with a backslash.
1998-05-07 17:22:30 +00:00
Frank Ch. Eigler
40f0c90498 * Fixes for d30v PR 15627.
* First batch of fixes for sky PR 15853 (20-bit break/sdbbp)
* Fixes for d30v test suite.
1998-05-07 15:27:13 +00:00
Michael Meissner
b70d53742c Fix typo 1998-05-07 11:48:27 +00:00
Doug Evans
defc70bf2b * cgen.h: New file.
* cgen.c: Include it.
	(MAX_FIXUPS): Renamed to CGEN_MAX_FIXUPS.
	(cgen_asm_finish_insn): Result is now void.  New arg `result'.
	All callers updated.
	* config/tc-m32r.c: Include cgen.h.
	(m23r_insn): New members num_fixups,fixups.
	(assemble_parallel_insn): Initialize debug_sym_link for each insn.
	(md_assemble): Simplify code to pack two insns in parallel.
	When swapping two insns, update their fixups.
1998-05-07 09:31:42 +00:00
Doug Evans
2ac0ca44d3 * config/tc-dvp.c: Delete inclusion of "sysdep.h". 1998-05-06 23:30:32 +00:00
Jeff Law
8be4960fe8 * config/tc-hppa.c (md_apply_fix): Slightly rework some code
to avoid compiler warning.
1998-05-06 22:28:53 +00:00
Ian Lance Taylor
10779648f8 Wed May 6 15:26:34 1998 Klaus Kaempf <kkaempf@progis.de>
* makefile.vms: Run dec c with /nodebug.  Pass CC value when
	calling make.
1998-05-06 19:32:31 +00:00
Ian Lance Taylor
21e2eeaaf1 Wed May 6 15:26:34 1998 Klaus Kaempf <kkaempf@progis.de>
* makefile.vms (OBJS): Add ehopt.obj
1998-05-06 19:27:05 +00:00
Ian Lance Taylor
6a1421c662 Wed May 6 15:11:12 1998 Klaus Kaempf <kkaempf@progis.de>
* doc/c-vax.texi: Correct and extend vax/vms documentation.
1998-05-06 19:12:59 +00:00
Richard Henderson
daaef8f8df * config/tc-d30v.c (do_assemble): Accept a new parameter requesting
a short format insn.
	(md_assemble): Set it for explicitly packed insns.

PR 14601
1998-05-06 18:56:08 +00:00
Ian Lance Taylor
ee66b572a8 fix xgettext invocation 1998-05-06 18:16:28 +00:00
Gavin Romig-Koch
6ef925e86e * config/tc-mips.c (macro,macro2): Implement
M_DMULO_I, M_MULO_I, M_DMULOU_I, and M_MULOU_I.
1998-05-05 17:12:41 +00:00
Ian Lance Taylor
c8f28d295d Mon May 4 17:49:14 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* config/tc-m68k.h (TC_RELOC_RTSYM_LOC_FIXUP): Changed to keep
	relocations against globally visible symbols.
	* config/tc-m68k.c (relaxable_symbol): New macro.
	(m68k_ip, md_estimate_size_before_relax): Use it.
	(tc_m68k_fix_adjustable): Also handle weak symbols.
1998-05-04 21:53:49 +00:00
Ian Lance Taylor
d4931e7801 remove unnecessary blank line 1998-05-04 21:28:38 +00:00
Ian Lance Taylor
f3d491b171 * config/tc-i386.h (TC_RELOC_RTSYM_LOC_FIXUP): Keep relocs for all
references to externally visible symbols.
	* config/tc-i386.c (md_apply_fix3): When OBJ_ELF, don't add the
 	values in twice for a PC relative reloc if the symbol is
 	externally defined.
1998-05-04 21:10:49 +00:00
Ian Lance Taylor
3ccd41aef9 * config/tc-sparc.h (tc_fix_adjustable) [OBJ_AOUT]: When PIC,
don't adjust a PC relative reloc against an externally visible
	symbol.
	* config/tc-sparc.c (md_apply_fix3): When generating a.out PIC,
	for a PC relative fixup against an externally visible defined
	symbol, arrange to store object file and addend values as though
	the symbol were not defined.
	(tc_gen_reloc): Likewise.
1998-05-04 20:16:35 +00:00
Fred Fish
7f77acfddb * read.c (sizeof_leb128): Referenced externally by write.c so
don't inline.
1998-05-01 00:24:17 +00:00
Michael Meissner
5501e8ba63 Add .debugsym label which does not force a NOP after a short instruction 1998-04-29 19:51:01 +00:00
Tom Tromey
2614063dce * as.c (main): Conditionally call setlocale.
* gasp.c (main): Likewise.
	* asintl.h: Include <locale.h> if HAVE_LOCALE_H.
	(LC_MESSAGES): Now can be defined even when ENABLE_NLS.
1998-04-29 02:51:43 +00:00
Tom Tromey
5873cbec2b Fixed xgettext invocation in .Sanitize files 1998-04-29 00:11:07 +00:00
Frank Ch. Eigler
231cd2a979 * Reminded to keep lineno.d/s test. 1998-04-28 22:49:00 +00:00
Frank Ch. Eigler
3d7def9fb5 * Typo.
Tue Apr 28 18:33:23 1998  Frank Ch. Eigler  <fche@cygnus.com>

	* config/tc-d30v.c (md_show_usage): Correct gettext typo.
1998-04-28 22:36:10 +00:00
Frank Ch. Eigler
4b9180d916 * Fixes for gdb/15371 part 1: assembly source line numbering.
[ChangeLog]

Tue Apr 28 11:35:56 1998  Frank Ch. Eigler  <fche@cygnus.com>

	* ecoff.c (ecoff_build_lineno): Do not use dummy first_lineno
	for line numbers for assembly source.

[testsuite/ChangeLog]

Tue Apr 28 16:38:34 1998  Frank Ch. Eigler  <fche@cygnus.com>

	* gas/mips/lineno.[sd]: Assembly source line number test.
	* gas/mips/mips.exp: Added lineno test.
1998-04-28 20:48:30 +00:00
Ian Lance Taylor
c0fde1019f * config/tc-hppa.c: Change all calls to bzero to use memset.
(pa_ip): Add cast to avoid warning.
	(tc_gen_reloc, md_apply_fix): Likewise.
	(pa_find_space_by_number): Likewise.
	(hppa_force_relocation): Likewise.
	(pa_block): Change i to unsigned int.
	* config/obj-som.h (obj_som_copyright): Declare.
1998-04-28 16:44:24 +00:00
Ian Lance Taylor
5e04ff140d remove PR numbers 1998-04-28 02:31:15 +00:00
Ian Lance Taylor
b6177e139c * configure.in: Change version number to 2.9.4
* configure: Rebuild.
1998-04-27 19:59:14 +00:00
Doug Evans
f2980bb478 * cgen.c (cgen_asm_finish_insn): New arg relax_p. All callers updated.
* config/tc-m32r.c (assemble_parallel_insn): No need to try
	non-relaxable variant any more.  Simplify test for nop insn.
	(md_assemble): Only scan operands if m32rx.  Set orig_insn in case
	scan of operands yields an insn different from original (e.g. a macro).
	Fix call to can_make_parallel.
1998-04-27 19:36:06 +00:00
Ian Lance Taylor
567a6d7d95 * ecoff.h: Change symbolS in function declaration to struct
symbol.
1998-04-27 19:17:00 +00:00
Ian Lance Taylor
25b5beb81a * config/tc-sh.c (parse_reg): Add casts to avoid warnings.
(md_convert_frag): Fix i18n typo.
1998-04-26 17:45:34 +00:00
Richard Henderson
94fa695eca * ecoff.c (ecoff_get_cur_proc_sym): New function.
* ecoff.h: Protoype it.
        * config/tc-alpha.c [ELF] (s_alpha_prologue): New function.
        [EVAX] (s_alpha_prologue): Delete.
        (md_pseudo_table): Update.
1998-04-26 03:15:37 +00:00
Ian Lance Taylor
ad7302a081 * config/tc-i960.c (md_assemble): Change bp_error_msg from static
array to local pointer.
	(get_args, parse_expr): Add casts to avoid warnings.
1998-04-25 18:02:12 +00:00
Ian Lance Taylor
0917e2cbea Fri Apr 24 12:47:42 1998 Philippe De Muyter <phdm@macqel.be>
* read.c (s_set): Cast xmalloc return value to fragS *.
	* config/tc-m68k.c (m68k_ip): Function made static to match
	previous forward declaration.
	(insert_reg, init_regtable, md_convert_frag_1): Likewise.
1998-04-24 16:49:58 +00:00
Nick Clifton
682639a81f miseed from previous checkin 1998-04-24 16:42:08 +00:00
Nick Clifton
d0023d7e18 Add initernationalisation macros to error strings 1998-04-24 16:28:25 +00:00
Ian Lance Taylor
755b5acaac * config/tc-ppc.c (ppc_fix_adjustable): Correct test of whether a
reloc is in the TOC csect.
	(md_apply_fix3): Correct gettext typo.
1998-04-23 23:26:20 +00:00
Nick Clifton
8efdd18035 Fix bug compiling math/k_standard.c 1998-04-23 22:00:45 +00:00
Doug Evans
cc33746dfc * config/tc-dvp.c (dvp_frob_label): Don't emit _$ versions of
local labels ($ prefix).
1998-04-23 18:13:30 +00:00
Tom Tromey
d6f3da9bc4 If xgettext fails, make Sanitize fail 1998-04-23 05:17:30 +00:00
Tom Tromey
3d96e9b4cf .Sanitize now re-computes gettext-related files 1998-04-22 22:40:45 +00:00
Tom Tromey
1158ffaf2a * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir). 1998-04-22 22:34:05 +00:00
Ian Lance Taylor
8081c2be07 * config/tc-i386.c (md_assemble): Print operand number rather than
using ordinal_names.
	(i386_operand): Likewise.
1998-04-22 18:54:39 +00:00
Ian Lance Taylor
e33bfde75c fix sanitization for gettext changes 1998-04-22 16:18:07 +00:00
Ian Lance Taylor
d173ccbcbb remove obsolete sanitization 1998-04-22 16:12:09 +00:00
Ian Lance Taylor
8c9272025e fix indentation in comment 1998-04-22 16:05:56 +00:00
Tom Tromey
1a9136e225 * Makefile.am (INTLLIBS): Define to work around apparent automake
bug.
	All Makefiles: Regenerated.
1998-04-22 07:01:27 +00:00
Tom Tromey
48401fcf8c * Many files: Added gettext invocations around user-visible
strings.
	* acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
	HAVE_LC_MESSAGES): Define.
	* dep-in.sed: Added asintl.h.
	* po/Make-in: New file.
	* gasp.c (main): Call setlocale, bindtextdomain, and textdomain.
	Include "asintl.h".
	* read.c (Z_): Renamed from `_'.
	* Makefile.am (SUBDIRS): Added po.
	(POTFILES): new macro.
	(po/POTFILES.in): New target.
	($(OBJS)): Added asintl.h.
	(HFILES): Likewise.
	(INCLUDES): Added -DLOCALEDIR, -I$(top_srcdir)/../intl.
	(as_new_LDADD): Added $(INTLLIBS).
	(as_new_DEPENDENCIES): Added $(INTLDEPS).
	(gasp_new_LDADD): Added $(INTLLIBS).
	(gasp_new_DEPENDENCIES): New macro.
	* configure, aclocal.m4: Rebuilt.
	* configure.in: Call CY_GNU_GETTEXT.  Generate po/Makefile.in and
	po/Makefile.
	(ALL_LINGUAS): Define.
	* macro.c: Include "asintl.h".
	* as.c (main): Call setlocale, bindtextdomain, and textdomain.
	* as.h: Include "asintl.h".
	* config/tc-i386.c (ordinal_names): Removed.
	(md_assemble): Changed error text to avoid ordinal_names.
	(i386_operand): Likewise.
	(reloc): Added as_bad to avoid i18n problems.
	(tc_gen_reloc): Likewise.
	* config/tc-arm.c (bad_args): Now a #define.
	(bad_pc): Likewise.
	* config/obj-vms.c (VMS_stab_parse): Changed type of
	`long_const_msg'.
	(global_symbol_directory): Unified strings to avoid i18n
	problems.
	* config/tc-m68k.c (get_reloc_code): Added some as_bad calls to
	avoid i18n problems.
	* config/tc-ns32k.c (reloc): Added as_bad to avoid i18n problems.
	* config/tc-ppc.c (md_apply_fix3): Added as_bad_where to avoid
	i18n problems.
	* config/tc-sh.c (md_convert_frag): Added as_bad to avoid i18n
	problems.
start-sanitize-v850
	* config/tc-v850.c (md_assemble): Changed C++ comment into C
	comment.
end-sanitize-v850
	* config/tc-vax.c (md_assemble): Added as_warn to avoid i18n
	problems.
	* as.c (print_version_id): Added an fprintf to avoid i18n
	problems.
	* cond.c (cond_finish_check): Added as_bad call to avoid i18n
	problems.
	* expr.c (expr): Added as_warn call to avoid i18n problems.
	* messages.c (as_assert): Changed code to avoid i18n problems.
	(as_abort): Likewise.
	* read.c (pseudo_set): Added as_bad call to avoid i18n problems.
	(s_space): Likewise.
	* po/Make-in, po/POTFILES.in, po/gas.pot: New files.
1998-04-22 06:10:03 +00:00
Ian Lance Taylor
4498e3d641 Tue Apr 21 17:01:22 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
* config/tc-i386.c (check_prefix): New static function, split out
	from md_assemble.
	(struct _i386_insn): Add wait_prefix field.
	(md_assemble): Remove wait_prefix local variable.  Use
	check_prefix when adding a prefix.

	* config/tc-i386.c (current_templates): New static variable.
	(md_assemble): Remove current_templates local variable.
	(md_assemble, i386_operand): Improve error and warning messages in
	many places.  Add RESTORE_END_STRING in many places before error
	return.  Clarify some comments.

	* config/tc-i386.c (struct _i386_insn): Change seg field to a two
	element array.
	(md_assemble): Parse string instruction operands, looking for
	segment override prefixes.  Check for invalid segment prefixes on
	string instruction.
	(i386_operand): i.seg[] and max mem_operand changes for string
	insns.
	* config/tc-i386.h (EsSeg): Define.

	* config/tc-i386.h (regKludge): Define.
	(iclrKludge, imulKludge): Don't define.
	* config/tc-i386.c (md_assemble): Merge imulKludge and iclrKludge
	code.  Move ReverseRegRegmem fudges into Modrm case.  Reorder
	opcode_modifier checks to look for more common cases first.  Add
	default_seg for IsString case.
1998-04-21 21:08:39 +00:00
Ian Lance Taylor
b2bb41f625 * configure.in: Call AM_PROG_LEX rather than AC_PROG_LEX and
AC_DECL_YYTEXT.
	* configure: Rebuild with new automake and libtool.
	* aclocal.m4, Makefile.in: Likewise.

	* doc/Makefile.am (as.dvi): New target.
	* doc/Makefile.in: Rebuild.
1998-04-21 20:27:16 +00:00
Stan Cox
307edcc051 Added sparc86x support. 1998-04-18 18:12:20 +00:00
Jeff Law
9067435521 * config/tc-mips.c (mips_ip): Note when we use get match on
the full instruction name.
        (mips_ip): For '&' DEST completer handling, if we got a full match
        then the DEST completer is implicitly .wxyz.
1998-04-18 07:20:01 +00:00
Doug Evans
dd7facebb7 * config/tc-dvp.c
(vif_insn_type): New function.
	(md_apply_fix3): Don't validate user specified length if unpack insn
	and wl > cl.
1998-04-16 22:07:22 +00:00
Doug Evans
a675646810 (vif_insn_type): New function.
(md_apply_fix3): Don't validate user specified length if unpack insn
	and wl > cl.
1998-04-16 22:07:02 +00:00
Doug Evans
40f3c6f84f * config/tc-dvp.c (unpackloc_sym): Delete. All uses deleted. 1998-04-16 18:51:58 +00:00
Doug Evans
a5f7c460a1 * gas/testsuite/dvp/{vif-1.[sd],vif-3.s}: Update, '*' no longer
supported as unpack address.
1998-04-16 18:27:15 +00:00
Richard Henderson
c02e446b0b * symbols.c (resolve_symbol_value) [O_symbol]: Also store the symbol
back into the expression to handle add/sub simplification correctly.

PR 15634
1998-04-15 22:34:05 +00:00
Frank Ch. Eigler
65a172239d * Customer specs changed one R5900 COP2 instruction bit-pattern.
[ChangeLog]

Wed Apr 15 10:35:59 1998  Frank Ch. Eigler <fche@cygnus.com>

        * config/tc-mips.c (mips_ip): Specs changed for
	VCALLMSR instruction.


[testsuite/ChangeLog]

Wed Apr 15 13:08:30 1998  Frank Ch. Eigler <fche.cygnus.com>

        * gas/mips/vu0.s: Updated test case for changed specs of
	VCALLMSR instruction.
        * gas/mips/vu0.d: Corresponding change.
1998-04-15 17:37:50 +00:00
Catherine Moore
2cf51495fa Remove 4300 and 5400 from hilo_interlocks definition. 1998-04-15 14:11:33 +00:00
Nick Clifton
27aa0c7e55 Added support for undocumented variant of 'msr <psrf>, #<n>' instruction. 1998-04-13 23:55:09 +00:00
Doug Evans
7ebb61af92 * config/tc-dvp.c (md_apply_fix3): Mark fixup for mpg loaded vu
branch error as being done so we don't try to emit a reloc.
1998-04-13 19:22:26 +00:00
Doug Evans
c94a25c228 tweak comment regarding state transitions 1998-04-10 18:34:49 +00:00
Doug Evans
07b2042891 * config/tc-dvp.c (VU_LABEL_PREFIX): New macro.
(compute_mpgloc): New function.
	(eval_expr): New arg `cpu'.  All callers updated.
	(non_vu_insn_seen_p): New static global.
	(RELAX_{MPG,DIRECT,VU,ENCODE,GROWTH,DONE_}): New macros.
	(struct dvp_fixup): New member `cpu'.
	(assemble_one_insn): New args init_fixup_count, fixup_offset.
	All callers updated.
	(md_assemble): Set non_vu_insn_seen_p as appropriate.
	(assemble_vif): Set `cpu' field of fixup.
	Clean up calls to frag_var.  Recorded mpgloc is now in bytes.
	(assemble_vu_insn): Delete, contents moved into ...
	(assemble_vu): ... here.  Don't record fixups until after parsing
	both upper and lower insns.  If branch insn inside mpg, properly
	compute target address.
	(dvp_frob_label): Create copies of vu labels inside mpg's.
	(dvp_relax_frag): Clean up.
	(md_convert_frag): Ditto.
	(md_apply_fix3): Signal error if mpg embedded vu code has branch
	to undefined label (not currently supported).
	(eval_expr): New arg `cpu'.  All callers updated.
	(insert_operand_final): Convert mpgloc from bytes to dwords.
	(s_endmpg): Use compute_mpgloc to update $.mpgloc.
	(s_state): If switching to vu state, initialize $.mpgloc.
1998-04-10 01:37:00 +00:00
Doug Evans
e15073a2ff * expr.h (expr_build_dot): Declare.
* expr.c (expr_build_dot): New function.
1998-04-09 17:43:37 +00:00
Doug Evans
a461558bba * symbols.c (max_indent_level): New global.
(print_symbol_value_1): Use it.
1998-04-09 17:32:27 +00:00
Jeff Law
f1b8b0f4f1 * gas/testsuite/all/gas.exp: No longer expect failures for
difference of undefined symbols on mn10x00 targets.
1998-04-09 00:46:37 +00:00
Doug Evans
8dc11c35a7 * symbols.c (print_binary): New function.
(print_expr_1): Call it.
1998-04-08 23:18:54 +00:00
Doug Evans
56cf426b6c * gas/dvp/br-2.[sd]: New testcase.
* gas/dvp/dvp.exp: Run them.
1998-04-08 22:53:37 +00:00
Doug Evans
bfb27620b9 * config/tc-dvp.c (md_convert_frag): Fix thinko. 1998-04-07 19:26:40 +00:00
Doug Evans
348738314c * gas/dvp/vif-4.[sd]: New testcase. 1998-04-07 03:25:32 +00:00
Doug Evans
a9589a2ca7 * config/tc-dvp.c (assemble_vif): 0 is a valid length value (= max+1).
(install_vif_length): 0 is a valid length value (= max+1).
1998-04-07 03:22:22 +00:00
Doug Evans
b25ce8e1fa * config/tc-dvp.c (assemble_vif): Watch for macro insns. 1998-04-07 00:12:27 +00:00
Doug Evans
8632fe493a * gas/dvp/vif-3.[sd]: New testcase.
* gas/dvp/dvp.exp: Run it.
1998-04-07 00:10:22 +00:00
Ian Lance Taylor
5388e7d159 Mon Apr 6 12:06:39 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* config/tc-m68k.c (m68k_ip, case "#B"): Install the offset of the
	operand in the opcode.
1998-04-06 16:07:22 +00:00
Doug Evans
79cb0c8a2f tweak comment in last entry 1998-04-03 20:37:32 +00:00
Doug Evans
a3c63e840e * gas/dvp/relax-1.[sd]: New testcase.
* gas/dvp/dvp.exp: Run it.
1998-04-03 20:22:20 +00:00
Doug Evans
050ac694c5 * config/tc-dvp.c (assemble_vif): Put relaxable insns in their
own fragment.
1998-04-03 20:15:57 +00:00
Ian Lance Taylor
dd4dec6ac7 Fri Apr 3 11:58:19 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
* config/tc-i386.h: Reorder operand flags and opcode modifier
	flags for clarity.  Remove unused definitions: Unknown,
	ImmUnknown, DispUnknown, NoModrm.
	* config/tc-i386.c (type_names): Add missing Debug type.
	(md_assemble): Better duplicate prefix checking.  Quicker string
	instruction check via new opcode_modifier flag.
1998-04-03 17:04:07 +00:00
Ian Lance Taylor
7f633717a6 * doc/as.texinfo (Invoking): Clarify -Wa example. 1998-04-03 16:47:00 +00:00
Gavin Romig-Koch
3c69baf939 * config/tc-mips.c (mips_pseudo_table): Add weakext entry.
(s_mips_weakext): Define.
	* ecoff.c (ecoff_directive_weakext): Don't define if defined(TC_MIPS).
	* config/obj-ecoff.c (obj_pseudo_table): Don't add weakext if
	defined(TC_MIPS).
1998-04-03 14:13:52 +00:00
Jeff Law
24733f0ed2 * config/tc-mn10200.c (tc_gen_reloc): The difference of two symbols
is an error if the value can not be computed at assembly time.
        * config/tc-mn10300.c (tc_gen-reloc): Likewise.
1998-04-03 05:42:44 +00:00
Ian Lance Taylor
335c5c6c9d * gasp.c (main): Set next field of new include_path structure to
NULL.  From Avery Pennarun <averyp@gdc.ca>.
1998-04-03 02:51:47 +00:00
Nick Clifton
93f0144882 Fix SAT and SATB bit patterns. 1998-04-03 00:50:29 +00:00
Nick Clifton
4bda141818 Fix satb bit pattern. 1998-04-01 23:00:03 +00:00
Ian Lance Taylor
91852c944d fix copyright 1998-04-01 19:44:29 +00:00
Nick Clifton
f71d1797c5 Add patch from Dean Deaver (deaver@amt.tay1.dec.com) via Richard Earnshaw
(richard.earnshaw@arm.com) to fix addressing mode 2 using rrx.
Add super interworking support.
1998-04-01 19:17:20 +00:00
Ian Lance Taylor
8f6a0cad4a Wed Apr 1 13:13:20 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* doc/as.texinfo: Use @itemx for a secondary item in a table.
	* doc/c-hppa.texi: Likewise.
1998-04-01 18:14:54 +00:00
Ian Lance Taylor
08eefd3ef1 x 1998-04-01 17:00:11 +00:00
Catherine Moore
cb720e4fb6 Mods to generate RELA style relocations instead
of REL style.
1998-04-01 16:53:51 +00:00
Ian Lance Taylor
b9b299ba24 Final tweaks for dependency building with relative srcdir, and rebuild
dependencies.
1998-03-31 23:58:45 +00:00
Ian Lance Taylor
cfa9f8450c tweak 1998-03-31 23:00:57 +00:00
Ian Lance Taylor
ba91002682 * Makefile.am (DEP_INCLUDES): New variable.
(.dep1): Change to work when srcdir is not an absolute path.
	(.tcdep, .objdep, .dep2): Likewise.
	* Makefile.in: Rebuild.
1998-03-31 22:54:00 +00:00
Ian Lance Taylor
504a476485 * config/tc-i386.h, config/tc-i386.c: Revert March 24
LinearAddress patch.
1998-03-31 02:36:59 +00:00
Ian Lance Taylor
f3aa01e2a4 * configure.in: Set version to 2.9.1.
* configure: Rebuild.
1998-03-30 22:35:51 +00:00
Ian Lance Taylor
8a81fdbbd5 Mon Mar 30 11:22:08 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
* config/tc-i386.h (FWait): Define.
	* config/tc-i386.c (md_assemble): Emit fwait prefix before any
	other prefixes.  Check FWait flag in opcode table to see which
	instructions require an fwait prefix.
1998-03-30 16:24:28 +00:00
Ian Lance Taylor
14ff3d69bc Mon Mar 30 10:12:00 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* stabs.c (get_stab_string_offset): Always create a stab string
	section.
1998-03-30 15:13:33 +00:00
Ian Lance Taylor
c246596af7 Fix gcc -Wall warnings. See ChangeLog for details. 1998-03-29 03:45:46 +00:00
Ian Lance Taylor
19db82d5fc * config/tc-m68k.c (m68k_ip): Check legal addressing modes for
mcf5200 just as we do for m68000.
	(m68k_init_after_args): Likewise.
	(md_estimate_size_before_relax): Likewise.
1998-03-27 17:48:28 +00:00
Ian Lance Taylor
227b6b55fa Thu Mar 26 23:07:18 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
* config/tc-i386.c (md_assemble): Swap template arguments to
	CONSISTENT_REGISTER_MATCH macro in reverse direction test.
	This macro is currently symmetric, so passing them the wrong
	way didn't cause any problem, but may if the macro is changed
	in the future.
	After copying template to i.tm, use i.tm. rather than t-> to
	access fields, and make t a const*
	Move i.tm.operand_types[] swap to immediately after the copy.
1998-03-27 04:10:05 +00:00
Doug Evans
5c4442531f * config/tc-dvp.c (s_endunpack): Round up to word boundary after
we've computed the data length.
1998-03-26 21:34:03 +00:00
Doug Evans
d747041128 changelog entry for yesterday's tc-dvp.[ch] changes 1998-03-26 17:59:21 +00:00
Doug Evans
8b901ef830 * config/tc-dvp.h (md_estimate_size_before_relax): Delete.
(md_convert_frag): Delete.
	(TC_FIX_TYPE): New fields wl,cl,user_value;
	* config/tc-dvp.c (insert_mpg_marker): New argument ignore.
	All callers updated.
	(insert_unpack_marker): New function.
	(insert_file): New argument insert_marker_arg.  All callers updated.
	(gif_user_value): New static local.
	(vif_data_start,vif_data_end): New static locals.
	(mpgloc_sym,unpackloc_sym): New static locals.
	(cur_varlen_frag,cur_varlen_insn,cur_varlen_value): Delete.
	(cur_opcode,cur_operand): New static locals.
	(endmpg_caller): New enum.
	(md_pseudo_table): Pass ENDMPG_USER to s_endmpg.
	(md_begin): Initialize mpgloc_sym, unpackloc_sym.
	(dvp_fixup): New members user_value,wl,cl;
	(assemble_vif): Rewrite.
	(assemble_gif): Tweak name of data start label.
	(assemble_one_insn): Allow special parser to punt and call the
	normal expression parser.  Set cur_opcode,cur_operand for md_operand.
	(md_operand): Handle '*' value for mpgloc,unpackloc.
	(md_estimate_size_before_relax): New function.
	(dvp_relax_frag,md_convert_frag): New functions.
	(md_pcrel_from_section): Handle end data label for variable length
	vif insns.
	(md_apply_fix3): Handle count field for variable length vif insns.
	Handle address field for mpg,unpack.
	(eval_expr): Initialize user_value,wl,cl fields of the fixup.
	(cur_vif_insn_length): Delete.
	(vif_length_value): New function.
	(install_vif_length): Don't perform logical->physical conversion here.
	(s_enddirect,s_endmpg,s_endunpack): Rewrite.
1998-03-25 22:31:13 +00:00
Doug Evans
5b8fd65cf9 * gas/dvp/vif-1.d: Update. 1998-03-25 22:30:01 +00:00
Doug Evans
e5d62150f3 * expr.h (expr_build_uconstant): Add prototype.
(expr_build_unary,expr_build_binary): Add prototypes.
	* expr.c (expr_build_uconstant): New function.
	(expr_build_unary,expr_build_binary): New functions.
1998-03-25 22:03:19 +00:00
Ian Lance Taylor
36abac7fd3 Wed Mar 25 13:10:42 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
* gasp.c (IS*): Cast argument to unsigned char, not unsigned int.
        * macro.c (macro_expand_body): Increase buffer size.
        * messages.c (as_warn): Likewise.
	(as_warn_where, as_bad, as_bad_where): Likewise.
1998-03-25 18:12:52 +00:00
Ian Lance Taylor
fb8a5cecae Based on patch from H.J. Lu <hjl@gnu.org>:
* Makefile.am (DISTSTUFF): New variable.
	(diststuff): New target.
	* Makefile.in: Rebuild.
1998-03-25 18:00:09 +00:00
Jeff Law
818c1ddd6e * gas/mips/vu0.s: Add tests for "bc2f", "bc2fl", "bc2t", "bc2tl",
"cfc.i", "cfc.ni", "ctc.i", and "ctc.ni".
        * gas/mips/vu0.d: Corresponding changes.
1998-03-25 01:17:32 +00:00
Nick Clifton
c671714870 Fix PR15434 by emitting a nop if a section ends with a 16 bit instruction. 1998-03-25 00:54:54 +00:00
Ian Lance Taylor
75777e9b0e * config/obj-coff.c (obj_coff_bss): Compile unconditionally. Call
s_lcomm rather than obj_coff_lcomm.
	(obj_pseudo_table): Compile .bss pseudo-op unconditionally.
1998-03-25 00:48:51 +00:00
Ian Lance Taylor
dddc8a823d Tue Mar 24 18:30:58 1998 H.J. Lu <hjl@gnu.org>
* config/tc-i386.h (LinearAddress): Define.
	* config/tc-i386.c (md_assemble): If LinearAddress is set for the
	instruction, don't use a default segment.
1998-03-24 23:34:45 +00:00
Ian Lance Taylor
1cc7b6b26c Mon Mar 23 18:53:40 1998 Joel Sherrill <joel@OARcorp.com>
* configure.in: (sh*-*-rtems*): Switched from ELF to COFF.
	* configure: Rebuild.
1998-03-23 23:54:49 +00:00
Doug Evans
7a22fb9fc3 * gas/dvp/mpg-1.[sd]: New files.
* gas/dvp/mpg-1vu.s: New file.
	* gas/dvp/dvp.exp: Run new test mpg-1.s.
1998-03-23 21:31:08 +00:00
Doug Evans
e7201c9e36 * config/tc-dvp.c (insert_mpg_marker): Update mpgloc. 1998-03-23 21:19:04 +00:00
Nick Clifton
89e759089c Fix SATH bit pattern 1998-03-23 19:35:49 +00:00
Frank Ch. Eigler
6d2c139e5a * Backing out non-dvp changes from 1998-03-20; ".section text" is not
understood to be the same as ".text" on all ports.  The DVP assembler
  will resume failing these two tests.
1998-03-23 16:04:22 +00:00
Jeff Law
04f385a916 * config/tc-mips.c (validate_mips_insn): Handle r5900 operands. 1998-03-23 07:46:11 +00:00
Jeff Law
0bc0e337fc * config/tc-mips.c (append_insn): Handle BFD_RELOC_MIPS16_S3.
(mips_ip): Handle 'O' operand.
        (md_apply_fix): Handle BFD_RELOC_MIPS16_S3.
1998-03-22 20:17:34 +00:00
Frank Ch. Eigler
6cfaad4d88 * Updated DVP test case to match new alignment code that was checked in two
nights ago.  Patched other two test cases to explicitly specify the ".text"
  segment for tests since the DVP assembler defaults to ".vutext".
1998-03-21 00:29:55 +00:00
Ian Lance Taylor
fc6f7f6cb7 * aclocal.m4, configure: Rebuild with libtool 1.2. 1998-03-21 00:16:42 +00:00
Jeff Law
981ce1861f * config/tc-mips.c: Change '%' to '#' in r5900 code to avoid conflict
with vr5400 support.
1998-03-20 16:04:15 +00:00
Nick Clifton
15752c5ba1 Fix for PR15358 (out of range PC relative branches not being caught)
submitted by Jonathan Walton, c/o Tony Thompson at ARM.
1998-03-20 00:09:24 +00:00
Jeff Law
059a638882 * config/tc-mips.c (mips_ip): Handle opcodes which have the form
"name.completer" where only the name is actually in the opcode
        table.  Allow various operands for base register in load/store
        instructions.  Handle various new argument characters for the
        cop2/vu0 co-processor.
1998-03-19 21:28:24 +00:00
Jeff Law
b44cac60e4 * gas/mips/vu0.s, gas/mips/vu0.d: New testfiles.
* gas/mips/mips.exp: Run vu0 tests.
1998-03-19 21:16:39 +00:00
Doug Evans
dd1e151aa9 * gas/dvp/vif-1.[sd]: stcycle -> stcycl. 1998-03-19 18:51:19 +00:00
Frank Ch. Eigler
4ebb52f117 * Added forced 16-byte alignment to a sky-only (tc-dvp) assembler
pseudo-op: `.dmadata'.
1998-03-18 19:02:00 +00:00
Nick Clifton
22d3fbd6a2 Add thumb-pe target. 1998-03-18 17:31:54 +00:00
Doug Evans
8903601144 * config/tc-dvp.c (s_enddmadata): Always fill dma data out to 16
byte boundary.
1998-03-17 22:19:12 +00:00
Doug Evans
3b4389e23e * config/tc-dvp.h (TC_START_LABEL): Define.
* config/tc-dvp.c (force_mach_label): New function.
	(md_begin,create_colon_label,s_dmadata): Use it.
1998-03-17 22:10:10 +00:00
Doug Evans
1de230de3e * gas/dvp/dma-[12].[sd]: New testcases.
* gas/dvp/dvp.exp: Run them.
1998-03-17 22:04:22 +00:00
Ken Raeburn
9636f59b6a * itbl-lex.l (yywrap): Don't define if already defined as a macro. 1998-03-17 22:01:10 +00:00
Doug Evans
7f28a81d93 * config/tc-dvp.c (md_begin): Turn dma/vif packing on by default.
(assemble_dma): Only output 8 bytes for actual dma insn if dma/vif
	packing is enabled.  Emit VIF cpu marker after dma insn.
1998-03-17 18:51:57 +00:00
Doug Evans
fa3671a34f * config/tc-dvp.c (md_pseudo_table): Make .quad 16 bytes. 1998-03-16 18:22:18 +00:00
Tom Tromey
008a80d207 Merged recent change from rembrandt branch
* depend.c (quote_string_for_make): New function.
	(wrap_output): Use it.
1998-03-14 00:27:43 +00:00
Doug Evans
6d0a565ce2 * config/tc-dvp.h (TC_FIX_TYPE,TC_INIT_FIX_DATA): Define.
* config/tc-dvp.c (compute_nloop,check_nloop): New functions.
	(gif_insn_frag_loc): New static global.
	(assemble_gif): Record frag and location frag of insn.
	(md_apply_fix3): Validate user specified nloop if we couldn't do
	it earlier.
	(s_endgif): Queue fixup to install nloop if we can't compute it here.
1998-03-13 00:17:35 +00:00
Doug Evans
ba4be194df (insert_mpg_marker): New function.
(insert_file): New args insert_marker, size.  All callers updated.
	(assemble_vif): Rewrite varlen insn handling.
	(assemble_vu): Call insert_mpg_marker when 256th insn reached.
	(s_enddirect,s_endunpack): Rename arg to internal_p.
1998-03-07 03:22:18 +00:00
Doug Evans
65309b9834 (install_vif_length): Second pass at unpack len calcs.
(s_endunpack): Round data up to word boundary.
1998-03-07 01:43:32 +00:00
Joern Rennecke
5f1a734712 Remove SH4 sanitation. 1998-03-07 00:31:19 +00:00
Gavin Romig-Koch
e599ab169e Scrap the un-needed vr4111 stuff. 1998-03-06 21:22:59 +00:00
Doug Evans
6addb8d9fe * gas/dvp/vif-2.[sd]: New testcases. 1998-03-06 20:54:22 +00:00
Doug Evans
d030671bfc * config/tc-dvp.c (s_endgif): Fix nloop calc and test. Warn if
insufficient data present.  Fix insertion of computed nloop value.
1998-03-06 19:40:53 +00:00
Doug Evans
e1888c9576 * gas/dvp/upper-2.d (loi): Fix expected output.
* gas/dvp/vif-1.[sd]: Add more tests.
	* gas/dvp/gif{packed,reglist,image}-1.[sd]: New testcases.
	* gas/dvp/dvp.exp: Run them.  Pass -I${srcdir}/${subdir} to gas.
1998-03-06 19:27:21 +00:00
Gavin Romig-Koch
2d035a507f * config/tc-mips.c : Added vr4320 similar to vr4300. 1998-03-03 16:45:13 +00:00
Gavin Romig-Koch
c594deb253 * gas/mips/mips.exp (ilocks) : Added mips64vr4320*-*-*. 1998-03-03 16:12:56 +00:00
Doug Evans
69d2f4a744 * gas/m32r/allinsn.[sd] (ldi8a,ldi16a): Delete.
(ldi16): Improve test.
	(nop): Fix test.
1998-03-02 21:31:45 +00:00
Richard Henderson
626d6b2e55 * config/tc-alpha.c (md_shortopts, md_longopts, md_parse_option):
Recognize -GN and -relax.
        (md_begin): Initialize gp size from -G switch.
        (alpha_force_relocation): Always force if -relax.
        (alpha_align): Take a new argument that will specify when to
        emit an R_ALPHA_ALIGN relocation (though we don't do that now).
        Change all callers.  Emit nop alignment padding as nop+unop pair.
1998-03-01 01:34:22 +00:00
Richard Henderson
c35d42c21a * config/obj-elf.c [TC_ALPHA]: Include <elf/alpha.h>.
* config/tc-alpha.h (ELF_TC_SPECIAL_SECTIONS): New.
1998-03-01 01:08:03 +00:00
Michael Meissner
6c116dfc4b Delayed jsr instructions do not require padding to next long word boundary 1998-02-27 19:15:38 +00:00
Doug Evans
1fb06680cf * config/tc-dvp.c (assemble_vif): Insert cpu type marker before
inserted binary files.
1998-02-27 18:10:03 +00:00
Doug Evans
8ca85ce00a * config/tc-m32r.c (optimize): New static local.
(md_shortopts): Add -O.
	(md_parse_option): Recognize it.
	(md_show_usage): Document it.
	(md_assemble): Don't try to combine insns in parallel if !optimize.
1998-02-25 19:54:59 +00:00
Nick Clifton
39149be224 Fix bug detected by Michael snyder. 1998-02-25 02:05:09 +00:00
Doug Evans
b439fb8117 (s_endgif): Update. NLOOP is in quadwords for IMAGE mode now. 1998-02-25 01:05:10 +00:00
Doug Evans
9152bebae6 (UNIQUE_LABEL_PREFIX): New macro.
(unique_label): Use it.
	(assemble_gif): Emit start label before mach label.
	(s_endgif): Update.
1998-02-24 22:08:40 +00:00
Doug Evans
ef9448db9a (s_endgif): Change length mismatched errors to warnings. 1998-02-24 21:39:58 +00:00
Doug Evans
b6d331b9cd (create_colon_label): New argument `sto'. All callers updated.
(record_mach): New argument `force_next_p'.  All callers updated.
	(cpu_sto): New function.
1998-02-24 20:40:41 +00:00
Doug Evans
69312dac86 * config/tc-dvp.h (tc_frob_label): Define.
* config/tc-dvp.c (dvp_frob_label): New function.
1998-02-24 19:04:22 +00:00
Doug Evans
e9cb12e459 * config/tc-dvp.c (assemble_dma): Do alignment before parsing insn.
(setup_dma_autocount): Renamed from setup_autocount.  New argument
	inline_p.  All callers changed.  Fix word address of count.
	(parse_dma_addr_autocount): Fix word address of address.
1998-02-24 00:00:18 +00:00
James Lemke
c74ca124fe Added sanitization for my latest changelog entry. 1998-02-23 23:50:39 +00:00
James Lemke
96f5b6b2a5 Instead of changing the names of .bss etc, add .vubss etc via
the macro ELF_TC_SPECIAL_SECTIONS.  As per Ian's suggestion.
1998-02-23 22:27:12 +00:00
Doug Evans
a15a45e51f * cgen.c: #include symcat.h.
* config/tc-m32r.c: Likewise.
1998-02-23 19:30:18 +00:00
Jeff Law
0504414dc9 * gas/mips/vr5400.s: Use absolute expression for performance
register number.
        * gas/mips/vr5400.d: Corresponding changes.

        * gas/mips/r5900.s: Use absolute expression for performance
        register number.
        * gas/mips/r5900.d: Corresponding changes.
1998-02-23 17:35:44 +00:00
Jeff Law
59ef7c27fb * gas/mips/vr5400.s: Use absolute expression for performance
register number.

        * gas/mips/r5900.s: Use absolute expression for performance
        register number.
1998-02-23 17:29:31 +00:00
Jeff Law
65d2c7d3de * config/tc-mips.c (mips_ip, case 'P'): Make 'P' arguments be
absolute expressions instead of '$' prefixed register names.
1998-02-23 17:26:25 +00:00
Richard Henderson
56c99b3ea7 * read.c (s_set): Record file and line info for symbols when -as.
(pseudo_set): Don't overwrite that dummy fragment.

PR 14986
1998-02-22 06:36:20 +00:00
Doug Evans
83920d292b (vu_count): New static local.
(assemble_vif): Temporary hack to properly align mpg/direct data.
	(assemble_vu): Insert mpg every 256 insns.
1998-02-21 07:44:25 +00:00
Doug Evans
ee753b4b6b tc-dvp.c (cur_mach): New static local.
(record_mach): New function.
	(md_begin): Initialize `cur_mach'.
	(assemble_*): Record current mach type.
1998-02-21 06:28:46 +00:00
Doug Evans
57d0c8302d (cur_mach): New static local.
(record_mach): New function.
	(md_begin): Initialize `cur_mach'.
	(assemble_*): Record current mach type.
1998-02-21 06:28:18 +00:00
Doug Evans
498fcb9cdb (asm_state_stack): Maintain stack of parsing states.
({push,pop,set}_asm_state): New functions.
	(CUR_ASM_STATE): Renamed from cur_asm_state, all uses updated.
1998-02-21 03:26:47 +00:00
Doug Evans
8151801a09 (asm_state): New state ASM_GIF.
(gif_{insn_type,data_name,insn_frag}): New static locals.
	(md_assemble): Watch for .endgif if in ASM_GIF state.
	(assemble_gif): Complete.
	(s_endgif): Complete.
1998-02-21 02:12:15 +00:00
Doug Evans
d3c6610c00 * confirg/tc-dvp.c (md_assemble): Handle ASM_DIRECT state.
(dvp_parse_done): Comment out contents.
	(s_enddirect,s_endmpg,s_endunpack): Call demand_empty_rest_of_line.
	(s_state): Handle .vu in included file.
1998-02-20 20:48:39 +00:00
Ian Lance Taylor
c634d13e18 * config/tc-ppc.c (md_pseudo_table): Add "section".
(ppc_named_section): New static function.
1998-02-20 20:04:09 +00:00
Jeff Law
47558b4c64 * gas/mips/r5900.s, gas/mips/r5900.d: Update for "mula.s" change. 1998-02-20 08:27:32 +00:00
Richard Henderson
9db4b37c3f * tc-ppc.c (ppc_biei): Cache the last symbol we inserted
so we don't have to scan the entire list.
1998-02-20 06:27:12 +00:00
Fred Fish
a1bbc57c69 Fixup my email addresses to be at cygnus.com 1998-02-20 05:52:58 +00:00
Fred Fish
ccc12f73ce * config/tc-d30v.c (parallel_ok): For the explicitly parallel
case, allow the parallel instructions to modify the same flag
 	bits.
PR 14883
1998-02-20 05:47:40 +00:00