Age | Commit message (Collapse) | Author | Files | Lines |
|
(struct fix): Forward declare.
* config/tc-sh.c (type sh_operand_info): Move to top of file.
(cons, s_align_bytes): Remove old-type declarations.
(sh_elf_suffix, parse_reg, dot, parse_exp, parse_at, get_operand,
get_operands, get_specific, insert, build_relax,
insert_loop_bounds, build_Mytes): Prototype.
(little): Make static. Prototype.
(check, tc_Nout_fix_to_chars): Delete unused functions.
|
|
* config/tc-mips.c (md_parse_option): Remove setting mips_64 via
-mgp32/mgp64.
|
|
|
|
* config.bfd: Change machine triplets from mips*el*-* to mips*el-*.
Add support for mips64.
/ChangeLog
* config.sub: Change machine triplets from mipsel*-* to mips*el-*.
Add support for mips64.
/gas/ChangeLog
* configure.in: Change machine triplets from mips-*-linux-gnu* to
mips*-*-linux*.
|
|
|
|
(alpha_elf_section_flags): New.
* config/tc-alpha.h (md_elf_section_letter): New.
(md_elf_section_flags): New.
* config/tc-ia64.c (ia64_elf_section_letter): New.
* config/tc-ia64.h (md_elf_section_letter): New.
|
|
of 'm', 'S' instead of 's'. Update bad_msg.
* config/tc-ppc.c (ppc_section_letter): Update bad_msg.
* config/tc-i370.c (i370_sectioN_letter): Update bad_msg.
|
|
|
|
and rearrange for efficiency. For "PIC code" subtraction, use
"rightseg" rather than recalculating. For "symbol OP symbol"
subtract, set "retval" to absolute_section if symbols in same
section.
* symbols.c (resolve_symbol_value): Resolve "sym +/- expr" to an
O_symbol. Simplify a +/- b code. Allow equality and non-equality
comparisons on symbols from any section. Allow other comparison
operators as for subtraction.
(symbol_equated_reloc_p): New predicate function.
* symbols.h (symbol_equated_reloc_p): Declare.
* write.c (adjust_reloc_syms): Use symbol_equated_reloc_p.
(write_relocs): Likewise.
(write_object_file): Likewise.
(relax_segment <rs_machine_dependent>): Ensure segment for
expression syms is set correctly.
* config/tc-mips.c (md_estimate_size_before_relax): Likewise.
* config/tc-i386.c (md_assemble <Output jumps>): Don't lose part
of a complex expression when setting up frag_var.
|
|
|
|
* gas/mips/mips64.d: Change to use mipsisa64.
* gas/mips/mips32.d: Change to use mipsisa32.
|
|
require_seq and allow_seq. Let !literal omit the sequence number.
(tokenize_arguments): Reject sequence numbers of !allow_seq.
|
|
section symbols the same way as externs.
|
|
|
|
Update testcases accordingly.
|
|
of R_MIPS_PC16.
* config/tc-mips.c (append_insn): Handle BFD_RELOC_16_PCREL.
(macro_build): Use BFD_RELOC_16_PCREL_S2 only for embedded
PIC, BFD_RELOC_16_PCREL for the rest.
(mips_ip): Likewise.
(md_pcrel_from): return the right offset for the differently shifted
pcrel relocs.
(md_apply_fix): Handle BFD_RELOC_16_PCREL.
* gas/mips/beq.d: Check branches to external labels.
* gas/mips/beq.s: Likewise.
* gas/mips/bge.d: Likewise.
* gas/mips/bge.s: Likewise.
* gas/mips/bgeu.d: Likewise.
* gas/mips/bgeu.s: Likewise.
* gas/mips/blt.d: Likewise.
* gas/mips/blt.s: Likewise.
* gas/mips/bltu.d: Likewise.
* gas/mips/bltu.s: Likewise.
* gas/mips/elempic.d: Switch from R_MIPS_GNU_REL16_S2 to R_MIPS_PC16.
* gas/mips/empic.d: Likewise.
* gas/mips/empic.s: Likewise.
* gas/mips/telempic.d: Likewise.
* gas/mips/tempic.d: Likewise.
|
|
relocations, tradtional variant.
|
|
(pseudo_func): Add @iplt.
(pseudo_opcode): Add data16 and data16.ua.
(md_begin): Set iplt pseudo.
(ia64_cons_fix_new): Handle 16 byte iplt reloc specially.
|
|
(MACRO_LITERAL, MACRO_BASE, MACRO_BYTOFF, MACRO_JSR): Remove.
(alpha_macros): Remove occurrences of same.
(O_lituse_addr, O_gprel): New.
(DUMMY_RELOC_LITUSE_*): New.
(s_alpha_ucons, s_alpha_arch): Prototype.
(alpha_reloc_op): Construct elements via DEF macro.
(ALPHA_RELOC_SEQUENCE_OK): Remove.
(struct alpha_reloc_tag): Rename from alpha_literal_tag; rename
members to not be literal specific.
(next_sequence_num): New.
(md_apply_fix3): Cope with missing GPDISP_LO16. Adjust for
added/removed BFD relocations.
(alpha_force_relocation, alpha_fix_adjustable): Likewise.
(alpha_adjust_symtab_relocs): Handle GPDISP relocs as well.
(tokenize_arguments): Parse ! relocations properly.
(find_macro_match): Delete unused macro argument types.
(assemble_insn): Add reloc parameter; emit that instead of the
default as appropriate.
(get_alpha_reloc_tag): New. Split from ...
(emit_insn): ... here. Allocate a reloc tag for GPDISP.
(assemble_tokens): Don't search macros if user relocation present.
Copy reloc sequence number to insn struct.
(emit_ldgp): Remove user reloc handling.
(load_expression, emit_lda, emit_ldah, emit_ir_load): Likewise.
(emit_loadstore, emit_ldXu, emit_ldil, emit_stX): Likewise.
(emit_sextX, emit_division, emit_jsrjmp, emit_retjcr): Likewise.
* config/tc-alpha.h (tc_adjust_symtab): Always define.
(struct alpha_fix_tag): Name members less literal specific.
* gas/alpha/alpha.exp: New file.
* gas/alpha/elf-reloc-1.[sd]: New test.
* gas/alpha/elf-reloc-2.[sl]: New test.
* gas/alpha/elf-reloc-3.[sl]: New test.
* gas/alpha/elf-reloc-4.[sd]: New test.
* gas/alpha/fp.exp: Remove file.
* gas/alpha/fp.s: Output to .data not .rdata.
* gas/alpha/fp.d: Adjust to match.
|
|
* gas/all/gas.exp (930509a): Expect failure on the H8/300 ELF port.
* gas/h8300/ffxx1-elf.d: Update due to recent changes to H8/300
ELF toolchain.
* gas/h8300/h8300-elf.exp: Likewise.
* gas/macros/macros.exp: Expect failure on all H8/300 ports.
* gas/vtable/vtable.exp: Do not run tests on H8/300 ELF ports.
|
|
address of two symbols in different sections.
|
|
offset match H8 ELF spec.
(md_section_align): Alternate implementation for BFD_ASSEMBLER.
(md_apply_fix): Fix argument and return types for BFD_ASSEMBLER.
|
|
Jason Eckhardt <jle@redhat.com>
* config/tc-mips.c (mips_cpu_info): Add support for mipsisa32,
5kc, and 20kc. Clean up old entries.
|
|
(build_bytes): Mark fixups for PCrel branches as signed. For
OBJ_ELF, make sure the reloc's offset points to the first byte
to be modified.
(md_convert_frag): Update definiton based on BFD_ASSEMBLER.
* tc-h8300.h (relocation mappings): Add.
|
|
(do_h8300_branch, do_h8300h_cbranch, do_h8300h_branch): Likewise.
(do_h8300s_cbranch, do_h8300s_branch, ffxx1): Likwise.
* gas/h8300/h8300-coff.exp, gas/h8300/h8300-elf.exp: New files.
* gas/h8300/branch-elf.s, gas/h8300/branchh-elf.s: Likewise.
* gas/h8300/branchs-elf.s, gas/h8300/ffxx1-elf.d: Likewise.
* gas/h8300/ffxx1-elf.s: Likewise.
* gas/h8300/branch.s, gas/h8300/branchh.s: Move to:
* gas/h8300/branch-coff.s, gas/h8300/branchh-coff.s
* gas/h8300/branchs.s, gas/h8300/ffxx1.d: Move to:
* gas/h8300/branchs-coff.s, gas/h8300/ffxx1-coff.d .
* gas/h8300/ffxx1.s: Move to:
* gas/h8300/ffxx1-coff.s .
|
|
|
|
* tc-h8300.c (tc_crawl_symbol_chain, tc_headers_hook): Don't
define for BFD_ASSEMBLER.
(tc_reloc_mangle): Likewise.
(tc_gen_reloc): New function for BFD_ASSEMBLER.
More of Joern's patches with minor changes s/OBJ_ELF/BFD_ASSEMBLER/
|
|
assorted coff relocations to the corresponding elf relocations.
* tc-h8300.h (TARGET_ARCH, TARGET_FORMAT): Define appropriately.
More of Joern's patches.
|
|
if BFD_ASSEMBLER is defined.
(h8300smode, md_begin): Similarly.
|
|
* configure.in (i[3456]86-*-rtems*, m68*-*-rtems*): Change
default from coff to elf.
* configure: Regenerate.
|
|
where mismatch occurs due to regexp mismatch.
Another patch from Joern.
|
|
* configure: Regenerate.
Checking in parts of Joern's patch.
|
|
|
|
docuemntation to reflect reality.
|
|
(macro): Reflect change to MAX_GPREL_OFFSET.
|
|
* gas/ppc/astest64.s: New.
* gas/ppc/astest64.d: New.
* gas/ppc/astest2_64.s: New.
* gas/ppc/astest2_64.d: New.
* gas/ppc/test1elf.asm: New.
* gas/ppc/test1xcoff.asm: New.
* gas/ppc/generate.sh: New. Generate new files below from above .asm
* gas/ppc/test1elf32.s: New.
* gas/ppc/test1elf32.d: New.
* gas/ppc/test1elf64.s: New.
* gas/ppc/test1elf64.d: New.
* gas/ppc/test1xcoff32.s: New.
* gas/ppc/test1xcoff32.d: New.
* gas/ppc/ppc.exp: Run new tests.
* gas/ppc/simpshft.s: Tweak align now that we get nops.
|
|
* configure: Regenerate.
* config/tc-ppc.c (PPC_LO, PPC_HI, PPC_HA, PPC_HIGHER,
PPC_HIGHERA, PPC_HIGHEST, PPC_HIGHESTA, SEX16): New macros.
(md_assemble): Use them.
(ppc_machine): Support stub for ELF64 as well as XCOFF.
(md_pseudo_table): Add "llong", "quad".
(md_parse_option): Match default_cpu of powerpc*.
(ppc_arch): Likewise.
(ppc_subseg_align): Only for OBJ_XCOFF.
(ppc_target_format): Return elf64-powerpc strings for 64 bit ELF.
(md_begin): Select PPC_OPCODE_64 for 64 bit.
(ppc_insert_operand): Don't bother testing 'file' before calling
as_bad_where. Use as_bad_where for operand->insert errors.
(mapping): Add ELF64 relocation modifiers.
(ppc_elf_suffix): Replace symbol on BFD_RELOC_PPC64_TOC reloc
expressions with abs_symbol.
(ppc_elf_cons): Correct offset for little endian targets.
(ppc_elf_frob_symbol): New.
(md_assemble): Add support for 64 bit ELF relocs.
(ppc_tc): Ensure 8 byte alignment when 64 bit.
(ppc_is_toc_sym): Only define for OBJ_XCOFF and OBJ_ELF. Match
".toc" section for 64 bit ELF.
(ppc_fix_adjustable): New. Macro body moved from tc-ppc.h.
(md_apply_fix3): Silence warning with ATTRIBUTE_UNUSED. Only do
the ppc_is_toc_sym check for OBJ_XCOFF and OBJ_ELF. For 64 bit,
use BFD_RELOC_PPC64_TOC16_DS instead of BFD_RELOC_PPC_TOC16.
Expand on comments, error message. Add support for 64 bit relocs,
and use PPC_HI etc. macros.
* config/tc-ppc.h (MAX_MEM_FOR_RS_ALIGN_CODE): Define.
(HANDLE_ALIGN): Define to generate nops in code sections rather
than zeros.
(TC_FORCE_RELOCATION): Force for BFD_RELOC_PPC64_TOC.
(ELF_TC_SPECIAL_SECTIONS): Add 64 bit ELF sections.
(tc_fix_adjustable): Move body of macro to tc-ppc.c.
(ppc_fix_adjustable): Declare.
(tc_frob_symbol): Define.
(ppc_elf_frob_symbol): Declare.
|
|
(md_gather_operands): Make static.
|
|
value, not the word beyond maximum.
* tc_mips.c (macro_build_lui): Code cleanup.
(macro): Reflect change to MAX_GPREL_OFFSET.
(mips_ip): Check explicitly against S_EX_NONE.
(my_get_SmallExpression): parse for %gp_rel, not %gprel.
(md_apply_fix): Code cleanup.
|
|
mips.
* gas/mips/mips.exp: Likewise. Use traditional testcases for
mips${el}16-f if needed.
* gas/mips/elempic.d: New file, testcase for little endian empic.
* gas/mips/elfel-rel2.d: Don't test trailing zeroes in dump.
* gas/mips/mips16-f.d: Use non-traditional symbol sorting.
* gas/mips/mipsel16-f.d: Likewise.
* gas/mips/mipsel16-e.d: New file, testcase for little endian MIPS16
relocations.
* gas/mips/tmipsel16-f.d: New file, testcase for little endian MIPS16
relocations, traditional variant.
|
|
|
|
* config/obj-elf.c (obj_elf_size): When size is constant, free
and clear symbol_get_obj(sym)->size if any.
|
|
and -mipsN option, continue with default ISA.
|
|
traditional/non-traditional names as it is done in mips_target_format.
|
|
* config/tc-alpha.c (md_apply_fix3): Rename from md_apply_fix;
use seg parameter instead of now_seg.
|
|
* config/tc-mips.c (show): Add the missing prototype.
|
|
return values.
(mips_ip): Use the new return values instead of characters. Add
support for %higher and %highest.
(LP): Remove.
(RP): Remove.
(my_getSmallExpression): Make parsing case insensitive and more
reliable. Add support for %higher and %highest. Further support to
parse %gprel and %neg is implemented but currently deactivated.
|
|
* gas/sparc/unalign.d: Support Sparc V9.
|
|
(ecoff_build_symbols): Likewise.
* read.c (s_lcomm_internal): Fix signed/unsigned warning.
|
|
|