aboutsummaryrefslogtreecommitdiff
path: root/gas/config
AgeCommit message (Collapse)AuthorFilesLines
2007-06-062007-06-06 Paul Brook <paul@codesourcery.com>Paul Brook1-2/+12
gas/ * config/tc-arm.c (s_align): Pad code sections appropriately. gas/testsuite/ * gas/arm/thumb.d: Update expected output. * gas/arm/thumb2_relax.d: Ditto.
2007-06-052007-06-05 Paul Brook <paul@codesourcery.com>Paul Brook1-2/+2
gas/ * config/tc-arm.c (insns): Correct Thumb-2 ldrd/strd opcodes. gas/testsuite/ * gas/arm/thumb32.d: Add writeback addressing mode tests. * gas/arm/thumb32.s: Update expected output. opcodes/ * arm-dis.c (thumb32_opcodes): Display writeback ldrd/strd addresses.
2007-06-05Patch for PR4587 + move proc run_list_test into gas-defs.expNick Clifton1-3/+7
2007-06-05 * config/tc-spu.c (spu_cons): Use deferred_expression. HandleAlan Modra2-4/+21
number@ppu. (tc_gen_reloc): Abort if neither addsy or subsy is set. (md_apply_fix): Don't attempt to resolve SPU_PPU relocs. * config/tc-spu.h (md_operand): Handle @ppu without sym.
2007-05-312007-05-31 Paul Brook <paul@codesourcery.com>Paul Brook1-1/+1
gas/ * config/tc-arm.c (insns): Allow strex on M profile cores.
2007-05-29gas/Jakub Jelinek1-7/+7
2007-05-29 David S. Miller <davem@davemloft.net> Jakub Jelinek <jakub@redhat.com> PR gas/4558 * config/tc-sparc.c (md_apply_fix): Fix relocation overflow checks for BFD_RELOC_SPARC_WDISP16 and BFD_RELOC_SPARC_WDISP19. gas/testsuite/ 2007-05-29 Jakub Jelinek <jakub@redhat.com> PR gas/4558 * gas/sparc/sparc.exp: Add v9branch{1,2,3,4,5} tests. * gas/sparc/v9branch1.d: New test. * gas/sparc/v9branch1.s: New. * gas/sparc/v9branch2.d: New test. * gas/sparc/v9branch2.s: New. * gas/sparc/v9branch3.d: New test. * gas/sparc/v9branch3.s: New. * gas/sparc/v9branch4.d: New test. * gas/sparc/v9branch4.s: New. * gas/sparc/v9branch5.d: New test. * gas/sparc/v9branch5.s: New.
2007-05-29 * config/tc-spu.h: Wrap in #ifndef/#endif. Delete coff macros.Alan Modra1-38/+3
2007-05-29 * config/tc-ppc.c: Convert to ISO C.Alan Modra2-267/+162
* config/tc-ppc.c: Likewise.
2007-05-26 * config/tc-ppc.c (ppc_insert_operand): Truncate sign bits inAlan Modra1-33/+37
top 32 bits of 64 bit value if so doing results in passing range check. Rewrite sign extension fudges similarly. Enable fudges for powerpc64 too. Report user value if range check fails rather than fudged value. Negate PPC_OPERAND_NEGATIVE range rather than value, also to report user value on failure.
2007-05-252007-03-25 Paul Brook <paul@codesourcery.com>Paul Brook1-1/+27
gas/ * config/tc-arm.c (T2_SUBS_PC_LR): Define. (do_t_add_sub): Correctly encode subs pc, lr, #const. (do_t_mov_cmp): Correctly encode movs pc, lr. gas/testsulte/ * gas/arm/thumb32.s: Add tests for subs pc, lr. * gas/arm/thumb32.d: Change error-output: to stderr:. Update expected output.
2007-05-18 * config/tc-mips.c (s_mipsset): Use generic s_set for directivesJoseph Myers1-0/+8
containing a comma.
2007-05-17 * config/tc-m68k.c (md_apply_fix): Show value of out of rangeNathan Sidwell1-35/+47
fixups in error message. (md_conver_frag_1): Propagate the fix source location and use as_bad_where rather than fatal, for better error messages.
2007-05-162007-05-16 Paul Brook <paul@codesourcery.com>Paul Brook1-14/+15
* config/tc-arm.c (v7m_psrs): Add uppercase PSR names and xpsr.
2007-05-15 PR gas/3041Nick Clifton1-3/+5
* config/tc-m68k.c (relaxable_symbol): Make sure that the correct addend is stored for relocs against weak symbols. (md_apply_fix): So not loose track of addend for relocs against weak symbols. * testsuite/gas/m68k/p3041.s: New test case. * testsuite/gas/m68k/p3041.d: New expected disassembly. * testsuite/gas/m68k/all.exp: Run new test for m68k-*-netbsd toolchains. Only run arch-cpu-1 test for ELF based toolchains. Tidy ups for m68k-netbsd gas toolchain: * testsuite/gas/m68k/cpu32.d: Allow for extra text after expected disassembly. * testsuite/gas/m68k/mcf-trap.d: Allow for alternative trap mnemonics. * testsuite/gas/m68k/br-isab.d: Fix name of test. * testsuite/gas/m68k/br-isac.d: Fix name of test.
2007-05-14 * config/tc-mips.c (md_parse_option): Fix parsing of -O option.Thiemo Seufer1-1/+1
2007-05-142007-05-14 Mei Ligang <ligang@sunnorth.com.cn>Mei Ligang1-40/+74
* config/tc-score.c (data_op2, validate_immediate): Fix bug for addri, addri.c, subi, and subi.c when immediate number is hex. (score_insns): Remove subis and subis.c. (do_sub_rdi16): Delete.
2007-05-11include/elf/Alan Modra2-19/+75
* spu.h (R_SPU_PPU32, R_SPU_PPU64): Define. bfd/ * reloc.c (BFD_RELOC_SPU_PPU32, BFD_RELOC_SPU_PPU64): Define. * elf-bfd.h (struct elf_backend_data): Change return type of elf_backend_relocate_section to int. * elf32-spu.c (elf_howto_table): Add howtos for R_SPU_PPU32 and R_SPU_PPU64. (spu_elf_bfd_to_reloc_type): Convert new relocs. (spu_elf_count_relocs): New function. (elf_backend_count_relocs): Define. (spu_elf_relocate_section): Arrange to emit R_SPU_PPU32 and R_SPU_PPU64 relocs. * elflink.c (elf_link_input_bfd): Emit relocs if relocate_section returns 2. * bfd-in2.h: Regenerate. * libbfd.h: Regenerate. gas/ * config/tc-spu.c (md_pseudo_table): Add int, long, quad. Call spu_cons for word. (md_assemble): Tidy use of insn.flag. (get_imm): Likewise. Handle uppercase input too. (spu_cons): New function. * config/tc-spu.h (tc_fix_adjustable): Don't adjust SPU_PPU relocs. (TC_FORCE_RELOCATION): Don't resolve them either. binutils/ * embedspu.sh (find_prog): Prefer prog in same dir as embedspu over one found on the users path. (main): Generate .reloc for each R_SPU_PPU* reloc.
2007-05-05 gas/Mark Shinwell1-1/+1
* config/tc-arm.c (md_apply_fix): Generate more accurate diagnostic when 8-bit immediate range is exceeded for BFD_RELOC_ARM_OFFSET_IMM8.
2007-05-04 PR gas/4460Alan Modra1-6/+6
* config/tc-i386.c (lex_got): Don't replace the reloc token with a space if we already have a space.
2007-05-03gas/H.J. Lu1-4/+14
2007-05-03 H.J. Lu <hongjiu.lu@intel.com> * config/tc-i386.c (match_template): Don't explicitly check suffix for crc32 in Intel mode. (process_suffix): Issue an error for crc32 if the operand size is ambiguous. gas/testsuite/ 2007-05-03 H.J. Lu <hongjiu.lu@intel.com> * gas/i386/crc32-intel.d: Updated. * gas/i386/crc32.d: Likewise. * gas/i386/sse4_2.d: Likewise. * gas/i386/x86-64-crc32-intel.d: Likewise. * gas/i386/x86-64-crc32.d: Likewise. * gas/i386/x86-64-sse4_2.d: Likewise. * gas/i386/crc32.s: Remove crc32 instructions with ambiguous operand size and suffix in crc32 instructions in Intel mode. * gas/i386/x86-64-crc32.s: Likewise. * gas/i386/sse4_2.s: Remove crc32 instructions with ambiguous operand size. * gas/i386/x86-64-sse4_2.s: Likewise. * gas/i386/i386.exp: Run inval-crc32 and x86-64-inval-crc32. * gas/i386/inval-crc32.l: New. * gas/i386/inval-crc32.s: Likewise. * gas/i386/x86-64-inval-crc32.l: Likewise. * gas/i386/x86-64-inval-crc32.s: Likewise. opcodes/ 2007-05-03 H.J. Lu <hongjiu.lu@intel.com> * i386-dis.c (CRC32_Fixup): Don't print suffix in Intel mode. * i386-opc.c (i386_optab): Remove IgnoreSize and correct operand type for crc32.
2007-05-03PR gas/3041Nick Clifton1-2/+18
* gas/config/tc-m68k.c (relaxable_symbol): Do not relax weak symbols. (tc_gen_reloc): Adjust the addend of relocs against weak symbols. (md_apply_fix): Put zero values into the frags referencing weak symbols. * bfd/aoutx.h (swap_std_reloc_out): Treat relocs against weak symbols in the same way as relocs against external symbols.
2007-05-02gas/Alan Modra1-4/+1
PR 4448 * config/tc-ppc.c (ppc_insert_operand): Don't increase min for PPC_OPERAND_PLUS1. include/opcode/ * ppc.h (PPC_OPERAND_PLUS1): Update comment.
2007-05-01gas/config/H.J. Lu1-1/+9
2007-05-01 H.J. Lu <hongjiu.lu@intel.com> * config/tc-i386.c (match_template): Check suffix for crc32 in Intel mdoe. (process_suffix): Default the suffix of 8bit crc32 to BYTE_MNEM_SUFFIX. (check_byte_reg): Skip check for 8bit crc32. gas/testsuite/ 2007-05-01 H.J. Lu <hongjiu.lu@intel.com> * gas/i386/crc32-intel.d: New file. * gas/i386/crc32.d:Likewise. * gas/i386/crc32.s:Likewise. * gas/i386/x86-64-crc32-intel.d:Likewise. * gas/i386/x86-64-crc32.d:Likewise. * gas/i386/x86-64-crc32.s:Likewise. * gas/i386/i386.exp: Run crc32, crc32-intel, x86-64-crc32 and x86-64-crc32-intel. opcodes/ 2007-05-01 H.J. Lu <hongjiu.lu@intel.com> * i386-dis.c (CRC32_Fixup): Properly handle Intel mode and check data size prefix in 16bit mode. * i386-opc.c (i386_optab): Default crc32 to non-8bit and support Intel mode.
2007-04-302007-04-30 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu1-16/+29
* config/tc-i386.c (md_assemble): Use register_prefix in error/warning message. (check_byte_reg): Likewise. (check_long_reg): Likewise. (check_qword_reg): Likewise. (check_word_reg): Likewise. (process_operands): Likewise.
2007-04-30opcodes/Alan Modra1-3/+2
PR 4436 * ppc-opc.c (powerpc_operands): Correct bitm for second entry of MBE. gas/ PR 4436 * config/tc-ppc.c (ppc_insert_operand): Disable range check if min > max.
2007-04-28 * config/tc-mips.c: Fix comment.Thiemo Seufer1-1/+1
2007-04-26 * config/tc-avr.c (mcu_types): Add support for atmega8hva andDenis Chertykov1-1/+3
atmega16hva devices. Move at90usb82 device to 'avr5' architecture. * doc/c-avr.texi: Document new devices.
2007-04-23 gas/testsuite/Nathan Sidwell1-16/+57
* gas/m68k/br-isaa.s: New. * gas/m68k/br-isaa.d: New. * gas/m68k/br-isab.s: New. * gas/m68k/br-isab.d: New. * gas/m68k/br-isac.s: New. * gas/m68k/br-isac.d: New. * gas/m68k/all.exp: Adjust. gas/ * config/tc-m68k.c (mcf54455_ctrl): New. (HAVE_LONG_DISP, HAVE_LONG_CALL, HAVE_LONG_COND): New. (m68k_archs): Add isac. (m68k_cpus): Add 54455 family. (m68k_ip): Split Bg into Bb, Bs, Bg. (m68k_elf_final_processing): Add ISA_C. * doc/c-m68k.texi (M680x0 Options): Add isac. include/opcode/ * m68k.h (mcfisa_c): New. (mcfusp, mcf_mask): Adjust. bfd/ * archures.c (bfd_mach_mcf_isa_c, bfd_mach_mcf_isa_c_mac, bfd_mach_mcf_isa_c_emac): New. * elf32-m68k.c (ISAC_PLT_ENTRY_SIZE, elf_isac_plt0_entry, elf_isac_plt_entry, elf_isac_plt_info): New. (elf32_m68k_object_p): Add ISA_C. (elf32_m68k_print_private_bfd_data): Print ISA_C. (elf32_m68k_get_plt_info): Detect ISA_C. * cpu-m68k.c (arch_info): Add ISAC. (m68k_arch_features): Likewise, (bfd_m68k_compatible): ISAs B & C are not compatible. opcodes/ * m68k-opc.c: Mark mcfisa_c instructions.
2007-04-21 * config/atof-vax.c (atof_vax_sizeof): Change return type to unsigned.Alan Modra6-18/+9
(md_atof): Make number_of_chars unsigned. Revert last change. * config/tc-or32.c (md_apply_fix): Delete bogus assertions. * config/tc-sh.c (sh_optimize_expr): Only define for OBJ_ELF. * config/tc-sh.h (md_optimize_expr): Likewise. * config/tc-sh64.c (shmedia_md_pcrel_from_section): Delete bogus assertion. * config/tc-xtensa.c (convert_frag_immed_finish_loop): Likewise.
2007-04-21* config/atof-vax.c (md_atof): Fix comparison inside know().Nick Clifton1-1/+1
2007-04-21Fix typo.Nick Clifton1-1/+1
2007-04-21gas/Alan Modra2-4/+6
* expr.c (expr): Assert on rankarg, not rank which can be unsigned. * read.c (read_a_source_file): Remove buffer_limit[-1] assertion. Don't skip over NUL char. (pseudo_set): Set X_op for registers to O_register. * symbols.c (symbol_clone): Remove assertion that sym is defined. (resolve_symbol_value): Resolve O_register symbols. * config/tc-i386.c (parse_real_register): Don't use i386_float_regtab. Instead find st(0) by hash lookup. * config/tc-ppc.c (ppc_macro): Warning fix. opcodes/ * i386-opc.c (i386_float_regtab, i386_float_regtab_size): Delete. Move contents to.. (i386_regtab): ..here. * i386-opc.h (i386_float_regtab, i386_float_regtab_size): Delete.
2007-04-21 * as.h (ENABLE_CHECKING): Default define to 0.Alan Modra1-40/+56
(know): Assert if ENABLE_CHECKING. (struct relax_type): Remove superfluous declaration. * configure.in (--enable-checking): New. * configure: Regenerate. * config.in: Regenerate. * config/tc-ppc.c (ppc_setup_opcodes): Do checks when ENABLE_CHECKING. Check for duplicate powerpc_operands entries.
2007-04-20 * config/tc-m68k.c (mcf5253_ctrl): New.Nathan Sidwell1-0/+12
(mcf52223_ctrl): New. (m68k_cpus): Add 5253, 52221, 52223.
2007-04-20 gas/Nathan Sidwell2-23/+44
* config/m68k-parse.h (RAMBAR_ALT): New. * config/tc-m68k.c (mcf5206_ctrl, mcf5307_ctrl): New. (mcf_ctrl, mcf5208_ctrl, mcf5210a_ctrl, mcf5213_ctrl, mcf52235_ctrl, mcf5225_ctrl, mcf5235_ctrl, mcf5271_ctrl, mcf5275_ctrl, mcf5282_ctrl, mcf5329_ctrl, mcf5373_ctrl, mcfv4e_ctrl, mcf5475_ctrl, mcf5485_ctrl): Add RAMBAR synonym for RAMBAR1. (mcf5272_ctrl): Add RAMBAR0, replace add RAMBAR with RAMBAR_ALT. (m68k_cpus): Adjust 5206, 5206e & 5307 entries. (m68k_ip) <Case J>: Detect when RAMBAR_ALT should be used. Add it to control register mapping. gas/testsuite/ * gas/m68k/ctrl-1.d, gas/m68k/ctrl-1.s: New. * gas/m68k/ctrl-2.d, gas/m68k/ctrl-2.s: New. * gas/m68k/all.exp: Add them. opcodes/ * m68k-dis.c (print_insn_arg): Show c04 as rambar0 and c05 as rambar1.
2007-04-20 * messages.c (as_internal_value_out_of_range): Fix typo inAlan Modra1-2/+2
error message. Return after printing domain error. * config/tc-ppc.c (ppc_insert_operand): Preserve low zero bits in max when shifting right.
2007-04-20include/opcode/Alan Modra1-50/+103
* ppc.h (struct powerpc_operand): Replace "bits" with "bitm". (num_powerpc_operands): Declare. (PPC_OPERAND_SIGNED et al): Redefine as hex. (PPC_OPERAND_PLUS1): Define. opcodes/ * ppc-dis.c (print_insn_powerpc): Adjust for struct powerpc_operand change. * ppc-opc.c (powerpc_operands): Replace bit count with bit mask in all entries. Add PPC_OPERAND_SIGNED to DE entry. Remove references to following deleted functions. (insert_bd, extract_bd, insert_dq, extract_dq): Delete. (insert_ds, extract_ds, insert_de, extract_de): Delete. (insert_des, extract_des, insert_li, extract_li): Delete. (insert_nb, insert_rsq, insert_rtq, insert_ev2, extract_ev2): Delete. (insert_ev4, extract_ev4, insert_ev8, extract_ev8): Delete. (num_powerpc_operands): New constant. (XSPRG_MASK): Remove entire SPRG field. (powerpc_opcodes <bcctre, bcctrel>): Use XLBB_MASK not XLYBB_MASK. gas/ * messages.c (as_internal_value_out_of_range): Extend to report errors for values with invalid low bits set. * config/tc-ppc.c (ppc_setup_opcodes): Check powerpc_operands bitm fields. Check that operands and opcode fields are disjoint. (ppc_insert_operand): Check operands using mask rather than bit count. Check low bits too. Handle PPC_OPERAND_PLUS1. Adjust insertion code. (md_apply_fix): Adjust for struct powerpc_operand change.
2007-04-192007-04-19 Paul Brook <paul@codesourcery.com>Paul Brook1-0/+13
gas/testsuite/ * gas/arm/thumb1_unified.d: New test. * gas/arm/thumb1_unified.s: New test. gas/ * config/tc-arm.c (md_assemble): Only allow 16-bit instructions on Thumb-1. Add sanity check for bogus relaxations.
2007-04-192007-04-19 Paul Brook <paul@codesourcery.com>Paul Brook1-2/+4
gas/ * config/tc-arm.c (insns): Allow rsb and rsbs on Thumb-1.
2007-04-18gas/H.J. Lu1-17/+36
2007-04-18 H.J. Lu <hongjiu.lu@intel.com> * config/tc-i386.c (cpu_arch): Add .sse4.2 and .sse4. (match_template): Handle operand size for crc32 in SSE4.2. (process_suffix): Handle operand type for crc32 in SSE4.2. (output_insn): Support SSE4.2. gas/testsuite/ 2007-04-18 H.J. Lu <hongjiu.lu@intel.com> * gas/i386/i386.exp: Add sse4.2 and x86-64-sse4.2. * gas/i386/sse4_2.d: New file. * gas/i386/sse4_2.s: Likewise. * gas/i386/x86-64-sse4_2.d: Likewise. * gas/i386/x86-64-sse4_2.s: Likewise. opcodes/ 2007-04-18 H.J. Lu <hongjiu.lu@intel.com> * i386-dis.c (CRC32_Fixup): New. (PREGRP85, PREGRP86, PREGRP87, PREGRP88, PREGRP89, PREGRP90, PREGRP91): New. (threebyte_0x38_uses_DATA_prefix): Updated for SSE4.2. (threebyte_0x3a_uses_DATA_prefix): Likewise. (prefix_user_table): Add PREGRP85, PREGRP86, PREGRP87, PREGRP88, PREGRP89, PREGRP90 and PREGRP91. (three_byte_table): Likewise. * i386-opc.c (i386_optab): Add SSE4.2 opcodes. * gas/config/tc-i386.h (CpuSSE4_2): New. (CpuSSE4): Likewise. (CpuUnknownFlags): Add CpuSSE4_2.
2007-04-18gas/H.J. Lu1-14/+48
2007-04-18 H.J. Lu <hongjiu.lu@intel.com> * config/tc-i386.c (cpu_arch): Add .sse4.1. (process_operands): Adjust implicit operand for blendvpd, blendvps and pblendvb in SSE4.1. (output_insn): Support SSE4.1. gas/testsuite/ 2007-04-18 H.J. Lu <hongjiu.lu@intel.com> * gas/i386/i386.exp: Add sse4.1 and x86-64-sse4.1. * gas/i386/sse4_1.d: New file. * gas/i386/sse4_1.s: Likewise. * gas/i386/x86-64-sse4_1.d: Likewise. * gas/i386/x86-64-sse4_1.s: Likewise. opcodes/ 2007-04-18 H.J. Lu <hongjiu.lu@intel.com> * i386-dis.c (XMM_Fixup): New. (Edqb): New. (Edqd): New. (XMM0): New. (dqb_mode): New. (dqd_mode): New. (PREGRP39 ... PREGRP85): New. (threebyte_0x38_uses_DATA_prefix): Updated for SSE4. (threebyte_0x3a_uses_DATA_prefix): Likewise. (prefix_user_table): Add PREGRP39 ... PREGRP85. (three_byte_table): Likewise. (putop): Handle 'K'. (intel_operand_size): Handle dqb_mode, dqd_mode): (OP_E): Likewise. (OP_G): Likewise. * i386-opc.c (i386_optab): Add SSE4.1 opcodes. * i386-opc.h (CpuSSE4_1): New. (CpuUnknownFlags): Add CpuSSE4_1. (regKludge): Update comment.
2007-04-182007-04-18 Paul Brook <paul@codesourcery.com>Paul Brook1-2/+31
gas/testsuite/ * gas/arm/thumb2_add.s: Add rsb #0 test. * gas/arm/thumb2_add.d: Update expected output. gas/ * config/tc-arm.c (do_t_rsb): Use 16-bit encoding when possible.
2007-04-16 * config/tc-sh.c (sh_handle_align): Call as_bad_where insteadKaz Kojima1-1/+1
of as_warn_where for misaligned data.
2007-04-15 * config/tc-sh.c (align_test_frag_offset_fixed_p): HandleKaz Kojima1-4/+12
rs_fill frags.
2007-04-14 * config/tc-sh.c (align_test_frag_offset_fixed_p): New.Kaz Kojima2-0/+89
(sh_optimize_expr): Likewise. * config/tc-sh.h (md_optimize_expr): Define. (sh_optimize_expr): Prototype.
2007-04-062007-04-06 Matt Thomas <matt@netbsd.org>Matt Thomas2-0/+147
* config/tc-vax.c (vax_cons): Added to support %pcrel{8,16,32}(exp) to emit pcrel relocations by DWARF2 in non-code sections. Borrowed heavily from tc-sparc.c. (vax_cons_fix_new): Likewise.
2007-04-04 * config/tc-m68k.c (HAVE_LONG_BRANCH): Add fido_a.Kazu Hirata1-1/+1
2007-04-042007-04-04 Paul Brook <paul@codesourcery.com>Paul Brook1-2/+3
gas/ * config/tc-arm.c (do_neon_ext): Enforce immediate range. (insns): Use I15 for vext. gas/testsute/ * gas/arm/neon-cov.s: Add new vext test. * gas/arm/neon-cov.d: Ditto.
2007-04-02 * config/tc-xtensa.c (xtensa_flush_pending_output): CheckBob Wilson1-0/+9
outputting_stabs_line_debug.
2007-04-02 * config/tc-avr.c (mcu_types): Add support for at90pwm1, at90usb82,Denis Chertykov1-0/+7
at90usb162, atmega325p, atmega329p, atmega3250p and atmega3290p devices. * doc/c-avr.texi: Document new devices.