aboutsummaryrefslogtreecommitdiff
path: root/gas
AgeCommit message (Collapse)AuthorFilesLines
2011-06-15 * NEWS: Mention addition of TILEPRO and TIKE-Gx support.Nick Clifton2-1/+6
2011-06-14gas/Tristan Gingold5-50/+39
2011-06-14 Tristan Gingold <gingold@adacore.com> * config/tc-ppc.h (struct ppc_tc_sy): Complete comment on within. (tc_new_dot_label): Define. (ppc_new_dot_label): Declare. * config/tc-ppc.c (ppc_frob_label): Set within target field. (ppc_fix_adjustable): Use this field to adjust the reloc. (ppc_new_dot_label): New function. gas/testsuite/ 2011-06-14 Tristan Gingold <gingold@adacore.com> * gas/ppc/test1xcoff32.d: Adjust for csect anchor.
2011-06-14 * po/POTFILES.in: Regenerate.Alan Modra2-0/+8
2011-06-13 * Makefile.am (ALL_MACHINES): Add cpu-tilegx.lo and cpu-tilepro.lo.Nick Clifton23-0/+42624
(ALL_MACHINE_CFILES): Add cpu-tilegx.c and cpu-tilepro.c. (BFD32_BACKENDS): Add elf32-tilegx.lo, elf32-tilepro.lo, and elfxx-tilegx.lo. (BFD32_BACKENDS_CFILES): Add elf32-tilegx.c elf32-tilepro.c, and elfxx-tilegx.c. (BFD64_BACKENDS): Add elf64-tilegx.lo. (BFD64_BACKENDS_CFILES): Add elf64-tilegx.c. * Makefile.in: Regenerate. * arctures.c (bfd_architecture): Define bfd_arch_tilepro, bfd_arch_tilegx, bfd_mach_tilepro, bfd_mach_tilegx. (bfd_arch_info): Add bfd_tilegx_arch, bfd_tilepro_arch. (bfd_archures_list): Add bfd_tilegx_arch, bfd_tilepro_arch. bfd-in2.h: Regenerate. * config.bfd: Handle tilegx-*-* and tilepro-*-*. * configure.in: Handle bfd_elf32_tilegx_vec, bfd_elf32_tilepro_vec, and bfd_elf64_tilegx_vec. * configure: Regenerate. * elf-bfd.h (enum elf_target_id): Define TILEGX_ELF_DATA and TILEPRO_ELF_DATA. * libbfd.h: Regenerate. * reloc.c: Add BFD_RELOC_TILEPRO_{COPY, GLOB_DAT, JMP_SLOT, RELATIVE, BROFF_X1, JOFFLONG_X1, JOFFLONG_X1_PLT, IMM8_X0, IMM8_Y0, IMM8_X1, IMM8_Y1, DEST_IMM8_X1, MT_IMM15_X1, MF_IMM15_X1, IMM16_X0, IMM16_X1, IMM16_X0_LO, IMM16_X1_LO, IMM16_X0_HI, IMM16_X1_HI, IMM16_X0_HA, IMM16_X1_HA, IMM16_X0_PCREL, IMM16_X1_PCREL, IMM16_X0_LO_PCREL, IMM16_X1_LO_PCREL, IMM16_X0_HI_PCREL, IMM16_X1_HI_PCREL, IMM16_X0_HA_PCREL, IMM16_X1_HA_PCREL, IMM16_X0_GOT, IMM16_X1_GOT, IMM16_X0_GOT_LO, IMM16_X1_GOT_LO, IMM16_X0_GOT_HI, IMM16_X1_GOT_HI, IMM16_X0_GOT_HA, IMM16_X1_GOT_HA, MMSTART_X0, MMEND_X0, MMSTART_X1, MMEND_X1, SHAMT_X0, SHAMT_X1, SHAMT_Y0, SHAMT_Y1, IMM16_X0_TLS_GD, IMM16_X1_TLS_GD, IMM16_X0_TLS_GD_LO, IMM16_X1_TLS_GD_LO, IMM16_X0_TLS_GD_HI, IMM16_X1_TLS_GD_HI, IMM16_X0_TLS_GD_HA, IMM16_X1_TLS_GD_HA, IMM16_X0_TLS_IE, IMM16_X1_TLS_IE, IMM16_X0_TLS_IE_LO, IMM16_X1_TLS_IE_LO, IMM16_X0_TLS_IE_HI, IMM16_X1_TLS_IE_HI, IMM16_X0_TLS_IE_HA, IMM16_X1_TLS_IE_HA, TLS_DTPMOD32, TLS_DTPOFF32, TLS_TPOFF32} Add BFD_RELOC_TILEGX_{HW0, HW1, HW2, HW3, HW0_LAST, HW1_LAST, HW2_LAST, COPY, GLOB_DAT, JMP_SLOT, RELATIVE, BROFF_X1, JUMPOFF_X1, JUMPOFF_X1_PLT, IMM8_X0, IMM8_Y0, IMM8_X1, IMM8_Y1, DEST_IMM8_X1, MT_IMM14_X1, MF_IMM14_X1, MMSTART_X0, MMEND_X0, SHAMT_X0, SHAMT_X1, SHAMT_Y0, SHAMT_Y1, IMM16_X0_HW0, IMM16_X1_HW0, IMM16_X0_HW1, IMM16_X1_HW1, IMM16_X0_HW2, IMM16_X1_HW2, IMM16_X0_HW3, IMM16_X1_HW3, IMM16_X0_HW0_LAST, IMM16_X1_HW0_LAST, IMM16_X0_HW1_LAST, IMM16_X1_HW1_LAST, IMM16_X0_HW2_LAST, IMM16_X1_HW2_LAST, IMM16_X0_HW0_PCREL, IMM16_X1_HW0_PCREL, IMM16_X0_HW1_PCREL, IMM16_X1_HW1_PCREL, IMM16_X0_HW2_PCREL, IMM16_X1_HW2_PCREL, IMM16_X0_HW3_PCREL, IMM16_X1_HW3_PCREL, IMM16_X0_HW0_LAST_PCREL, IMM16_X1_HW0_LAST_PCREL, IMM16_X0_HW1_LAST_PCREL, IMM16_X1_HW1_LAST_PCREL, IMM16_X0_HW2_LAST_PCREL, IMM16_X1_HW2_LAST_PCREL, IMM16_X0_HW0_GOT, IMM16_X1_HW0_GOT, IMM16_X0_HW1_GOT, IMM16_X1_HW1_GOT, IMM16_X0_HW2_GOT, IMM16_X1_HW2_GOT, IMM16_X0_HW3_GOT, IMM16_X1_HW3_GOT, IMM16_X0_HW0_LAST_GOT, IMM16_X1_HW0_LAST_GOT, IMM16_X0_HW1_LAST_GOT, IMM16_X1_HW1_LAST_GOT, IMM16_X0_HW2_LAST_GOT, IMM16_X1_HW2_LAST_GOT, IMM16_X0_HW0_TLS_GD, IMM16_X1_HW0_TLS_GD, IMM16_X0_HW1_TLS_GD, IMM16_X1_HW1_TLS_GD, IMM16_X0_HW2_TLS_GD, IMM16_X1_HW2_TLS_GD, IMM16_X0_HW3_TLS_GD, IMM16_X1_HW3_TLS_GD, IMM16_X0_HW0_LAST_TLS_GD, IMM16_X1_HW0_LAST_TLS_GD, IMM16_X0_HW1_LAST_TLS_GD, IMM16_X1_HW1_LAST_TLS_GD, IMM16_X0_HW2_LAST_TLS_GD, IMM16_X1_HW2_LAST_TLS_GD, IMM16_X0_HW0_TLS_IE, IMM16_X1_HW0_TLS_IE, IMM16_X0_HW1_TLS_IE, IMM16_X1_HW1_TLS_IE, IMM16_X0_HW2_TLS_IE, IMM16_X1_HW2_TLS_IE, IMM16_X0_HW3_TLS_IE, IMM16_X1_HW3_TLS_IE, IMM16_X0_HW0_LAST_TLS_IE, IMM16_X1_HW0_LAST_TLS_IE, IMM16_X0_HW1_LAST_TLS_IE, IMM16_X1_HW1_LAST_TLS_IE, IMM16_X0_HW2_LAST_TLS_IE, IMM16_X1_HW2_LAST_TLS_IE, TLS_DTPMOD64, TLS_DTPOFF64, TLS_TPOFF64, TLS_DTPMOD32, TLS_DTPOFF32, TLS_TPOFF32} * targets.c (bfd_elf32_tilegx_vec): Declare. (bfd_elf32_tilepro_vec): Declare. (bfd_elf64_tilegx_vec): Declare. (bfd_target_vector): Add bfd_elf32_tilegx_vec, bfd_elf32_tilepro_vec, and bfd_elf64_tilegx_vec. * cpu-tilegx.c: New file. * cpu-tilepro.c: New file. * elf32-tilepro.h: New file. * elf32-tilepro.c: New file. * elf32-tilegx.c: New file. * elf32-tilegx.h: New file. * elf64-tilegx.c: New file. * elf64-tilegx.h: New file. * elfxx-tilegx.c: New file. * elfxx-tilegx.h: New file. * Makefile.am (TARGET_CPU_CFILES): Add config/tc-tilegx.c and config/tc-tilepro.c. (TARGET_CPU_HFILES): Add config/tc-tilegx.h and config/tc-tilepro.h. * Makefile.in: Regenerate. * configure.tgt (tilepro-*-*): New. (tilegx-*-*): Likewise. * config/tc-tilegx.c: New file. * config/tc-tilegx.h: Likewise. * config/tc-tilepro.h: Likewise. * config/tc-tilepro.c: Likewise. * doc/Makefile.am (CPU_DOCS): Add c-tilegx.texi and c-tilepro.texi. * doc/Makefile.in: Regenerate. * doc/all.texi (TILEGX): Define. (TILEPRO): Define. * doc/as.texinfo: Add Tile-Gx and TILEPro documentation. Include c-tilegx.texi and c-tilepro.texi. * doc/c-tilegx.texi: New. * doc/c-tilepro.texi: New. * gas/tilepro/t_constants.s: New file. * gas/tilepro/t_constants.d: Likewise. * gas/tilepro/t_insns.s: Likewise. * gas/tilepro/tilepro.exp: Likewise. * gas/tilepro/t_insns.d: Likewise. * gas/tilegx/tilegx.exp: Likewise. * gas/tilegx/t_insns.d: Likewise. * gas/tilegx/t_insns.s: Likewise. * dis-asm.h (print_insn_tilegx): Declare. (print_insn_tilepro): Likewise. * tilegx.h: New file. * tilepro.h: New file. * common.h: Add EM_TILEGX. * tilegx.h: New file. * tilepro.h: New file. * Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx.c and eelf32tilepro.c. (ALL_64_EMULATION_SOURCES): Add eelf64tilegx.c. (eelf32tilegx.c): New target. (eelf32tilepro.c): Likewise. (eelf64tilegx.c): Likewise. * Makefile.in: Regenerate. * configure.tgt: Handle tilegx-*-* and tilepro-*-*. * emulparams/elf32tilegx.sh: New file. * emulparams/elf64tilegx.sh: New file. * emulparams/elf32tilepro.sh: New file. * ld-elf/eh5.d: Don't run on tile*. * ld-srec/srec.exp: xfail on tile*. * ld-tilegx/external.s: New file. * ld-tilegx/reloc.d: New file. * ld-tilegx/reloc.s: New file. * ld-tilegx/tilegx.exp: New file. * ld-tilepro/external.s: New file. * ld-tilepro/reloc.d: New file. * ld-tilepro/reloc.s: New file. * ld-tilepro/tilepro.exp: New file. * Makefile.am (TARGET_LIBOPCODES_CFILES): Add tilegx-dis.c, tilegx-opc.c, tilepro-dis.c, and tilepro-opc.c. * Makefile.in: Regenerate. * configure.in: Handle bfd_tilegx_arch and bfd_tilepro_arch. * configure: Regenerate. * disassemble.c (disassembler): Add ARCH_tilegx and ARCH_tilepro. * po/POTFILES.in: Regenerate. * tilegx-dis.c: New file. * tilegx-opc.c: New file. * tilepro-dis.c: New file. * tilepro-opc.c: New file.
2011-06-13PR gas/12854Nick Clifton3-6/+22
Add additional checks for extraneous shifts and extra tests in the testsuite.
2011-06-13 PR gas/12854Nick Clifton6-0/+40
* gas/arm/shift-bad.s: New test. * gas/arm/shift-bad.l: Expcted error output. * gas/arm/shift-bad.s: New control file. * config/tc-arm.c (do_shift): Do not allow shift operations at the end of a register based shift insn. (do_t_shift): Likewise.
2011-06-13 * config/tc-score.c (s3_my_get_expression): Delete unused localNick Clifton3-323/+309
variable 'seg'. (s3_do_ldst_insn): Delete unused local variable 'strbak'. (s3_do16_ldst_insn): Delete unused local variable 'temp'. (s3_do_macro_bcmp): Zero inst_expand array. (s3_do_macro_bcmpz): Likewise. (s3_s_score_end): Delete unused local variable 'dot'. (s3_gen_reloc): Delete unused local variables 'f', 's', and 'e'. * config/tc-score7.c (s7_my_get_expression): Delete unused local variable 'seg'. (s7_do_ldst_insn): Delete unused local variable 'strbak'. (s7_b32_relax_to_b16): Delete unused local variables 'r_old' and 'r_new'. (s7_s_score_end): Delete unused local variable 'dot'. (s7_relax_frag): Delete unused local variable 'relax_size'. (s7_gen_reloc): Delete unused local variables 'f', 's', and 'e'.
2011-06-13Update lzcnt testcases.H.J. Lu3-0/+10
2011-06-12 H.J. Lu <hongjiu.lu@intel.com> * gas/i386/arch-10-lzcnt.d: Updated. * gas/i386/x86-64-arch-2-lzcnt.d: Likewise.
2011-06-10Support AVX Programming Reference (June, 2011).H.J. Lu47-12/+6396
gas/ 2011-06-10 H.J. Lu <hongjiu.lu@intel.com> AVX Programming Reference (June, 2011) * config/tc-i386.c (i386_error): Add invalid_vsib_address and unsupported_vector_index_register. (cpu_arch): Add .avx2, .bmi2, .lzcnt and .invpcid. (check_VecOperands): New. (match_template): Call check_VecOperands. Handle invalid_vsib_address and unsupported_vector_index_register. (build_modrm_byte): Support VecSIB. Check register-only source operand when two source operands are swapped. (i386_index_check): Allow Xmm/Ymm index registers. * doc/c-i386.texi: Document avx2/.avx2, bmi2/.bmi2, lzcnt/.lzcnt and invpcid./invpcid. gas/testsuite/ 2011-06-10 H.J. Lu <hongjiu.lu@intel.com> AVX Programming Reference (June, 2011) * gas/i386/arch-10-1.l: Updated. * gas/i386/arch-10-2.l: Likewise. * gas/i386/arch-10-3.l: Likewise. * gas/i386/arch-10-4.l: Likewise. * gas/i386/arch-10.s: Add LZCNT to comments. * gas/i386/x86-64-arch-2.s: Likewise. * gas/i386/arch-10-lzcnt.d: New. * gas/i386/avx-gather-intel.d: Likewise. * gas/i386/avx-gather.d: Likewise. * gas/i386/avx-gather.s: Likewise. * gas/i386/avx2-intel.d: Likewise. * gas/i386/avx2.d: Likewise. * gas/i386/avx2.s: Likewise * gas/i386/avx256int-intel.d: Likewise. * gas/i386/avx256int.d: Likewise. * gas/i386/avx256int.s: Likewise. * gas/i386/bmi2-intel.d: Likewise. * gas/i386/bmi2.d: Likewise. * gas/i386/bmi2.s: Likewise. * gas/i386/inval-invpcid.l:Likewise. * gas/i386/inval-invpcid.s: Likewise. * gas/i386/invpcid-intel.d: Likewise. * gas/i386/invpcid.d: Likewise. * gas/i386/invpcid.s: Likewise. * gas/i386/x86-64-arch-2-lzcnt.d: Likewise. * gas/i386/x86-64-avx-gather-intel.d: Likewise. * gas/i386/x86-64-avx-gather.d: Likewise. * gas/i386/x86-64-avx-gather.s: Likewise. * gas/i386/x86-64-avx2-intel.d: Likewise. * gas/i386/x86-64-avx2.d: Likewise. * gas/i386/x86-64-avx2.s: Likewise. * gas/i386/x86-64-avx256int-intel.d: Likewise. * gas/i386/x86-64-avx256int.d: Likewise. * gas/i386/x86-64-avx256int.s: Likewise. * gas/i386/x86-64-bmi2-intel.d: Likewise. * gas/i386/x86-64-bmi2.d: Likewise. * gas/i386/x86-64-bmi2.s: Likewise. * gas/i386/x86-64-inval-invpcid.l: Likewise. * gas/i386/x86-64-inval-invpcid.s: Likewise. * gas/i386/x86-64-invpcid-intel.d: Likewise. * gas/i386/x86-64-invpcid.d: Likewise. * gas/i386/x86-64-invpcid.s: Likewise. opcodes/ 2011-06-10 H.J. Lu <hongjiu.lu@intel.com> AVX Programming Reference (June, 2011) * i386-dis.c (XMGatherQ): New. * i386-dis.c (EXxmm_mb): New. (EXxmm_mb): Likewise. (EXxmm_mw): Likewise. (EXxmm_md): Likewise. (EXxmm_mq): Likewise. (EXxmmdw): Likewise. (EXxmmqd): Likewise. (VexGatherQ): Likewise. (MVexVSIBDWpX): Likewise. (MVexVSIBQWpX): Likewise. (xmm_mb_mode): Likewise. (xmm_mw_mode): Likewise. (xmm_md_mode): Likewise. (xmm_mq_mode): Likewise. (xmmdw_mode): Likewise. (xmmqd_mode): Likewise. (ymmxmm_mode): Likewise. (vex_vsib_d_w_dq_mode): Likewise. (vex_vsib_q_w_dq_mode): Likewise. (MOD_VEX_0F385A_PREFIX_2): Likewise. (MOD_VEX_0F388C_PREFIX_2): Likewise. (MOD_VEX_0F388E_PREFIX_2): Likewise. (PREFIX_0F3882): Likewise. (PREFIX_VEX_0F3816): Likewise. (PREFIX_VEX_0F3836): Likewise. (PREFIX_VEX_0F3845): Likewise. (PREFIX_VEX_0F3846): Likewise. (PREFIX_VEX_0F3847): Likewise. (PREFIX_VEX_0F3858): Likewise. (PREFIX_VEX_0F3859): Likewise. (PREFIX_VEX_0F385A): Likewise. (PREFIX_VEX_0F3878): Likewise. (PREFIX_VEX_0F3879): Likewise. (PREFIX_VEX_0F388C): Likewise. (PREFIX_VEX_0F388E): Likewise. (PREFIX_VEX_0F3890..PREFIX_VEX_0F3893): Likewise. (PREFIX_VEX_0F38F5): Likewise. (PREFIX_VEX_0F38F6): Likewise. (PREFIX_VEX_0F3A00): Likewise. (PREFIX_VEX_0F3A01): Likewise. (PREFIX_VEX_0F3A02): Likewise. (PREFIX_VEX_0F3A38): Likewise. (PREFIX_VEX_0F3A39): Likewise. (PREFIX_VEX_0F3A46): Likewise. (PREFIX_VEX_0F3AF0): Likewise. (VEX_LEN_0F3816_P_2): Likewise. (VEX_LEN_0F3819_P_2): Likewise. (VEX_LEN_0F3836_P_2): Likewise. (VEX_LEN_0F385A_P_2_M_0): Likewise. (VEX_LEN_0F38F5_P_0): Likewise. (VEX_LEN_0F38F5_P_1): Likewise. (VEX_LEN_0F38F5_P_3): Likewise. (VEX_LEN_0F38F6_P_3): Likewise. (VEX_LEN_0F38F7_P_1): Likewise. (VEX_LEN_0F38F7_P_2): Likewise. (VEX_LEN_0F38F7_P_3): Likewise. (VEX_LEN_0F3A00_P_2): Likewise. (VEX_LEN_0F3A01_P_2): Likewise. (VEX_LEN_0F3A38_P_2): Likewise. (VEX_LEN_0F3A39_P_2): Likewise. (VEX_LEN_0F3A46_P_2): Likewise. (VEX_LEN_0F3AF0_P_3): Likewise. (VEX_W_0F3816_P_2): Likewise. (VEX_W_0F3818_P_2): Likewise. (VEX_W_0F3819_P_2): Likewise. (VEX_W_0F3836_P_2): Likewise. (VEX_W_0F3846_P_2): Likewise. (VEX_W_0F3858_P_2): Likewise. (VEX_W_0F3859_P_2): Likewise. (VEX_W_0F385A_P_2_M_0): Likewise. (VEX_W_0F3878_P_2): Likewise. (VEX_W_0F3879_P_2): Likewise. (VEX_W_0F3A00_P_2): Likewise. (VEX_W_0F3A01_P_2): Likewise. (VEX_W_0F3A02_P_2): Likewise. (VEX_W_0F3A38_P_2): Likewise. (VEX_W_0F3A39_P_2): Likewise. (VEX_W_0F3A46_P_2): Likewise. (MOD_VEX_0F3818_PREFIX_2): Removed. (MOD_VEX_0F3819_PREFIX_2): Likewise. (VEX_LEN_0F60_P_2..VEX_LEN_0F6D_P_2): Likewise. (VEX_LEN_0F70_P_1..VEX_LEN_0F76_P_2): Likewise. (VEX_LEN_0FD1_P_2..VEX_LEN_0FD5_P_2): Likewise. (VEX_LEN_0FD7_P_2_M_1..VEX_LEN_0F3819_P_2_M_0): Likewise. (VEX_LEN_0F381C_P_2..VEX_LEN_0F3840_P_2): Likewise. (VEX_LEN_0F3A0E_P_2): Likewise. (VEX_LEN_0F3A0F_P_2): Likewise. (VEX_LEN_0F3A42_P_2): Likewise. (VEX_LEN_0F3A4C_P_2): Likewise. (VEX_W_0F3818_P_2_M_0): Likewise. (VEX_W_0F3819_P_2_M_0): Likewise. (prefix_table): Updated. (three_byte_table): Likewise. (vex_table): Likewise. (vex_len_table): Likewise. (vex_w_table): Likewise. (mod_table): Likewise. (putop): Handle "LW". (intel_operand_size): Handle xmm_mb_mode, xmm_mw_mode, xmm_md_mode, xmm_mq_mode, xmmdw_mode, xmmqd_mode, ymmxmm_mode, vex_vsib_d_w_dq_mode, vex_vsib_q_w_dq_mode. (OP_EX): Likewise. (OP_E_memory): Handle vex_vsib_d_w_dq_mode and vex_vsib_q_w_dq_mode. (OP_XMM): Handle vex_vsib_q_w_dq_mode. (OP_VEX): Likewise. * i386-gen.c (cpu_flag_init): Add CpuAVX2 to CPU_ANY_SSE_FLAGS and CPU_ANY_AVX_FLAGS. Add CPU_BMI2_FLAGS, CPU_LZCNT_FLAGS, CPU_INVPCID_FLAGS and CPU_AVX2_FLAGS. (cpu_flags): Add CpuAVX2, CpuBMI2, CpuLZCNT and CpuINVPCID. (opcode_modifiers): Add VecSIB. * i386-opc.h (CpuAVX2): New. (CpuBMI2): Likewise. (CpuLZCNT): Likewise. (CpuINVPCID): Likewise. (VecSIB128): Likewise. (VecSIB256): Likewise. (VecSIB): Likewise. (i386_cpu_flags): Add cpuavx2, cpubmi2, cpulzcnt and cpuinvpcid. (i386_opcode_modifier): Add vecsib. * i386-opc.tbl: Add invpcid, AVX2 and BMI2 instructions. * i386-init.h: Regenerated. * i386-tbl.h: Likewise.
2011-06-09 PR gas/12861Nick Clifton2-20/+21
* config/tc-cr16.c (tc_gen_reloc): Remove unused local variable code. (check_cinv_options): Remove unused local variables. Make function void. (md_assemble): Remove unused local variable.
2011-06-092011-06-09 James Greenhalgh <james.greenhalgh@arm.com>Richard Earnshaw6-17/+49
* config/tc-arm.c (do_ldrd): Warn in unpredictable cases. 2011-06-09 James Greenhalgh <james.greenhalgh@arm.com> * gas/arm/ldrd-unpredicatble.d: New testcase. * gas/arm/ldrd-unpredicatble.s: Likewise. * gas/arm/ldrd-unpredicatble.l: Likewise.
2011-06-03Fix attributation of previous delta.Nick Clifton1-1/+1
2011-06-03 PR gas/12698Nick Clifton2-0/+12
* config/tc-arm.c (parse_psr): Set m_profile to false when assembling for any architecture.
2011-06-02 gas/Nathan Sidwell8-15/+249
* config/tc-arm.c (parse_address_main): Handle -0 offsets. (encode_arm_addr_mode_2): Set default sign of zero here ... (encode_arm_addr_mode_3): ... and here. (encode_arm_cp_address): ... and here. (md_apply_fix): Use default sign of zero here. gas/testsuite/ * gas/arm/inst.d: Adjust for signed zero offsets. * gas/arm/ldst-offset0.d: New test. * gas/arm/ldst-offset0.s: New test. * gas/arm/offset-1.d: New test. * gas/arm/offset-1.s: New test. ld/testsuite/ Adjust tests for zero offset formatting. * ld-arm/cortex-a8-fix-bcc-plt.d: Adjust. * ld-arm/farcall-arm-arm-pic-veneer.d: Adjust. * ld-arm/farcall-arm-thumb.d: Adjust. * ld-arm/farcall-group-size2.d: Adjust. * ld-arm/farcall-group.d: Adjust. * ld-arm/farcall-mix.d: Adjust. * ld-arm/farcall-mix2.d: Adjust. * ld-arm/farcall-mixed-lib-v4t.d: Adjust. * ld-arm/farcall-mixed-lib.d: Adjust. * ld-arm/farcall-thumb-arm-blx-pic-veneer.d: Adjust. * ld-arm/farcall-thumb-arm-pic-veneer.d: Adjust. * ld-arm/farcall-thumb-thumb.d: Adjust. * ld-arm/ifunc-10.dd: Adjust. * ld-arm/ifunc-3.dd: Adjust. * ld-arm/ifunc-4.dd: Adjust. * ld-arm/ifunc-5.dd: Adjust. * ld-arm/ifunc-6.dd: Adjust. * ld-arm/ifunc-7.dd: Adjust. * ld-arm/ifunc-8.dd: Adjust. * ld-arm/jump-reloc-veneers-long.d: Adjust. * ld-arm/tls-longplt-lib.d: Adjust. * ld-arm/tls-thumb1.d: Adjust. opcodes/ * arm-dis.c (print_insn_coprocessor): Explicitly print #-0 as address offset. (print_arm_address): Likewise. Elide positive #0 appropriately. (print_insn_arm): Likewise.
2011-06-02Fix spelling mistakes.Nick Clifton5-1767/+2018
2011-05-312011-05-31 Paul Brook <paul@codesourcery.com>Paul Brook9-2/+45
gas/ * config/tc-arm.c (arm_cpus): Add Cortex-R5. (arm_extensions): Allow idiv on ARMv7-R. * doc/c-arm.text: Update idiv extension restrictions. gas/testsuite/ * gas/arm/arm-idiv-bad.d: New test. * gas/arm/arm-idiv-bad.s: New test. * gas/arm/arm-idiv-bad.l: New test. * gas/arm/arm-idiv.d: New test. * gas/arm/arm-idiv.s: New test. include/ * opcode/arm.h (ARM_ARCH_V7R_IDIV): Define.
2011-05-312011-05-31 Paul Brook <paul@codesourcery.com>Paul Brook5-2/+59
gas/ * config/tc-arm.c (arm_force_relocation): Resolve all pc-relative loads. gas/testsuite/ * gas/arm/ldr-global.d: New test. * gas/arm/ldr-global.s: New test.
2011-05-312011-05-31 Paul Brook <paul@codesourcery.com>Paul Brook5-1/+32
gas/ * config/tc-arm.c (do_t_branch): Avoid relaxing branches to constant addresses. gas/testsuite/ * arm/t2-branch-global.d: New test. * arm/t2-branch-global.s: New test.
2011-05-312011-05-31 Paul Brook <paul@codesourcery.com>Paul Brook3-0/+36
Nathan Sidwell <nathan@codesourcery.com> gas/ * config/tc-arm.c (fix_new_arm): Create an absolute symbol for pc-relative fixes to constants. * config/tc-arm.h (TC_FORCE_RELOCATATION_ABS): Define. ld/testsuite/ * ld-arm/abs-call-1.d: New. * ld-arm/abs-call-1.s: New. * ld-arm/arm-elf.exp: Add it.
2011-05-27 * config/tc-s390.c (md_begin): Remove unused variable dup_insn.Nick Clifton2-6/+6
2011-05-242011-05-24 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>Andreas Krebbel11-164/+191
* config/tc-s390.c (md_gather_operands): Fix check for floating register pair operands. 2011-05-24 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * opcode/s390.h: Replace S390_OPERAND_REG_EVEN with S390_OPERAND_REG_PAIR. 2011-05-24 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * s390-opc.c: Replace S390_OPERAND_REG_EVEN with S390_OPERAND_REG_PAIR. Fix INSTR_RRF_0UFEF instruction type. * s390-opc.txt: Fix cxr instruction type. 2011-05-24 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * gas/s390/esa-g5.d: Fix fp register pair operands. * gas/s390/esa-g5.s: Likewise. * gas/s390/zarch-z196.d: Likewise. * gas/s390/zarch-z196.s: Likewise. * gas/s390/zarch-z9-109.d: Likewise. * gas/s390/zarch-z9-109.s: Likewise. * gas/s390/zarch-z9-ec.d: Likewise. * gas/s390/zarch-z9-ec.s: Likewise.
2011-05-242011-05-24 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>Andreas Krebbel15-174/+197
* config/tc-s390.c (md_gather_operands): Emit an error for odd numbered registers used as register pair operand. 2011-05-24 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * opcode/s390.h: Add S390_OPCODE_REG_EVEN flag. 2011-05-24 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * s390-opc.c: Add new instruction types marking register pair operands. * s390-opc.txt: Match instructions having register pair operands to the new instruction types. 2011-05-24 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * gas/s390/esa-g5.d: Fix register pair operands. * gas/s390/esa-g5.s: Likewise. * gas/s390/esa-z9-109.d: Likewise. * gas/s390/esa-z9-109.s: Likewise. * gas/s390/zarch-z196.d: Likewise. * gas/s390/zarch-z196.s: Likewise. * gas/s390/zarch-z9-109.d: Likewise. * gas/s390/zarch-z9-109.s: Likewise. * gas/s390/zarch-z900.d: Likewise. * gas/s390/zarch-z900.s: Likewise. * gas/s390/zarch-z990.d: Likewise. * gas/s390/zarch-z990.s: Likewise.
2011-05-23 * config/tc-v850.h (TC_FX_SIZE_SLACK): Define.Nick Clifton2-0/+7
2011-05-20 ld/testsuite/Bernd Schmidt10-131/+352
* ld-tic6x/pcr-reloc.d: New test. * ld-tic6x/pcr-reloc.s: New test. gas/testsuite/ * gas/tic6x/pcr-relocs.d: New test. * gas/tic6x/pcr-relocs.s: New test. * gas/tic6x/pcr-relocs-undef.d: New test. * gas/tic6x/pcr-relocs-undef.s: New test. * gas/tic6x/reloc-bad-2.s: Update for pcr_offset. * gas/tic6x/reloc-bad-2.l: Update for pcr_offset. bfd/ * elf32-tic6x.c (elf32_tic6x_howto_table): Add entries for R_C6000_PCR_H16 and R_C6000_PCR_L16. (elf32_tic6x_relocate_section): Handle them. gas/ * config/tc-tic6x.c (tic6x_operators): Add "pcr_offset". (tic6x_parse_name): Handle it. (tic6x_fix_new_exp): Handle O_pcr_offset. (tic6x_fix_adjustable): Return 0 for the new relocs. (md_apply_fix): Handle them. (tc_gen_reloc): Likewise. * config/tc-tic6x.h (tic6x_fix_info): Add a fix_subsy member.
2011-05-18 * gas/arm/req.l: Updated expected warning message.Nick Clifton2-1/+5
2011-05-18 PR gas/12754Nick Clifton2-1/+7
* config/tc-tic30.c (ordinal_names): Allow translation of the ordinal names.
2011-05-18 * config/tc-arm.c (s_unreq): Reword warning message to make itNick Clifton5-5/+15
easier to translate. * config/tc-ia64.c (md_show_usage): Add note for translators. * configure.in (ALL_LINGUAS): Add "fi". * configure: Regenerate.
2011-05-18bfdTristan Gingold9-21/+312
2011-05-18 Tristan Gingold <gingold@adacore.com> * libxcoff.h (struct xcoff_dwsect_name): New type. (XCOFF_DWSECT_NBR_NAMES): New macro. (xcoff_dwsect_names): Declare. * coffcode.h (sec_to_styp_flags): Handle xcoff dwarf sections. (styp_to_sec_flags): Ditto. (coff_new_section_hook): Ditto. (coff_slurp_symbol_table): Handle C_DWARF and C_INFO. * coff-rs6000.c (xcoff_dwsect_name): New variable. gas 2011-05-18 Tristan Gingold <gingold@adacore.com> * config/tc-ppc.h (ppc_tc_sy): Reorder fields. Put size into an union with dw. (OBJ_COPY_SYMBOL_ATTRIBUTES): Adjust. (ppc_xcoff_end): Declare. (md_end): Define. * config/tc-ppc.c: Add includes for xcoff. (ppc_dwsect): New function. (md_pseudo_table): Add dwsect. (struct dw_subsection): New. (dw_sections): New. (ppc_change_debug_section): New function. (ppc_xcoff_end): Ditto. (ppc_function): Adjust for ppc_tc_sy. (ppc_symbol_new_hook): Ditto. (ppc_frob_symbol): Ditto. (ppc_frob_section): Do not set vma for debug sections. (ppc_fix_adjustable): Return true for debug sections. * config/obj-coff.c: Add includes for xcoff. (coff_frob_section): Handle dwarf section. gas/testsuite 2011-05-18 Tristan Gingold <gingold@adacore.com> * gas/ppc/xcoff-dwsect-1-32.d: New test. * gas/ppc/xcoff-dwsect-1-64.d: Ditto. * gas/ppc/xcoff-dwsect-1.s: New file. * gas/ppc/aix.exp (do_align_test): Add tests.
2011-05-17 * po/fi.po: New Finnish translation.Nick Clifton3-8065/+26633
* po/fr.po: Updated French translation.
2011-05-17 * config/tc-m32r.c (md_show_usage): Fix typos in descriptions.Nick Clifton5-10/+17
* config/tc-mt.c (md_assemble): Fix typos in warning messages. * cond.c (s_else): Fix typos in error messages. * config/tc-pj.c (md_assemble): Fix typo in error message.
2011-05-16 * gas/cris/rd-brokw-pic-1.d, gas/cris/rd-brokw-pic-2.d,Hans-Peter Nilsson6-0/+22
gas/cris/rd-fragtest-pic.d: Gate on targets cris-*-*elf* and cris-*-linux-gnu. * gas/cris/pic-err-2.s, gas/cris/pic-err-3.s: New tests.
2011-05-16 * config/tc-cris.c (md_parse_option) <OPTION_PIC>: Error if notHans-Peter Nilsson3-1/+15
emitting ELF object. (md_show_usage): Only mention --pic if the assembler can generate ELF objects. * doc/c-cris.texi (CRIS-Opt): Mention that generating ELF is a prerequisite for --pic being a valid option.
2011-05-14 * gas/all/gas.exp: Fix typo last change.Alan Modra2-1/+5
2011-05-13 * gas/all/gas.exp: Remove some xfails on redef2 and redef3 tests.Alan Modra3-19/+30
Update comments. * gas/hppa/unsorted/unsorted.exp: Run globalbug test on appropriate targets rather than xfailing.
2011-05-12 PR gas/12755Alan Modra2-2/+7
* config/tc-v850.c (parse_register_list): Correct error string.
2011-05-122011-05-12 Quentin Neill <quentin.neill@amd.com>Quentin Neill3-6/+11
* config/tc-i386.c (cpu_arch): Rename PROCESSOR_BDVER1 to PROCESSOR_BD. (i386_align_code): Ditto
2011-05-12 PR gas/12715Matthew Gretton-Dann5-1/+16
* gas/config/tc-arm.c (parse_big_immediate): Fix parsing of 64-bit immediates on 32-bit hosts. * gas/testsuite/gas/arm/neon-const.s: Add testcase for 64-bit Neon constants. * gas/testsuite/gas/arm/neon-const.d: Likewise.
2011-05-11gas/testsuite/Richard Sandiford14-15/+35
* gas/mips/24k-branch-delay-1.d: Allow 64-bit addresses. Stub out function names. * gas/mips/24k-triple-stores-1.d: Likewise. * gas/mips/24k-triple-stores-2.d: Likewise. * gas/mips/24k-triple-stores-3.d: Likewise. * gas/mips/24k-triple-stores-4.d: Likewise. * gas/mips/24k-triple-stores-5.d: Likewise. * gas/mips/24k-triple-stores-7.d: Likewise. * gas/mips/24k-triple-stores-8.d: Likewise. * gas/mips/24k-triple-stores-9.d: Likewise. * gas/mips/24k-triple-stores-10.d: Likewise. * gas/mips/24k-triple-stores-11.d: Likewise. * gas/mips/24k-triple-stores-6.d: Likewise. Add -EB. * gas/mips/mips.exp: Only run 24k-triple-stores-11.d on ELF targets.
2011-05-11gas/testsuite/Richard Sandiford13-12/+27
* gas/mips/24k-branch-delay-1.d: Add -32 to assembler options. * gas/mips/24k-triple-stores-1.d: Likewise. * gas/mips/24k-triple-stores-2.d: Likewise. * gas/mips/24k-triple-stores-3.d: Likewise. * gas/mips/24k-triple-stores-4.d: Likewise. * gas/mips/24k-triple-stores-5.d: Likewise. * gas/mips/24k-triple-stores-6.d: Likewise. * gas/mips/24k-triple-stores-7.d: Likewise. * gas/mips/24k-triple-stores-8.d: Likewise. * gas/mips/24k-triple-stores-9.d: Likewise. * gas/mips/24k-triple-stores-10.d: Likewise. * gas/mips/24k-triple-stores-11.d: Likewise.
2011-05-11 * config/tc-arm.c(do_t_ldst): Warn on loading into sp withNick Clifton19-0/+117
writeback for appropriate cores/arch. * testsuite/gas/arm/ld-sp-warn-cortex-m3.d: New test. * testsuite/gas/arm/ld-sp-warn-cortex-m3.l: New test. * testsuite/gas/arm/ld-sp-warn-cortex-m4.d: New test. * testsuite/gas/arm/ld-sp-warn-cortex-m4.l: New test. * testsuite/gas/arm/ld-sp-warn-v7.d: New test. * testsuite/gas/arm/ld-sp-warn-v7.l: New test. * testsuite/gas/arm/ld-sp-warn-v7a.d: New test. * testsuite/gas/arm/ld-sp-warn-v7a.l: New test. * testsuite/gas/arm/ld-sp-warn-v7e-m.l: New test. * testsuite/gas/arm/ld-sp-warn-v7em.d: New test. * testsuite/gas/arm/ld-sp-warn-v7m.d: New test. * testsuite/gas/arm/ld-sp-warn-v7m.l: New test. * testsuite/gas/arm/ld-sp-warn-v7r.d: New test. * testsuite/gas/arm/ld-sp-warn-v7r.l: New test. * testsuite/gas/arm/ld-sp-warn.s: New test.
2011-05-102011-05-10 Quentin Neill <quentin.neill@amd.com>Quentin Neill8-6/+349
gas/ * config/tc-i386.c (cpu_arch): Add bdver2 and rename PROCESSOR_BDVER1 to PROCESSOR_BDVER. (i386_align_code): Rename PROCESSOR_BDVER1. (processor_type): Ditto. * doc/c-i386.texi: Add bdver2. opcodes/ * i386-gen.c (cpu_flag_init): Add new CPU_BDVER2_FLAGS. * i386-init.h: Regenerated. gas/testsuite/ * gas/i386/i386.exp: Add new bdver2 test cases. * gas/i386/nops-1-bdver2.d: New. * gas/i386/x86-64-nops-1-bdver2.d: New.
2011-05-10 * dw2gencfi.c (tc_cfi_endproc): Avoid "set but not used" error.Alan Modra2-1/+5
2011-05-092011-05-09 Paul Brook <paul@codesourcery.com>Paul Brook19-76/+2187
bfd/ * elf32-tic6x.c (is_tic6x_elf_unwind_section_name, elf32_tic6x_fake_sections): New functions. (elf_backend_fake_sections): Define. gas/ * config/tc-tic6x.c (streq): Define. (tic6x_get_unwind): New. (s_tic6x_cantunwind, s_tic6x_handlerdata, s_tic6x_endp, s_tic6x_personalityindex, s_tic6x_personality): New functions. (md_pseudo_table): Add "endp", "handlerdata", "personalityindex", "personality" and "cantunwind". (tic6x_regname_to_dw2regnum, tic6x_frame_initial_instructions, tic6x_start_unwind_section, tic6x_unwind_frame_regs, tic6x_pop_rts_offset_little, tic6x_pop_rts_offset_big, tic6x_unwind_reg_from_dwarf, tic6x_flush_unwind_word, tic6x_unwind_byte, tic6x_unwind_2byte, tic6x_unwind_uleb, tic6x_cfi_startproc, output_exidx_entry, tic6x_output_unwinding, tic6x_cfi_endproc): New. * config/tc-tic6x.h (TIC6X_NUM_UNWIND_REGS): Define. (tic6x_unwind_info): New. (tic6x_segment_info_type): Add marked_pr_dependency, unwind and text_unwind. (TARGET_USE_CFIPOP, tc_regname_to_dw2regnum, tc_cfi_frame_initial_instructions, DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT, tc_cfi_startproc, tc_cfi_endproc, tc_cfi_section_name): Define. * doc/c-tic6x.texi: Document new unwinding directives. * dw2gencfi.c (tc_cfi_startproc, tc_cfi_endproc): Add default definitions. (cfi_insn_data, fde_entry, CFI_adjust_cfa_offset, CFI_return_column, CFI_rel_offset, CFI_escape, CFI_signal_frame, CFI_val_encoded_addr): Move to dw2gencfi.h. (CFI_EMIT_target): Define. (dot_cfi_sections): Check tc_cfi_section_name. (dot_cfi_startproc): Use tc_cfi_startproc. (dot_cfi_endproc): Use tc_cfi_endproc. * dw2gencfi.h (cfi_insn_data, fde_entry, CFI_adjust_cfa_offset, CFI_return_column, CFI_rel_offset, CFI_escape, CFI_signal_frame, CFI_val_encoded_addr): Move to here from dw2gencfi.c. gas/testsuite: * gas/tic6x/unwind-1.d: New test. * gas/tic6x/unwind-1.s: New test. * gas/tic6x/unwind-2.d: New test. * gas/tic6x/unwind-2.s: New test. * gas/tic6x/unwind-3.d: New test. * gas/tic6x/unwind-3.s: New test. * gas/tic6x/unwind-bad-1.d: New test. * gas/tic6x/unwind-bad-1.s: New test. * gas/tic6x/unwind-bad-1.l: New test. * gas/tic6x/unwind-bad-2.d: New test. * gas/tic6x/unwind-bad-2.s: New test. * gas/tic6x/unwind-bad-2.l: New test. include/ * elf/tic6x.h (ELF_STRING_C6000_unwind, ELF_STRING_C6000_unwind_info, ELF_STRING_C6000_unwind_once, ELF_STRING_C6000_unwind_info_once): Define.
2011-05-07 * dw2gencfi.c (CUR_SEG, SET_CUR_SEG, HANDLED, SET_HANDLED): Define.Alan Modra2-98/+106
Use throughout in place of #if SUPPORT_FRAME_LINKONCE. (struct fde_entry): Rename cseg to cur_seg. (cfi_change_reg_numbers): Remove ATTRIBUTE_UNUSED. (get_cfi_seg): Likewise. Use if (SUPPORT_FRAME_LINKONCE) rather that #if SUPPORT_FRAME_LINKONCE. (cfi_finish): Likewise.
2011-05-062011-05-06 Tristan Gingold <gingold@adacore.com>Tristan Gingold4-26/+9
* read.c (s_comm_internal): Remove code for OBJ_VMS. (s_data): Ditto. (s_text): Ditto. * write.c (write_object_file): Ditto. * symbols.c (define_sym_at_dot): Ditto. (colon): Ditto.
2011-05-05 * dw2gencfi.c (SUPPORT_FRAME_LINKONCE): Define. Use throughoutAlan Modra2-21/+93
file to conditionally compile code added 2011-04-26. (cfi_change_reg_numbers): Add ATTRIBUTE_UNUSED on params only used when SUPPORT_FRAME_LINKONCE. (get_cfi_seg): Likewise. Reintroduce old code for when not SUPPORT_FRAME_LINKONCE. (cfi_finish): Move get_cfi_seg calls out of loop when not SUPPORT_FRAME_LINKONCE. Avoid unused var warning.
2011-05-032011-05-03 Paul Brook <paul@codesourcery.com>Paul Brook3-0/+53
bfd/ * elf32-tic6x.c (elf32_tic6x_howto_table, elf32_tic6x_howto_table_rel, (elf32_tic6x_gc_sweep_hook, elf32_tic6x_relocate_section, elf32_tic6x_check_relocs): Add R_C6000_EHTYPE. gas/ * config/tc-tic6x.c (s_ehtype): New function. (md_pseudo_table): Add "ehtype". (tic6x_fix_adjustable, md_apply_fix): BFD_RELOC_C6000_EHTYPE. * doc/c-tic6x.texi: Document .ehtype directive. ld/testsuite/ * ld-tic6x/ehtype-reloc-1-rel.d: New test. * ld-tic6x/ehtype-reloc-1.d: New test. * ld-tic6x/ehtype-reloc-1.s: New test.
2011-04-29 * gas/elf/dwarf2-1.d, gas/elf/dwarf2-2.d: Adjust for change inHans-Peter Nilsson4-3/+9
output format. * gas/i386/dw2-compress-1.d: Ditto.
2011-04-26 * dw2gencfi.c (dwcfi_seg_list): New struct.Nick Clifton3-117/+383
(dwcfi_hash): New static hash variable. (get_debugseg_name): New. (alloc_debugseg_item): New. (make_debug_seg): New. (dwcfi_hash_insert): New. (dwcfi_hash_find): New. (dwcfi_hash_find_or_make): New. (cfi_insn_data): New member cur_seg. (cie_entry): Likewise. (fde_entry): New cseg and handled members. (alloc_fde_entry): Initialize cseg member. (alloc_cfi_insn_data): Initialize cur_seg member. (dot_cfi_sections): Compare for beginning of section names via strncmp. (get_cfi_seg): New. (cfi_finish): Treat link-once sections. (is_now_linkonce_segment): New local helper. (output_cie): Ignore cie entries not member of current segment. (output_fde): Likewise. (select_cie_for_fde): Likewise. (cfi_change_reg_numbers): Add new argument for current segment and ignore insn elements, if not part of current segment. * ehopt.c (get_cie_info): Use strncmp for section name matching. (heck_eh_frame): Likewise. * coffcode.h (sec_to_styp_flags): Allow linkonce for debugging sections. * scripttempl/pe.sc: Handle .eh_frame($|.)* sections. * scripttempl/pep.sc: Likewise. * ld-pe/pe.exp: Add cfi/cfi32 tests. * ld-pe/cfi.d: New. * ld-pe/cfi32.d: New. * ld-pe/cfia.s: New. * ld-pe/cfib.s: New.
2011-04-202011-04-20 Catherine Moore <clm@codesourcery.com>Catherine Moore2-69/+286
David Ung <davidu@mips.com> * config/mips.c (mips_cl_insn): Add new field complete_p. (create_insn): Initialize complete_p to zero. (BASE_REG_EQ): New. (fix_24k_align_to): New. (fix_24k_store_info): Declare. (fix_24k_sort): New. (fix_24k_record_store_info): New. (nops_for_24k): New. (nops_for_insn): Call nops_for_24k. (append_insn): Move O_constant expression handling.