Commit Graph

5476 Commits

Author SHA1 Message Date
Nathan Sidwell
15735687c6 * config/tc-arm.c (create_neon_reg_alias): Deal with case
sensitivity.
2010-09-08 17:49:21 +00:00
Nick Clifton
ab3e2b4a1c PR gas/11973
* config/tc-mn10300.c (md_convert_frag): Zero out top two bytes of
        long call instruction's displacement.
2010-09-08 11:07:39 +00:00
H.J. Lu
13f864aed8 Check flag_code instead of use_rela_relocations for 64bit.
gas/

2010-09-03  H.J. Lu  <hongjiu.lu@intel.com>

	PR gas/11974
	* config/tc-i386.c (i386_finalize_immediate): Check flag_code
	instead of use_rela_relocations for 64bit.

gas/testsuite/

2010-09-03  H.J. Lu  <hongjiu.lu@intel.com>

	PR gas/11974
	* gas/i386/immed64.s: Add more movabs tests.
	* gas/i386/immed64.d: Updated.
2010-09-03 17:38:38 +00:00
Jan Kratochvil
18464d4d31 binutils/
* dwarf.c (regname): New declaration.
	(decode_location_expression): Print for registers also regname output.

binutils/testsuite/
	* binutils-all/objdump.W: Update DW_OP_reg5 expected output.

gas/testsuite/
	* gas/elf/dwarf2-1.d: Update DW_OP_reg5 expected output.
	* gas/elf/dwarf2-2.d: Likewise.
	* gas/i386/dw2-compress-1.d: Likewise.
2010-09-03 15:54:32 +00:00
Richard Henderson
c8cbd2725a * gas/cfi/cfi-i386.d: Use objdump -Wf instead of readelf.
* gas/cfi/cfi-i386.s: Remove .type directives.
        * gas/cfi/reloc-pe-i386.d: Adjust test for i386.
2010-09-03 14:57:56 +00:00
Richard Henderson
f917d7a192 * gas/cfi/reloc-pe-i386.d, gas/cfi/reloc-pe-i386.s: New test. 2010-09-02 22:44:09 +00:00
Richard Henderson
3251495bd7 * dw2gencfi.c (TC_DWARF2_EMIT_OFFSET): Provide default.
(output_fde): Use it.  Make sure to fully init exp before using it.
testsuite/
	* gas/cfi/cfi-common-1.d: Use objdump instead of readelf to dump.
	* gas/cfi/cfi-common-2.d, gas/cfi/cfi-common-3.d,
	gas/cfi/cfi-common-4.d, gas/cfi/cfi-common-6.d,
	gas/cfi/cfi-common-7.d, gas/cfi/cfi-x86_64.d: Likewise.
	* gas/cfi/cfi-x86_64.s: Remove .type directives.
	* gas/cfi/cfi.exp: Run for pecoff objects too.
	* gas/cfi/reloc-pe-i386.d, gas/cfi/reloc-pe-i386.s: New test.
2010-09-02 22:43:46 +00:00
H.J. Lu
d9e3625e37 Fix "pushw imm16" for x86-64 disassembler.
gas/testsuite/

2010-08-31  H.J. Lu  <hongjiu.lu@intel.com>

	PR binutils/11960
	* gas/i386/opcode-intel.d: Updated.
	* gas/i386/x86-64-opcode.d: Likewise.

	* gas/i386/x86-64-opcode.s: Add a "pushw imm16" test.

opcodes/

2010-08-31  H.J. Lu  <hongjiu.lu@intel.com>

	PR binutils/11960
	* i386-dis.c (sIv): New.
	(dis386): Replace Iq with sIv on "pushT".
	(reg_table): Replace T with {T|} on callT, JcallT, jmpT and JjmpT.
	(x86_64_table): Replace {T|}/{P|} with P.
	(putop): Add 'w' to 'T'/'P' if needed for Intel syntax.
	(OP_sI): Update v_mode.  Remove w_mode.
2010-08-31 21:56:57 +00:00
Kai Tietz
6e0973c0aa 2010-08-31 Kai Tietz <kai.tietz@onevision.com>
* config/obj-coff-seh.c (obj_coff_seh_save): Correct comparison.
        (obj_coff_seh_stackalloc): Likewise.
2010-08-31 14:45:35 +00:00
Alan Modra
91952a0680 * config/obj-elf.c (obj_elf_init_stab_section): Fix assertion. 2010-08-31 05:34:46 +00:00
Richard Henderson
681418c21c * config/obj-coff-seh.c: Rewrite the entire file.
(symtab, symptr, reltab, relcount, relsize): Remove.
	(seh_ctx_root, seh_ctx): Remove.
	(xdata_seg, xdata_subseg, pdata_seg): New.
	(switch_xdata, switch_pdata): New.
	(verify_context, verify_context_and_target, skip_whitespace_and_comma):
	New parsing functions.  Rewrite all parsing functions to use them.
	(obj_coff_seh_32): Fix != arm thinko.
	(obj_coff_seh_handler): For x64, don't accept handler pointer here,
	only flags.
	(obj_coff_seh_handlerdata): New.
	(do_seh_endproc): Split out of ...
	(obj_coff_seh_endproc): ... here.
	(obj_coff_seh_proc): Use it, if needed.
	(seh_x64_make_prologue_element): Use XRESIZEVEC, symbol_temp_new_now.
	(seh_x64_read_reg): Remove mm_regs alternative.  Tidy integer reg
	alternatives.  Don't slurp commas.
	(seh_read_offset): Remove.
	(obj_coff_seh_pushframe): Split out from obj_coff_seh_push.
	(obj_coff_seh_scope): Remove.
	(obj_coff_seh_save): Decide UWOP_SAVE_* vs _FAR immediately.
	(obj_coff_seh_stackalloc): Decide _SMALL vs _LARGE immediately.
	(out_one, out_two, out_four): New.
	(seh_x64_write_prologue_data, seh_x64_size_prologue_data,
	seh_x64_write_function_xdata, write_function_xdata): Rewrite
	from seh_x64_write_xdata, seh_needed_unwind_info, seh_store_elm_data,
	seh_getelm_data_size, seh_getsize_of_unwind_entry,
	seh_make_unwind_entry, seh_getsize_unwind_data, and
	seh_create_unwind_data.
	(seh_arm_write_function_pdata): Rewrite from seh_arm_create_pdata.
	(write_function_pdata): Rewrite from make_function_entry_pdata.
	(seh_write_text_eh_data, make_function_entry_pdata,
	seh_arm_create_pdata, seh_arm_write_pdata, seh_reloc, save_relocs,
	seh_symbol_init, seh_symbol, quick_section, seh_emit_rva,
	seh_emit_long, seh_make_globl, seh_make_section2, seh_make_section,
	seh_make_xlbl_name, make_seh_text_label, seh_fill_pcsyms,
	seh_needed_unwind_info, seh_store_elm_data, seh_getelm_data_size,
	seh_getsize_of_unwind_entry, seh_make_unwind_entry,
	seh_getsize_unwind_data, seh_create_unwind_data,
	seh_make_function_entry_xdata, seh_x64_makescope_elem): Remove.
	* config/obj-coff-seh.h (SEH_CMDS): Remove seh_savemm, seh_scope.
	Add seh_handlerdata.  Adjust function/what arguments for
	seh_savereg, seh_pushframe, seh_stackalloc.
	(struct seh_prologue_element): Adjust members to closer match
	the elements of the UNWIND_CODE structure.
	(struct seh_scope_elem): Remove.
	(struct seh_context): Replace char* members with symbolS or
	expressionS as appropriate.  Sort members by ARM/x64 applicability.
	Remove obsolete stuff wrt direct symbol and reloc manipulation.
2010-08-30 21:51:28 +00:00
H.J. Lu
5fec85997f Move gas/ld NEWS from binutils to gas/ld. 2010-08-25 16:03:58 +00:00
Alan Modra
6f0341784b * configure.tgt (m68k-*-aout): Change to bfd_gas=yes. 2010-08-25 12:03:30 +00:00
Alan Modra
4ad7ac30ca * config/tc-d10v.c (do_assemble): Correctly detect overflow of
"name" buffer.
	* config/tc-m68hc11.c (md_assemble): Likewise.
	* config/tc-microblaze.c (md_assemble): Likewise.  Correct cast
	of is_end_of_line index.
2010-08-25 11:51:07 +00:00
Jie Zhang
dc5ec521f1 * config/tc-arm.c (encode_arm_addr_mode_2): Fix comment. 2010-08-25 05:59:13 +00:00
Jie Zhang
23a10334b2 * config/tc-arm.c (encode_arm_addr_mode_2): Fix
BAD_PC_ADDRESSING condition.

	testsuite/
	* gas/arm/ldst-pc.d: New test.
	* gas/arm/ldst-pc.s: New test.
	* gas/arm/sp-pc-validations-bad.s: `str r0,[pc,#4]' is valid.
	* gas/arm/sp-pc-validations-bad.l: Adjust accordingly.
2010-08-25 05:25:09 +00:00
Maciej W. Rozycki
f0cd06677b * doc/c-arm.texi (ARM Options): Document -mfpu=fp4-sp-d16. 2010-08-20 20:53:28 +00:00
H.J. Lu
43f3e2ee94 Fix a typo in comments.
2010-08-19  H.J. Lu  <hongjiu.lu@intel.com>

	* config/tc-i386.c (VEX_check_operands): Fix a typo in comments.
2010-08-19 21:04:36 +00:00
H.J. Lu
9f2670f27b Check i.imm_operands VEXXDS.
2010-08-18  H.J. Lu  <hongjiu.lu@intel.com>

	* config/tc-i386.c (build_modrm_byte): Check i.imm_operands
	instead of VEXXDS.
2010-08-18 19:36:41 +00:00
Alan Modra
d1f52f54d5 * macro.c (sub_actual): Add back ampersand suffix when no
substitution.
	(macro_expand_body): Correct comment.
2010-08-18 05:56:41 +00:00
H.J. Lu
f9818820ab Add missing files. 2010-08-18 00:43:46 +00:00
Roland McGrath
01642c122a Add "?" pseudo-flag to ELF .section/.pushsection directives. 2010-08-17 20:03:41 +00:00
Cary Coutant
955974c6c5 * as.c (show_usage): Don't list --compress-debug-sections if zlib not
installed.
	(main): Warn if --compress-debug-sections requested and zlib not
	installed.
	* doc/as.texinfo: Add --compress-debug-sections,
	--nocompress-debug-sections.
2010-08-09 18:08:18 +00:00
H.J. Lu
49021df25c Re-indent config/tc-i386.c.
2010-08-06  H.J. Lu  <hongjiu.lu@intel.com>

	* config/tc-i386.c (set_cpu_arch): Re-indent.
	(md_parse_option): Likewise.
2010-08-06 19:47:00 +00:00
H.J. Lu
2210942396 Don't generate multi-byte NOPs for i686.
gas/

2010-08-06  Quentin Neill <quentin.neill@amd.com>

	* config/tc-i386.c (arch_entry): Add negated bit to
	  disambiguate flag names starting with "no".
	  (cpu_arch): Add negated bit definitions.  Add
	  ".nop" CPU extension.
	  (i386_align_code): Use new .cpunop bit to decide
	  when to generate alignment using nops.
	  (set_cpu_arch): Use negated bit instead to decide
	  when to use cpu_flags or vs. cpu_flags_and_not.
	  (md_parse_option): Likewise.

gas/testsuite/

2010-08-06  Quentin Neill <quentin.neill@amd.com>

	* gas/i386/arch-10-1.l: Add nopl instruction.
	* 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: Likewise.
	* gas/i386/arch-10.d: Add nopl instruction, and +nopl extension
	flag to as flags.
	* gas/i386/nops-5-i686.d: Change alignment code generated for
	-mtune=i686.
	* gas/i386/nops-5.d: Change alignment code generated for
	.arch i686.
	* gas/i386/x86-64-nops-5-k8.d: Likewise.
	* gas/i386/x86-64-nops-5.d: Likewise.

opcodes/

2010-08-06  Quentin Neill <quentin.neill@amd.com>

	* i386-gen.c (cpu_flag_init): Define CpuNop extension flag, add
	to processor flags for PENTIUMPRO processors and later.
	* i386-opc.h (enum): Add CpuNop.
	(i386_cpu_flags): Add cpunop bit.
	* i386-opc.tbl: Change nop cpu_flags.
	* i386-init.h: Regenerated.
	* i386-tbl.h: Likewise.
2010-08-06 18:22:50 +00:00
H.J. Lu
b414985b9e Add ud1 to x86.
gas/testsuite/

2010-08-05  H.J. Lu  <hongjiu.lu@intel.com>

	* gas/i386/i386.exp: Run arch-4.

	* gas/i386/arch-4.d: New.
	* gas/i386/arch-4.s: Likewise.

	* gas/i386/intel.d: Replace ud2a/ud2b with ud2/ud1.
	* gas/i386/opcode-intel.d: Likewise.
	* gas/i386/opcode-suffix.d: Likewise.
	* gas/i386/opcode.d: Likewise.

opcodes/

2010-08-05  H.J. Lu  <hongjiu.lu@intel.com>

	* i386-dis.c (dis386_twobyte): Replace ud2a/ud2b with ud2/ud1.

	* i386-opc.tbl: Add ud1.  Remove Cpu686 from ud2/ud2a/ud2b.
	* i386-tbl.h: Regenerated.
2010-08-06 00:52:57 +00:00
H.J. Lu
01559eccf0 Move the first i.error out of the loop.
2010-08-04  H.J. Lu  <hongjiu.lu@intel.com>

	* config/tc-i386.c (match_template): Move the first i.error
	out of the loop.
2010-08-04 20:52:20 +00:00
Alan Modra
b96282be2d * configure.tgt (m32c): Set endian=little.
* config/tc-m32c.h (TARGET_BYTES_BIG_ENDIAN): Define as 0.
	* config/tc-m32c.c (md_number_to_chars): Revert last change.
2010-08-04 04:21:06 +00:00
Tristan Gingold
1222b29101 bfd/
2010-08-03  Tristan Gingold  <gingold@adacore.com>

	* makefile.vms (OBJS): Update list.

gas/
Index: gas/ChangeLog
2010-08-03  Tristan Gingold  <gingold@adacore.com>

	* makefile.vms (OBJS): Add Add compress-debug.c.
2010-08-03 14:29:00 +00:00
Alan Modra
e4d9f07834 * config/tc-d10v.h (TARGET_BYTES_BIG_ENDIAN): Define as 1.
* config/tc-m32c.c (md_number_to_chars): Call bigendian
	form of number_to_chars, not littleendian.
2010-08-03 10:53:10 +00:00
Alan Modra
7b0a0875b2 * gas/all/octa.s, * gas/all/octa.d: New test.
* gas/all/gas.exp: Run octa.
	* gas/elf/data-1.s, * gas/elf/data-1.d: Delete.
	* gas/elf/elf.exp: Don't run data-1.
2010-08-03 10:30:52 +00:00
H.J. Lu
ed9465a713 Run data-1 only for i*86, x86_64 and ia64.
2010-08-02  H.J. Lu  <hongjiu.lu@intel.com>

	* elf/elf.exp: Run data-1 only for i*86, x86_64 and ia64.
2010-08-02 22:05:23 +00:00
H.J. Lu
317bc8c820 Add a testcase for PR gas/11867.
2010-08-02  H.J. Lu  <hongjiu.lu@intel.com>

	PR gas/11867
	* gas/elf/data-1.d: New.
	* gas/elf/data-1.s: Likewise.

	* elf/elf.exp: Run data-1.
2010-08-02 20:10:45 +00:00
Alan Modra
69da848e6e * config/tc-d30v.c (d30v_cons_align): Don't align constants
in debug sections.
2010-08-02 13:53:29 +00:00
Alan Modra
93d90f466b PR gas/11867
* expr.c (operand <'-' and '~'>): Widen bignums.
	(operand <'!'>): Correct bignum result and convert to O_constant.
	* read.c (emit_expr): Don't assert on .byte bignum.  Don't display
	bignum truncated warning for sign extended bignums.
2010-08-02 13:19:44 +00:00
Tristan Gingold
b27423bb54 2010-08-02 Tristan Gingold <gingold@adacore.com>
* lib/gas-defs.exp (get_standard_section_names): New function.
	(run_dump_tests): Document the new behavior for objdump,
	document to new section-subst option.  Automatically perform
	substitutions for objdump.
	(objdump_finish): Add REF_SUBST argument.
	(run_list_test): Adjust call of regexp_diff.
	(run_list_test_stdin): Ditto.
	* gas/all/gas.exp (test_cond): Adjust call of regexp_diff.
	* gas/symver/symver.exp (run_error_test): Ditto.
	* gas/mt/relocs.exp (regexp_test): Ditto.
	* gas/mep/complex-relocs.exp (regexp_test): Ditto.
	* gas/m68k/all.exp: Ditto.
	* gas/elf/elf.exp (run_elf_list_test): Ditto.
	* gas/rx/rx-asm-good.d: Set section-subst to no.
2010-08-02 08:48:57 +00:00
Alan Modra
cd94c7fbb3 * config/tc-v850.c (md_assemble): Always pass format string to
as_warn.
	(md_apply_fix): Similarly for as_warn_where.
2010-08-02 08:43:18 +00:00
Alan Modra
089b899275 * gas/i386/i386.exp (dw2-compress-1): Only run on ELF targets.
(dw2-compress-2, x86-64-dw2-compress-2): Remove unnecessary linux
	target test.
2010-08-02 08:38:45 +00:00
Alan Modra
09fe853bd0 Update for ppc_fix_adjustable change. 2010-08-02 08:22:53 +00:00
H.J. Lu
f09c177238 Reformat config/tc-i386-intel.c.
2010-07-29  H.J. Lu  <hongjiu.lu@intel.com>

	* config/tc-i386-intel.c: Reformat.
2010-07-29 19:23:38 +00:00
Alan Modra
cc9edbf353 * config/tc-ppc.c (ppc_fix_adjustable): Add got reloc types used
in large toc code.
2010-07-29 07:48:43 +00:00
H.J. Lu
75bc1f8113 Correct date. 2010-07-28 16:17:06 +00:00
H.J. Lu
525285d881 Xfail dw2-compress-2 and x86-64-dw2-compress-2.
2010-07-27  H.J. Lu  <hongjiu.lu@intel.com>

	* gas/i386/i386.exp: Xfail dw2-compress-2 and
	x86-64-dw2-compress-2.
2010-07-28 15:59:05 +00:00
Alan Modra
25313d6a3f PR gas/11841
* symbols.c (symbol_clone): Correct typo in previous patch.
2010-07-28 09:36:22 +00:00
Alan Modra
9d75b2885f PR gas/11841
* symbols.c (symbol_clone): Clear BSF_SECTION_SYM flag.
2010-07-28 08:43:46 +00:00
Alan Modra
5a93804749 * config/tc-ppc.c (md_assemble): Don't attempt to print NUL in
syntax error message.
2010-07-28 05:21:38 +00:00
Maciej W. Rozycki
2b2c11bd2d Fix up last ChangeLog entry in gas/ and bfd/. 2010-07-27 21:14:49 +00:00
Maciej W. Rozycki
667bf02aed * elf64-mips.c (mips_elf64_howto_table_rela)
[R_MIPS_TLS_DTPMOD64]: Clear partial_inplace.
	[R_MIPS_TLS_DTPREL64, R_MIPS_TLS_GD, R_MIPS_TLS_LDM]: Likewise.
	[R_MIPS_TLS_DTPREL_HI16, R_MIPS_TLS_DTPREL_LO16]: Likewise.
	[R_MIPS_TLS_GOTTPREL, R_MIPS_TLS_TPREL64]: Likewise.
	[R_MIPS_TLS_TPREL_HI16, R_MIPS_TLS_TPREL_LO16]: Likewise.
	* elfn32-mips.c (elf_mips_howto_table_rela)
	[R_MIPS_TLS_DTPMOD32]: Likewise.
	[R_MIPS_TLS_DTPREL32, R_MIPS_TLS_GD, R_MIPS_TLS_LDM]: Likewise.
	[R_MIPS_TLS_DTPREL_HI16, R_MIPS_TLS_DTPREL_LO16]: Likewise.
	[R_MIPS_TLS_GOTTPREL, R_MIPS_TLS_TPREL32]: Likewise.
	[R_MIPS_TLS_TPREL_HI16, R_MIPS_TLS_TPREL_LO16]: Likewise.
2010-07-27 21:08:33 +00:00
Maciej W. Rozycki
03ea81db63 * config/tc-mips.c (mips16_macro_build): Pass "args" by
reference rather than value.
	(macro_build): Update accordingly.
2010-07-27 21:04:59 +00:00
Maciej W. Rozycki
8680f6e184 * config/tc-mips.c (mips_ip): Use symbol_temp_new_now to create
a fake label.
2010-07-27 21:02:34 +00:00