Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
branch error as being done so we don't try to emit a reloc.
|
|
|
|
(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.
|
|
* expr.c (expr_build_dot): New function.
|
|
(print_symbol_value_1): Use it.
|
|
difference of undefined symbols on mn10x00 targets.
|
|
(print_expr_1): Call it.
|
|
* gas/dvp/dvp.exp: Run them.
|
|
|
|
|
|
(install_vif_length): 0 is a valid length value (= max+1).
|
|
|
|
* gas/dvp/dvp.exp: Run it.
|
|
<schwab@issan.informatik.uni-dortmund.de>
* config/tc-m68k.c (m68k_ip, case "#B"): Install the offset of the
operand in the opcode.
|
|
|
|
* gas/dvp/dvp.exp: Run it.
|
|
own fragment.
|
|
* 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.
|
|
|
|
(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).
|
|
is an error if the value can not be computed at assembly time.
* config/tc-mn10300.c (tc_gen-reloc): Likewise.
|
|
NULL. From Avery Pennarun <averyp@gdc.ca>.
|
|
|
|
|
|
|
|
(richard.earnshaw@arm.com) to fix addressing mode 2 using rrx.
Add super interworking support.
|
|
<schwab@issan.informatik.uni-dortmund.de>
* doc/as.texinfo: Use @itemx for a secondary item in a table.
* doc/c-hppa.texi: Likewise.
|
|
|
|
of REL style.
|
|
dependencies.
|
|
|
|
(.dep1): Change to work when srcdir is not an absolute path.
(.tcdep, .objdep, .dep2): Likewise.
* Makefile.in: Rebuild.
|
|
LinearAddress patch.
|
|
* configure: Rebuild.
|
|
* 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.
|
|
<schwab@issan.informatik.uni-dortmund.de>
* stabs.c (get_stab_string_offset): Always create a stab string
section.
|
|
|
|
mcf5200 just as we do for m68000.
(m68k_init_after_args): Likewise.
(md_estimate_size_before_relax): Likewise.
|
|
* 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.
|
|
we've computed the data length.
|
|
|
|
(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.
|
|
|
|
(expr_build_unary,expr_build_binary): Add prototypes.
* expr.c (expr_build_uconstant): New function.
(expr_build_unary,expr_build_binary): New functions.
|
|
<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.
|
|
* Makefile.am (DISTSTUFF): New variable.
(diststuff): New target.
* Makefile.in: Rebuild.
|
|
"cfc.i", "cfc.ni", "ctc.i", and "ctc.ni".
* gas/mips/vu0.d: Corresponding changes.
|
|
|
|
s_lcomm rather than obj_coff_lcomm.
(obj_pseudo_table): Compile .bss pseudo-op unconditionally.
|