Commit graph

2535 commits

Author SHA1 Message Date
Ian Lance Taylor
24b018ee72 * read.c (s_fill): Don't warn about a zero repeat count. 1996-06-18 22:17:40 +00:00
Ian Lance Taylor
c674dcaa71 * config/tc-mips.c (mips_ip): Don't warn about using AT as a
coprocessor register.
1996-06-18 21:57:56 +00:00
Ian Lance Taylor
d945323396 * config/tc-i386.c (md_assemble): When checking the size of a
register to set the size of an instruction, do a bitwise and with
	Reg8 and Reg16 rather than requiring the type to be exactly Reg8
	or Reg16.
1996-06-18 21:15:35 +00:00
Jeff Law
3d0afe12c5 * config/tc-h8300.c (parse_reg): Tweak error messages.
(build_bytes): Likewise.
        (skip_colonthing): Handle :32 suffix.
        (get_specific): Promote L_24 to L_32 if it makes a match.
        Don't always promote L_8 to L_16.
        (do_a_fix_imm): Clean up L_32 and L_24 handling.
H8/S related stuff that doesn't need to be sanitized.

start-sanitize-h8s
        * config/tc-h8300.c (Smode): New variable.
        (h8300hmode): Turn off Hmode.
        (h8300smode): New function.  Turn on Smode and Hmode.
        (md_pseudo_table): New ".h8300s" pseudo-op.
        (parse_reg): Handle "exr" register.
        (get_operand): Handle bizarre syntax for "stm.l" and "ldm.l".
        Handle "mach" and "machl" operands for ldmac.
        (get_specific): Handle "stm.l" and "ldm.l".
        (build_bytes): Handle "stm.l" and "ldm.l"; handle MACREG operands.
        * config/tc-h8300.h (COFF_MAGIC): Handle H8/S magic number.
        (Smode): Declare.
end-sanitize-h8s
Sanitized H8/S stuff until we know its status.
1996-06-18 20:28:20 +00:00
Jeff Law
0ed3f0f7cc Tweak. 1996-06-18 20:02:10 +00:00
Jeff Law
e34c4939b5 * gas/h8300/cbranchh.s: Switch into h8300h mode.
* gas/h8300/h8300.exp (H8/300H misc tests): Fix test names.
Just something I noticed.

        * gas/h8300/{addsubs.s,bitops1s.s,bitops2s.s}: New tests for the
        H8/S.
        * gas/h8300/{bitops3.s,bitops4.s,cbranchs.s,logicals.s}: Likewise.
        * gas/h8300/{branchess.s,compares.s,macs.s,decimals.s}: Likewise.
        * gas/h8300/{incdecs.s,divmuls.s,miscs.s,multiples.s}: Likewise.
        * gas/h8300/{movbs.s,movws.s,movls.s,pushpops.s}: Likewise.
        * gas/h8300/{rotshifts.s,extends.s}: Likewise.
        * gas/h8300/h8300.exp: Run them.
Sanitized away until status is clarified.
1996-06-18 19:50:54 +00:00
Jeff Law
e4012892a3 * gas/h8300/cbranchh.s: Switch into h8300h mode.
Just something I noticed.
1996-06-18 19:40:18 +00:00
J.T. Conklin
370181a2ae * doc/as.texinfo: Reorder chapter of machine dependent options so
that it is sorted by chip name.

* doc/as.texinfo: Use consistant spelling of Vax.
* doc/c-vax.texi: Likewise.
1996-06-17 22:55:02 +00:00
Jeff Law
02d4dd87df * config/tc-hppa.c (md_pseudo_table): Add ".begin_try" and ".end_try"
pseudo ops.
        (tc_gen_reloc, SOM version): Handle R_BEGIN_TRY and R_END_TRY.
        (md_apply_fix): Likewise.
        (pa_try): New function.
        (hppa_force_relocation): Force relocs for BEGIN_TRY and END_TRY.
More PA exception handling crud.
1996-06-17 18:31:51 +00:00
Jeff Law
b81231b786 * config/tc-hppa.c (md_pseudo_table): Add ".level" pseudo op.
(pa_level): New function.
hpux10 gunk.
1996-06-17 05:59:01 +00:00
Ian Lance Taylor
fe8d0ff3f1 * listing.c (listing_newline): Don't do anything if listing is 0. 1996-06-15 03:07:16 +00:00
Ian Lance Taylor
9bec2a42de * write.c (adjust_reloc_syms): Don't set sy_used_in_reloc for an
absolute symbol unless TC_FORCE_RELOCATION returns true.
1996-06-13 01:10:46 +00:00
Ian Lance Taylor
92e61d3111 * config/tc-m68k.c (m68k_ip): Accept ABSL for 'O', so that `bfextu
d0{24:1},d0' works without an immediate prefix on the bit numbers.
	(md_begin): Add digits to alt_notend_table.
	(md_parse_option): Make s a const pointer.
1996-06-10 23:32:34 +00:00
Ian Lance Taylor
b91e85c27d * config/tc-sparc.c (md_pseudo_table): Add "empty".
(s_empty): New static function.
1996-06-10 21:07:57 +00:00
Ian Lance Taylor
a57e71e6e0 * gas/all/cofftag.s, gas/all/cofftag.d: New test for COFF enum tag
with the same name as a global variable.
	* gas/all/gas.exp: Run cofftag test for any COFF target.
1996-06-10 19:29:51 +00:00
Ian Lance Taylor
e789e620dd * config/obj-coff.c (struct filename_list): Only define if not
BFD_ASSEMBLER.
	(filename_list_head, filename_list_tail): Likewise.
	(c_section_symbol): Remove unused BFD_ASSEMBLER version.
	(obj_coff_endef, BFD_ASSEMBLER version): Don't set the debugging
	flag for C_MOS, C_MOE, C_MOU, or C_EOS symbols, since they should
	have a section of N_ABS rather than N_DEBUG.  If we do a merge,
	remove the new symbol from the list.
 	(obj_coff_endef, both versions): Call tag_insert even if there is
	an old symbol with the same name, if the old symbol does not
	happen to be a tag.
	(coff_frob_symbol): Check SF_GET_TAG, C_EOF, and C_FILE outside of
	the SF_GET_DEBUG condition.  Don't call SA_SET_SYM_ENDNDX with a
	symbol that will be moved to the end of the symbol list.
	(coff_adjust_section_syms): Always call section_symbol for .text,
	.data, and .bss.
	(coff_frob_section): Likewise.  Also, remove unused variable
	strname.
1996-06-10 19:29:25 +00:00
Michael Meissner
c992cf9b28 Add .lcomm directive 1996-06-10 18:54:38 +00:00
Ian Lance Taylor
0670452eae * config/tc-ns32k.c (convert_iif): Call frag_grow rather than
manipulating frags directly.
	(md_number_to_field): Adjust mem_ptr correctly if ENDIAN is
	defined.
1996-06-10 16:29:54 +00:00
Ian Lance Taylor
41822c41ed * app.c (do_scrub_chars): If '/' is LINE_COMMENT_START, check
whether the next character is '*' before checking whether we are
	at the start of a line.  Permit LINE_COMMENT_START to start a
	comment in state 1 (seen some whitespace) as well, to match the
	documentation.
1996-06-10 16:15:05 +00:00
Ian Lance Taylor
1ba7661587 * gasp.c (do_align): Permit a fill value for .align. 1996-06-10 15:51:26 +00:00
Jim Wilson
ed381b6719 Kill r16/rce/acp stuff. 1996-06-08 03:18:15 +00:00
Ian Lance Taylor
3f3accf86a * gas/m68k/all.exp: Pass -m68020 when assembling the disperr.s
test.
1996-06-06 16:31:03 +00:00
Tom Tromey
2c7aeec634 * Makefile.in (install): Don't check to see if tooldir exists.
Make $(tooldir) and $(tooldir)/bin.
1996-06-04 22:16:01 +00:00
Michael Meissner
527b83247e Do not turn on -mregnames by default 1996-06-04 15:02:47 +00:00
Ian Lance Taylor
3b426f5a60 * config/tc-mips.c (mips_ip): Don't call as_warn if we are setting
insn_error.  Don't put the string "ERROR" in insn_error.  Set
	insn_error rather than calling as_warn for an unsupported opcode.
1996-06-03 15:36:04 +00:00
Ian Lance Taylor
9c44af609b * config/tc-mips.c (md_parse_option): Check for a 64 bit format
before permitting -64.
	* output-file.c (output_file_create): Remove duplicate
	bfd_perror.
1996-06-02 01:55:28 +00:00
Ian Lance Taylor
871781804f * config/tc-mips.c (md_begin): If -64, create a .MIPS.options
section rather than a .reginfo section.
	(mips_elf_final_processing): If -64, write out 64 bit RegInfo
	information.
1996-05-31 21:46:14 +00:00
Ian Lance Taylor
98bfd087ca * config/tc-mips.c (load_register): If mips_isa < 3, permit a 32
bit value with the high bit set.
1996-05-31 05:10:20 +00:00
Michael Meissner
76bda7a424 Make ! a comment only under Solaris; Add .rdata/.rodata pseduo ops 1996-05-31 01:16:10 +00:00
Ian Lance Taylor
7f9880e5de * config/tc-mips.c (mips_64): New static variable.
(mips_target_format): If mips_64, return elf64 targets rather than
	elf32 ones.
	(md_longopts): Add "32" and "64".
	(md_parse_option): Handle -32 and -64.
	(md_show_usage): Mention -32 and -64.
	(cons_fix_new_mips): If mips_64, don't convert an 8 byte reloc to
	a 4 byte one.
1996-05-30 23:08:47 +00:00
Ian Lance Taylor
b95bee134d * read.c (s_lcomm): Set section flags for .sbss section. 1996-05-30 23:04:52 +00:00
Michael Meissner
d0e1c80348 Make ! a comment character 1996-05-30 19:22:16 +00:00
Michael Meissner
1facd5f05c Make 4 argument .stabd into .stabn on PowerPC Solaris 1996-05-30 14:40:22 +00:00
Ian Lance Taylor
a40aee3822 * config/tc-mips.c (macro): When passing X_add_number to
macro_build, cast it to int first.
1996-05-29 20:46:07 +00:00
Ian Lance Taylor
2183da6aa8 * gas/mips/jal-xgot.d: Correct for 64 bit output. 1996-05-29 20:36:05 +00:00
Ian Lance Taylor
54388b8527 * config/tc-z8k.c (md_apply_fix): Handle fx_r_type of 0, as
created by emit_expr.
1996-05-28 19:08:40 +00:00
Ian Lance Taylor
943bdfdcce * symbols.c (symbol_create): If bfd_make_empty_symbol fails, call
as_perror rather than assert.
1996-05-28 17:33:23 +00:00
Ian Lance Taylor
9b61d62b9f * config/tc-mips.c (mips_ip): Mark sections created to hold
floating point information as read only.
1996-05-25 01:25:27 +00:00
Michael Meissner
e30c00760c Add better defaults for AIX3, AIX4 1996-05-24 22:10:52 +00:00
Michael Meissner
adeab39b20 Add .skip as a synonym for .space 1996-05-23 21:58:22 +00:00
Michael Meissner
63cafcefea Allow bogus .stabd with 4 arguments for PowerPC Solaris 1996-05-23 21:49:18 +00:00
Ian Lance Taylor
bccbc0aa84 * config/tc-sh.h (struct sh_segment_info_type): Define.
(TC_SEGMENT_INFO_TYPE): Define.
	(sh_frob_label): Declare.
	(tc_frob_label): Define.
	(sh_flush_pending_output): Declare.
	(md_flush_pending_output): Define.
	* config/tc-sh.c (md_assemble): If relaxing, emit a R_SH_CODE
 	reloc before the instruction if necessary.
	(sh_frob_label): New function.
	(sh_flush_pending_output): New function.
	(sh_coff_frob_file): Ignore ALIGN, CODE, DATA, and LABEL relocs
	when looking for the reloc for the target of .uses.
	(md_convert_frag): Fix printf format (%0xlx to 0x%lx).
	(sh_force_relocation): Force CODE, DATA, and LABEL relocs to be
	emitted.
	(md_apply_fix): Ignore CODE, DATA, and LABEL relocs.
	(sh_coff_reloc_mangle): Force CODE, DATA, and LABEL relocs to use
	the absolute symbol.
1996-05-16 19:57:12 +00:00
Ian Lance Taylor
3ea36b5319 * config/tc-i386.c (md_assemble): Make sure the opcode suffix
matches the register size.
PR 9700.
1996-05-15 16:26:20 +00:00
Jeff Law
ecb9b1cadb * config/obj-coff.c (count_entries_in_chain): Ignore Fixups with
fx_done set.
        (do_relocs_for): Likewise.
        (fixup_segment): Don't just quit if linkrelax is set.  Try to
        apply non pc-relative sym1-sym2 fixups, even if linkrelax is
        nonzero.
So function-relative stabs will work on the H8/300.  HMSE.
1996-05-15 14:40:31 +00:00
Michael Meissner
f122568e72 Allow GOT, section relative relocations all the time with -mrelocatable 1996-05-10 18:32:01 +00:00
Ian Lance Taylor
6648d3ae63 * config/obj-coff.c (yank_symbols): Check that FNAME_OFFSET is
non-zero before assuming this is a long file name.
	(w_strings): Likewise.
	(c_dot_file_symbol): Set FNAME_OFFSET to 1 for a long file name.

	* config/obj-coff.c (w_strings): Move declaration of i inside
	#ifdef block which uses it.
1996-05-07 15:34:25 +00:00
Jeff Law
c47fc40136 * config/tc-h8300.c (do_a_fix_imm): Rename last argument to
"relaxmode".  Output relocs which identify various relaxing
        possibilities for mov.[bwl] instructions.
        (build_bytes): Pass in a relaxing mode to do_a_fix_imm.
So the linker can identify more potential relaxations.  HMSE.
1996-05-07 06:47:56 +00:00
David Edelsohn
9ea827436f * config/tc-arm.h (TC_HANDLES_FX_DONE): Define.
(MD_APPLY_FIX3): Define.
	* config/tc-arm.c (my_get_expression): Only watch for bad segments
	if OBJ_AOUT.
	(md_apply_fix3): Renamed from md_apply_fix.
	If pcrel reloc and symbol is in different section, undo effects
	of md_pcrel_from.
1996-05-06 22:30:52 +00:00
Jeff Law
ab7db73b24 * config/tc-hppa.c (hppa_fix_adjustable): Don't adjust
any reloc with an LR% or RR% field selector for SOM.
Fixes net bug.
1996-05-04 18:46:43 +00:00
Ian Lance Taylor
c9324fcd24 * Makefile.in: Add subsegs.h to appropriate TARG_CPU_DEP_*
variables.
1996-05-04 18:27:15 +00:00