Commit Graph

1384 Commits

Author SHA1 Message Date
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
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
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
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
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
Doug Evans
915729414d * config/tc-dvp.c (LOCAL_LABEL_PREFIX,END_LABEL_PREFIX): New macros.
(inline_dmadata): Renamed from s_dmadata_implied.
	(assemble_one_insn): Rewrite dma operand processing.
	(md_apply_fix3): Handle DVP_OPERAND_DMA_NEXT.
	(unique_name,setup_autocount): New functions.
1998-02-19 22:51:08 +00:00
Doug Evans
1ece1d561b * config/tc-dvp.c: Include stdarg.h/varargs.h.
(md_pseudo_table): Add .word.
	(assemble_dma): Set alignment to 16 bytes.  Enable code that records
	fixups.
	(assemble_one_insn): Handle DVP_OPERAND_DMA_{ADDR,AUTOCOUNT}.
	(md_apply_fix3): Handle DVP_OPERAND_DMA_ADDR.
	(parse_dma_addr_autocount): Renamed from parse_dma_ptr_autocount.
	Rewrite.
	(eval_expr): New function.
	(create_label,create_colon_label): New function.
	(s_enddmadata): Rewrite.
1998-02-19 10:24:15 +00:00
Doug Evans
a48a6f2301 Allow FAKE arguments to have a parser handler. 1998-02-19 00:39:38 +00:00
Doug Evans
18daef646e fix thinko in last patch 1998-02-18 23:57:47 +00:00
Doug Evans
19f12fb41c * config/tc-dvp.c (parse_float): New function.
(assemble_vu): Handle loi insns.
	(assemble_one_insn): Simplify suffix parsing.
	Handle DVP_OPERAND_FLOAT.
1998-02-18 23:56:15 +00:00
Doug Evans
0c22a4c125 remove #ifdef HAVE_CPU_M32RX uses. tweak some comments 1998-02-18 02:31:57 +00:00
Nick Clifton
b86c0dd361 Only parallelise instructions when assembling for the m32rx, and when
neither instruction is relaxable.
1998-02-16 20:30:58 +00:00
Nick Clifton
c9cec4ef98 Do not bother checking the operands of instructions which have no operands! 1998-02-13 22:45:14 +00:00
Nick Clifton
8e7a5a048a Reverted writes_to_pc() back to old version of code until PC operands are
supported by cgen.
1998-02-13 21:52:13 +00:00
Nick Clifton
6cf2575a22 Parallelisation code changed to used cgen's new ins operands feature. 1998-02-13 18:01:19 +00:00
Jeff Law
9a1f316032 * config/tc-mips.c (load_address): Don't use mips III or mips IV
insns regardless of the size of a pointer if we're in mips I or
        MIPS II mode.
        (macro, macro2, s_cprestore, s_cpadd): Likewise.
Fix problems in recent code to handle address sizes more sanely.
1998-02-12 09:45:13 +00:00
Joern Rennecke
fc3c25b9e0 opcodes:
* d10v-opc.c (d10v_predefined_registers, d10v_operands, d10v_opcodes):
	Split OPERAND_ACC into OPERAND_ACC0 and OPERAND_ACC1.
	Introduce OPERAND_GPR.
	* d10v-dis.c (print_operand): Likewise.
include/opcode:
	* d10v.h (OPERAND_ACC): Split into:
	(OPERAND_ACC0, OPERAND_ACC1) .
	(OPERAND_GPR): Define.
gas/config:
	* tc-d10v.c (parallel_ok, find_opcode):
	Split OPERAND_ACC into OPERAND_ACC0 and OPERAND_ACC1.
	Introduce OPERAND_GPR.
1998-02-12 03:56:57 +00:00
Doug Evans
00aa5b172e (check_parallel_io_clash): Add #if 0'd out code that uses new operand
usage facility.
1998-02-12 01:21:31 +00:00
Doug Evans
b4cbabb879 (insert_operand): Bring over possible change from branch. 1998-02-11 23:40:43 +00:00
Andrew Cagney
14926763d6 Handle xxx@word + N. Treat it as xxx >> 2 + N. 1998-02-11 02:46:51 +00:00
Ian Lance Taylor
b073d4281c * config/tc-mips.c (append_insn): Make sure that if we have a
fixup for an unmatched %hi reloc, it does not associated with a
	variant frag.
1998-02-06 03:08:45 +00:00
Nick Clifton
89285fc92b Add checks for side effects of instructions preventing their parallelisation. 1998-02-04 23:44:58 +00:00
Ian Lance Taylor
dfe0d219ce * config/tc-sparc.h (tc_fix_adjustable) [OBJ_ELF]: A reloc against
a gas internal symbol is adjustable.
1998-02-04 20:29:30 +00:00
Doug Evans
76090fdd40 fix comment 1998-02-03 23:39:28 +00:00
Ian Lance Taylor
0e034c7751 Mon Feb 2 18:30:34 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU>
Add tms320c30 support:
	* config/tc-tic30.h: New file.
	* config/tc-tic30.c: New file.
	* config/obj-coff.h: If TC_TIC30, include coff/tic30.h and define
	TARGET_FORMAT as "coff-tic30".
	* configure.in (tic30-*-*aout*, tic30-*-*coff*): New targets.
	* Makefile.am: Rebuild dependencies.
	(CPU_TYPES): Add tic30.
	(CPU_OBJ_VALID): tic30-aout is valid.
	(TARGET_CPU_CFILES): Add config/tc-tic30.c.
	(TARGET_CPU_HFILES): Add config/tc-tic30.h.
	* configure, Makefile.in: Rebuild.
1998-02-03 00:17:20 +00:00
Nick Clifton
6d0b44264f Improve error reporting for PR14724 1998-02-02 23:44:42 +00:00
Ian Lance Taylor
32715d71b8 Mon Feb 2 12:39:05 1998 Geoff Keating <geoffk@ozemail.com.au>
* config/tc-ppc.c (md_apply_fix3): Change BFD_RELOC_HI16 and
 	BFD_RELOC_HI16_S to store the high bits of any value.

	* config/tc-ppc.h (tc_fix_adjustable): Undo change of Fri Jun 27.
	(TC_RELOC_RTSYM_LOC_FIXUP): Don't let the
	assembler calculate relocations to any external symbol at all.
	* config/tc-ppc.c (md_apply_fix3) [OBJ_ELF]: Correct bugs
	involving generation of pc-relative relocs.
	(md_pcrel_from_section) [OBJ_ELF]: The job this code used to do
	has been moved to md_apply_fix3.

	* config/tc-ppc.c (md_apply_fix3): Fix test for too-far branch.
	(ppc_elf_suffix): Warn about 'identifier+constant@got' syntax,
	which actually means (the address of identifier's GOT entry) +
	constant, which is not particularly useful.
1998-02-02 17:44:57 +00:00
Doug Evans
b6675c1a8e (md_pcrel_from_section): Add offset to delay slot for
undefined symbols.
1998-01-31 00:04:27 +00:00
James Lemke
3b2215c2ed Implement DMAcnt, DMAret & DMAend with explicit count args. 1998-01-31 00:04:26 +00:00
Ian Lance Taylor
4b02738729 * config/vms-conf.h: Don't undef VERSION. 1998-01-30 16:48:57 +00:00
Doug Evans
08847198d5 fix typo in last change 1998-01-30 12:10:00 +00:00
Doug Evans
fe9efeb6d9 * config/tc-dvp.c (md_longopts): Add -no-dma, -no-dma-pke.
(md_parse_option): Handle them.
	(md_show_usage): Print them.
	(output_dma,output_pke): New static globals.
	(md_begin): Initialize them to 1.
	(assemble_pke): Handle -no-dma-pke.
	(insert_file): Search include dir list.
	(s_enddirect): Validate length if prespecified.
	(s_endmpg): Likewise.  Handle -no-dma-pke.
	(s_endunpack): Handle -no-dma-pke.
1998-01-30 12:01:27 +00:00
Ian Lance Taylor
c412299f00 Thu Jan 29 14:42:44 1998 Pat Rankin <rankin@eql.caltech.edu>
* Makefile.am (CONFIG_OBJS): New variable, containing part of old
	OBJS variable.
	(GENERIC_OBJS): New variable, with the rest of the old OBJS
	variable.
	(OBJS): Now just $(CONFIG_OBJS) and $(GENERIC_OBJS).
	($(srcdir)/make-gas.com): Rename from make-gas.com.
	(stamp-mk.com): Replace $(OBJS) with $(GENERIC_OBJS).
	(EXTRA_DIST): Define.
	* vmsconf.sh: Handle {targ-cpu, obj-format, atof-targ} modules
	explicitly rather than via the list of object files.
	(gcc-as.opt): New file created when make-gas.com is run.
	* config-gas.com: Create {targ-cpu.h, obj-format.h, targ-env.h,
	itbl-cpu.h} to #include appropriate file rather than copying that
	file.
	* config/vms-conf.h: Synchronize with current config.in.
	* Makefile.in: Rebuild.
1998-01-29 19:48:18 +00:00
Doug Evans
d476d46aab add more direct/unpack code 1998-01-29 19:37:59 +00:00
Doug Evans
55a4759f2b * config/tc-m32r.c (allow_m32rx): Must compile with K&R C.
(m32rx support): only include #ifdef HAVE_CPU_M32RX.
1998-01-29 17:27:49 +00:00
Nick Clifton
5ffc6deeb3 Fuxed sanitization (again!) 1998-01-29 17:27:48 +00:00
Doug Evans
e1b747c4f2 checkpoint 1998-01-29 17:06:52 +00:00
Doug Evans
8dddf63f16 checkpoint 1998-01-29 13:22:46 +00:00
Doug Evans
e033023fb2 checkpoint 1998-01-29 12:37:45 +00:00
Nick Clifton
79420f9af9 Sanitization fixes. 1998-01-29 00:41:46 +00:00
Nick Clifton
ed29580469 Fix determination of when two instructions can be combined in parallel. 1998-01-29 00:29:37 +00:00
Ian Lance Taylor
f414803c3a * config/obj-aout.h (S_IS_LOCAL): Correct typo--pass argument to
S_GET_SEGMENT.
1998-01-28 19:55:40 +00:00
Doug Evans
6856244d32 checkpoint 1998-01-28 19:35:31 +00:00
Ian Lance Taylor
8fb6931a28 * config/obj-coff.h (RESOLVE_SYMBOL_REDEFINITION): Define. 1998-01-28 18:49:01 +00:00
Bill Moyer
7012071819 Added --nowarnswap arg to suppress "Swapping instructions" warning. 1998-01-28 18:20:46 +00:00
Nick Clifton
1adee2cc07 Display instruction when an insertion error is encountered. 1998-01-28 17:53:31 +00:00
Doug Evans
aa788b629f (assemble_one_insn): tweak lexing of suffix 1998-01-28 17:31:22 +00:00