Commit graph

2022 commits

Author SHA1 Message Date
Joern Rennecke
832ef2cca2 * config/tc-d10v.c (find_opcode): For OPCODE_FAKE, add check for
first argument if it's supposed to be a register.
PR 13952.
1997-11-13 02:19:13 +00:00
Gavin Romig-Koch
42444087ff config/tc-mips.c (mips_4900): Added.
(hilo_interlocks): Added mips_4900.
(md_begin): Set default for mips_4900.
(macro_build,mips_ip): Test for INSN_4900 if mips_4900.
(md_longopts): Add "m4900" and "no-m4900".
(md_parse_option): Handle above options.
1997-11-12 15:09:33 +00:00
Joern Rennecke
f2fafccac2 * app.c (do_scrub_chars): If d10v, re-insert a space before
a '#' when in state 10.
Fix for PR 13894.
1997-11-11 19:35:49 +00:00
Ian Lance Taylor
5de020b44e * config/tc-h8300.c: Include "subsegs.h".
(tc_reloc_mangle): Handle references to symbols which are not
	being output, so that references to `.' work.
PR 13915.
1997-11-11 18:35:20 +00:00
Ian Lance Taylor
77635763d6 * config/tc-m68k.c (m68k_ip): Call add_fix when needed for '_'
case.
PR 13886.
1997-11-10 19:15:45 +00:00
Ian Lance Taylor
f19d08dc40 * macro.c (sub_actual): If we don't find a parameter for an &,
just substitute &.
PR 13868.
1997-11-10 18:45:31 +00:00
Ken Raeburn
b3ed1af38c * config/tc-mips.c (mips_ip): Added cases for "e", "%", and "P" operand types.
(hilo_interlocks): VR5400 has interlocks.
(md_begin): Expect mips64vr5400, not mips64r5400.

* config/tc-mips.c (mips_ip): In default case, call as_bad instead of fprintf,
to get "assembler messages:" message output before instead of after.
1997-11-08 02:44:22 +00:00
Doug Evans
4afb407dae * frags.h: Handle multiple inclusion. 1997-11-07 18:37:06 +00:00
Doug Evans
070937ba64 Based on a patch from Ian.Dall@dsto.defence.gov.au.
* as.h (struct frag, frag support): Moved from here.
	* frags.h: To here.
	(struct frag, member tc_frag_data): New member if TC_FRAG_TYPE
	is defined.
	(struct frag, member fr_cgen): Renamed from fr_targ.cgen.
	* cgen.c (cgen_asm_finish_insn): Update.
	* config/tc-m32r.c (md_estimate_size_before_relax): Update.
	* config/tc-m32r.h (TC_FRAG_INIT): Renamed from md_init_frag.
	(md_convert_frag): Ditto.
	* config/tc-ns32k.h (TC_FRAG_TYPE): Define.
	(frag_opcode_frag,frag_opcode_offset,frag_bsr): Update.
	(TC_FRAG_INIT): Update.
1997-11-05 21:05:08 +00:00
Doug Evans
d57d82d7e5 * write.c (print_fixup): Use TC_FIX_DATA_PRINT (if defined) to
print out MD fields of fix.
	* frags.c (frag_var, frag_variant): Use TC_FRAG_INIT macro (if
 	defined) to initialize MD fields in frag.
	* as.h (struct frag, ns32k support): Rename ns32k to fr_ns32k.
	Delete pcrel_adjust.  Add fr_opcode_fragP, fr_opcode_offset.
	* config/tc-ns32k.h: Add comments. Remove obsolete
 	BFD_FAST_SECTION_FILL definition, change prototypes for
 	fix_new_ns32k and fix_new_ns32k_exp to add new arguments
 	opcode_frag and opcode_offset and remove pcrel_adjust.
	(TC_FIX_TYPE): add opcode_fragP and opcode_offset fields.
	(TC_FIX_DATA_PRINT): new macro to print out TC_FIX_TYPE.
	(TC_FRAG_INIT): new macro to initialize machine dependent field in
 	frags.
	(frag_opcode_frag, frag_opcode_offset, frag_bsr): macros to access
 	MD fields in frag structure.
	(fix_im_disp, fix_bit_fixP, fix_opcode_frag, fix_opcode_offset,
 	fix_bsr): macros to access MD fields in fix structure.
	* config/tc-ns32k.c: Avoid overlength lines. Align comments.  Don't
 	use struct opcode_location as these fields are now in the frag
	structure.
	(convert_iif): Call frag_more as it is needed instead
 	of trying to allocate for the whole insn. Avoid call of frag_more
 	with negative argument.
	(md_pcrel_adjust, md_fix_pcrel_adjust, md_apply_fix,
	md_estimate_size_before_relax, md_pcrel_from,
	tc_aout_fix_to_chars): use accessor macros to get md fields in fix
 	and frag structures.
	(fix_new_ns32k, fix_new_ns32k_exp): add new arguments opcode_frag and
	opcode_offset and remove pcrel_adjust.
	(convert_iif, cons_fix_new_ns32k): call fix_new_ns32k,
 	fix_new_ns32k_exp with changed arguments.
1997-11-05 00:45:23 +00:00
Gavin Romig-Koch
1724c79e75 * tc-mips.c (md_begin): Reorganize setting of default values so
that mips_cpu depends on TARGET_CPU, and mips_opts.isa depends on
	   mips_cpu.
	   (md_parse_option): Remove all code that sets defaults; md_begin
	   handles all of this now.
1997-11-03 19:32:42 +00:00
Ian Lance Taylor
0ac53ff04d * Makefile.am (STAGESTUFF): Change bin_PROGRAMS to
noinst_PROGRAMS.
	(bootstrap, bootstrap2, bootstrap3): Likewise.
	* Makefile.in: Rebuild.
1997-11-02 19:49:24 +00:00
Ken Raeburn
aa2e0460a0 * config/tc-mips.c (mips_5400): New variable.
(md_begin, md_parse_option): Handle 5400 options/names.
(macro_build, mips_ip): Check for 5400-specific instructions.
(md_longopts, OPTION_M5400, OPTION_NO_M5400): More command-line support for
5400.

* config/tc-mips.c (validate_mips_insn): New function, checks match versus mask
bits, and also verifies that all bits to be output are actually specified
somewhere.
(md_begin): Call it for 32-bit instructions, instead of doing match/mask check
here.  In case of failure, print a message, but check the rest of the opcode
table before exiting.
1997-10-31 23:21:44 +00:00
Nick Clifton
6e3fcdf01c Fixes to Thumb ADR pseudo op from Tony Thompson at ARM (athompso@arm.com). 1997-10-30 21:44:05 +00:00
Michael Meissner
42cf65557e Allow odd registers for ld2w and friends 1997-10-30 16:12:36 +00:00
Gavin Romig-Koch
4ebda395f1 * config/tc-mips.c (hilo_interlocks): True for tx49.
(md_begin): Add mips64tx49.
	(md_parse_option): Add 4900 cpu.

	* gas/mips/mips.exp: Add tx49 configury.
1997-10-29 21:40:09 +00:00
Ian Lance Taylor
e59390a7eb * config/tc-ppc.c (md_assemble): When handling @l, always sign
extend if the operand expects a signed value.
PR 13667.
1997-10-24 21:29:10 +00:00
Ian Lance Taylor
c14d0cc015 * config/tc-mips.h (LOCAL_LABELS_DOLLAR): Don't define; use
default which is to permit dollar labels.
PR 13645.
1997-10-24 20:03:16 +00:00
Richard Henderson
1bb6aaad34 Fri Oct 24 11:19:22 1997 Jakub Jelinek <jj@sunsite.mff.cuni.cz>
* config/tc-sparc.c (sparc_memory_model): New variable.
        (md_longopts): Add -TSO/-PSO/-RMO options.
        (md_parse_options): Handle them.
        (sparc_elf_final_processing): For 64 ELF, set required
        memory ordering in e_flags. Default to RMO and let the user
        override it through command line.

        * config/tc-sparc.h (elf_tc_final_processing): Add.
1997-10-24 18:20:36 +00:00
Richard Henderson
1277cdda1c * config/tc-sparc.c (v9a_asr_table): New variable.
(sparc_ip): Handle v9a asr's.
        Patch from David Miller <davem@vger.rutgers.edu>.
1997-10-23 00:40:25 +00:00
Richard Henderson
7532235c09 * config/tc-sparc.h (md_do_align): New macro.
* config/tc-sparc.c (sparc_handle_align): Handle rs_align_code.
        Patch from Jakub Jelinek <jj@sunsite.mff.cuni.cz>.
1997-10-23 00:22:51 +00:00
Ian Lance Taylor
82b4217bfd * config/tc-sh.c (sh_small): New variable.
(OPTION_SMALL): Define.
	(md_longopts): Add "small".
	(md_parse_option): Handle OPTION_SMALL.
	(md_show_usage): Mention -small.
	* config/tc-sh.h (sh_small): Declare.
	(SUB_SEGMENT_ALIGN): Handle sh_small.
	* config/obj-coff.h (TARGET_FORMAT): Check sh_small in TC_SH
	case.
PR 13580.
1997-10-22 20:13:54 +00:00
Ian Lance Taylor
517640d9b5 * config/tc-mips.c (macro): Correct handling of constant in M_LI_D
case in little endian mode.
1997-10-22 16:52:46 +00:00
Doug Evans
61a60a8a70 * config/tc-sparc.c (md_apply_fix3, cases ..._H44, ..._HIX22): Leave
overflow signalling to linker.
1997-10-21 17:23:12 +00:00
Doug Evans
70ee778220 * configure.in (sparc64): Set arch to v9-64.
* configure: Regenerated.
1997-10-20 20:02:28 +00:00
Ian Lance Taylor
9659c18b39 Various fixes for openvms/alpha. 1997-10-20 19:43:05 +00:00
Ian Lance Taylor
71e0e8f9e8 Mon Oct 20 14:54:06 1997 Klaus K"ampf <kkaempf@progis.de>
* config/obj-evax.c: support .weak pseudo-op
1997-10-20 18:56:21 +00:00
Doug Evans
595da85d72 * tc-sparc.c (default_arch_size): New static local.
(struct sparc_arch): Rename arch_size to default_arch_size.
	New member user_option_p.
	(sparc_arch_table): Always include v9, v9a.  New entry v9-64.
	(init_default_arch): Check whether default arch is valid.
	Set default_arch_size in addition to sparc_arch_size.
	(OPTION_32,OPTION_64): Define.
	(md_longopts): New entries for -32, -64.
	(md_parse_option): Handle them.
	(md_show_usage): Print them.  Ensure init_default_arch called.
1997-10-20 17:23:10 +00:00
Ian Lance Taylor
66a6a38139 * write.c (subsegs_finish): New function, broken out of
write_object_file.
	(write_object_file): Some code moves into subsegs_finish.
	* write.c (subsegs_finish): Declare.
	* as.c (main): Call subsegs_finish.
Fixes last frag when generating a listing for a file with an error.
1997-10-19 18:14:01 +00:00
Ian Lance Taylor
891a158431 * read.c (s_include): Check for error return from
demand_copy_string.
PR 13566.
1997-10-19 17:51:31 +00:00
Richard Henderson
08ce71f5c4 * read.c (get_line_sb): Accept any eol marker while scanning macros. 1997-10-15 03:56:30 +00:00
Richard Henderson
10b8f7f036 * config/tc-alpha.h (DIFF_EXPR_OK): Define.
* config/tc-i386.h (DIFF_EXPR_OK): Define.
        * config/tc-alpha.c (md_apply_fix): Notice fx_pcrel and substitute
        the correct relocation when it exists.
        * config/tc-i386.c (md_apply_fix3): Likewise.
        * config/tc-ppc.h: Correct typo in comment.
        * config/tc-v850.h: Likewise.
1997-10-15 02:17:00 +00:00
Andrew Cagney
a0a5f4e2bd Allow assembler to make parallel instructions where there the seconds
(latter) outputs intersect with the first (earlier) inputs.
1997-10-13 23:17:22 +00:00
Richard Henderson
856f843eef * ecoff.c (PAGE_SIZE): Double to 8k as a hack to allow some C++
templated programs to build with -g.
1997-10-13 22:28:35 +00:00
Nick Clifton
c280609300 Jim fixed the fixups for conditional and unconditional branches.
Added code to support the bss and common sections in thr ZDA and SDA areas.
1997-10-11 00:55:57 +00:00
David Edelsohn
e01e18a8b3 * configure.in (sparc): Set DEFAULT_ARCH from correct target.
* configure: Regenerated.
1997-10-10 22:02:59 +00:00
Martin Hunt
b83565def8 Fri Oct 10 11:22:45 1997 Martin M. Hunt <hunt@cygnus.com>
* config/tc-d10v.c: Fixes to make sure the AT_WORD
	expression is not confused with -1.
1997-10-10 18:22:59 +00:00
Andrew Cagney
528859ea3f Flag SP as modified for @-sp operand - OPERAND_ATMINUS. 1997-10-10 05:59:16 +00:00
Michael Meissner
719ddab4cc Do not allow auto inc/dec to parallelize with an instruction that uses the index register 1997-10-10 04:50:36 +00:00
Ian Lance Taylor
15ab76e50d From Robin Kirkham <Robin.Kirkham@mlb.dmt.csiro.au>:
* config/tc-m68k.c (archs): Add 68306, 68307, 68322, 68356, 68334,
	68336, 68341, 68349.
	* doc/c-m68k.texi (M68K-Opts): Add -m68ec000 -m68hc000 -m68hc001
	-m68306, -m68307, -m68322, -m68356, -m68ec020, -m68ec030,
	-m68ec040, -m68ec060, -m68330, -m68334, -m68336, -m68341,
	-m68349.
1997-10-09 19:30:16 +00:00
Ian Lance Taylor
57f269b1c0 * doc/Makefile.am (CPU_DOCS): Define.
(as.info): Depend upon $(CPU_DOCS).
	* doc/Makefile.in: Rebuild.
1997-10-09 19:22:15 +00:00
Ian Lance Taylor
ed1ed9f9dc * configure.in: Remove AM_PROG_INSTALL; it's called by
AM_INIT_AUTOMAKE.
	* configure: Rebuild.
1997-10-09 19:20:14 +00:00
Joern Rennecke
c7b2ac2856 * config/tc-d10v.c (write_2_short): Fix bug that wouldn't allow
to pair a branch and link with anything but an exe instruction.
Fix for gas/13494.
1997-10-09 18:37:16 +00:00
Joern Rennecke
d78d367107 * tc-d10v.h (TC_START_LABEL): Don't define.
(tc_frob_label): Define.
Fix for gas/13307.
1997-10-09 18:28:59 +00:00
Richard Henderson
8a8a91a5b7 * config/tc-alpha.c (load_expression): Disable the sym+const .got
optimization to reduce the alignment surprises for gcc.
1997-10-08 23:40:54 +00:00
David Edelsohn
54b9ebdd55 * config/obj-coff.h (TC_SPARC): Don't define TARGET_FORMAT.
* config/tc-sparc.c (sparc_target_format): Handle coff here.
	(sparc_ip): Add %hix,%lox.
	(md_apply_fix3): Call as_bad_where, not as_bad.
	Add support for BFD_RELOC_SPARC_{HIX22,LOX10}.
	(tc_gen_reloc): Add support for BFD_RELOC_SPARC_{HIX22,LOX10}.
1997-10-08 23:13:52 +00:00
Richard Henderson
0170f1c38a Change alpha-*-* to alpha*-*-*; config.guess now
recognizes alphaev5 etc.
1997-10-08 19:36:17 +00:00
Gavin Romig-Koch
6fd819cfff config/tc-mips.c (md_begin): Replace the TARGET_CPU value
of mipsr3900 with mipstx39.

config/tc-mips.c (mips_ip): Don't print the 'opcode requires
-mipsXX message' if the insn isn't an ISA insn.
1997-10-08 04:17:08 +00:00
David Edelsohn
4913666781 * config/tc-sparc.h (TARGET_FORMAT support): Moved to tc-sparc.c.
Redefine TARGET_FORMAT to call sparc_target_format.
	* config/tc-sparc.c (in_unsigned_range): New function.
	(sparc_arch_size): Make static.
	(sparc_target_format): New function.
	(sparc_ip): Delete variable immediate_max.  Rewrite %hi/etc reloc
	handling.  Add support for %hh,%hm,%lm,%h44,%m44,%l44.
	(output_insn): Set `fx_no_overflow'.
	(md_apply_fix3): Handle BFD_RELOC_SPARC_{7,H44,M44,L44}.
	(tc_gen_reloc): Likewise.
1997-10-07 19:53:17 +00:00
Stan Shebs
eb9c5f1c7c Remove sanitized-out Magic Cap support, will never be released 1997-10-06 23:39:29 +00:00