Commit graph

2285 commits

Author SHA1 Message Date
H.J. Lu
cab737b91f 2006-12-28 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (process_operands): Check i.reg_operands
	and increment i.operands when adding a register operand.
	(build_modrm_byte): Fix 4 operand instruction handling.
2006-12-29 06:02:04 +00:00
H.J. Lu
31b2323cf7 2006-12-27 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (disp_expressions): Use MAX_MEMORY_OPERANDS
	for array size instead of 2.
	(im_expressions): Use MAX_IMMEDIATE_OPERANDS for for array size
	instead of 2.
	(i386_immediate): Update immediate operand overflow error
	message.
	(i386_displacement): Check displacement operand overflow.
2006-12-28 07:09:16 +00:00
H.J. Lu
b534c6d307 2006-12-27 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c: Document tc-i386.c, not i386.c.
2006-12-27 18:34:08 +00:00
Kazu Hirata
f7ec513bed gas/
* config/m68k-parse.h (m68k_register): Add CAC and MBB.
	* config/tc-m68k.c (fido_ctrl): New.
	(m68k_archs): Use fido_ctrl for -mfidoa.
	(m68k_cpus): Use fido_ctrl on fido-*-*.
	(m68k_ip): Add support for CAC and MBB.
	(init_table): Add CAC and MBB.

opcodes/
	* m68k-dis.c (print_insn_arg): Add support for cac and mbb.
2006-12-27 07:15:02 +00:00
H.J. Lu
70e41adeb3 2006-12-26 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (i386_immediate): Remove prototype.
2006-12-26 23:42:11 +00:00
Kazu Hirata
9840d27e81 bfd/
* archures.c (bfd_mach_cpu32_fido): New.
	(bfd_mach_mcf_isa_a_nodiv, bfd_mach_mcf_isa_a,
	bfd_mach_mcf_isa_a_mac, bfd_mach_mcf_isa_a_emac,
	bfd_mach_mcf_isa_aplus, bfd_mach_mcf_isa_aplus_mac,
	bfd_mach_mcf_isa_aplus_emac, bfd_mach_mcf_isa_b_nousp,
	bfd_mach_mcf_isa_b_nousp_mac, bfd_mach_mcf_isa_b_nousp_emac,
	bfd_mach_mcf_isa_b, bfd_mach_mcf_isa_b_mac,
	bfd_mach_mcf_isa_b_emac, bfd_mach_mcf_isa_b_float,
	bfd_mach_mcf_isa_b_float_mac, bfd_mach_mcf_isa_b_float_emac):
	Increment the defined values.
	* bfd-in2.h: Regenerate.
	* cpu-m68k.c (arch_info_struct): Add en entry for
	bfd_mach_cpu32_fido.
	* elf32-m68k.c (elf32_m68k_object_p): Handle
	EF_M68K_CPU32_FIDO_A.
	(elf32_m68k_merge_private_bfd_data): Use EF_M68K_CPU32_MASK.
	(elf32_m68k_print_private_bfd_data): Handle
	EF_M68K_CPU32_FIDO_A.

binutils/
	* readelf.c (get_machine_flags): Handle EF_M68K_CPU32_FIDO_A.

gas/
	* config/tc-m68k.c (cpu_of_arch): Add fido.
	(m68k_archs, m68k_cpu): Add entries for fido.
	(m68k_elf_final_processing): Handle EF_M68K_CPU32_FIDO_A.

include/elf/
	* m68k.h (EF_M68K_CPU32_FIDO_A, EF_M68K_CPU32_MASK): New.

include/opcode/
	* m68k.h (fido_a): New.
2006-12-25 22:39:21 +00:00
Mei Ligang
8fce5f8c17 * config/tc-score.c (build_lw_pic): Rename as build_lwst_pic.
Delete the code handling large constant for PIC.
	Modify some comments.
	(score_relax_frag): Decrease insn_addr in certain situation.
	(s_score_cprestore): Change .cprestore syntax from ".cprestore offset"
	to ".cprestore reg, offset".
2006-12-25 09:26:22 +00:00
H.J. Lu
2a962e6dd3 2006-12-15 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c: Add a blank line bewteen function bodies.
2006-12-15 19:43:59 +00:00
H.J. Lu
fc225355e8 2006-12-15 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (build_modrm_byte): Reformat to 72 columns.
2006-12-15 14:09:22 +00:00
H.J. Lu
d1cbb4db76 2006-12-14 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (match_template): Simplify 3 and 4 operand
	match.
2006-12-14 13:28:24 +00:00
H.J. Lu
71903a11b9 2006-12-13 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (build_modrm_byte): Set the Operand_PCrel
	bit only.
2006-12-13 19:39:12 +00:00
H.J. Lu
a5c311ca76 2006-12-13 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (match_template): Use a for loop to set
	operand_types array.
2006-12-13 18:26:30 +00:00
H.J. Lu
f48ff2ae3d gas/
2006-12-13  H.J. Lu  <hongjiu.lu@intel.com>

	PR gas/3712
	* config/tc-i386.c (match_template): Use MAX_OPERANDS for the
	number of operands. Issue an error if MAX_OPERANDS != 4. Add
	the 4th operand check.

gas/testsuite/

2006-12-13  H.J. Lu  <hongjiu.lu@intel.com>

	PR gas/3712
	* gas/i386/inval.s: Add invalid insertq.
	* gas/i386/x86-64-inval.s: Likewise.

	* gas/i386/inval.l: Updated.
	* gas/i386/x86-64-inval.l: Likewise.
2006-12-13 18:00:00 +00:00
Paul Brook
c450d570b0 2006-12-13 Paul Brook <paul@codesourcery.com>
gas/
	* config/tc-arm.c (arm_arch_option_table): Add v7-{a,r,m}.
	* doc/c-arm.texi: Fix spelling of ARMv7 profile variants.
2006-12-13 16:06:39 +00:00
H.J. Lu
eca5433bc0 2006-12-12 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.h (WordMem): Document it for 64 bit memory
	reference.
2006-12-12 20:28:17 +00:00
H.J. Lu
ffb08c8024 2006-12-09 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.h (template): Use MAX_OPERANDS instead of 4
	operand_types array.
2006-12-09 16:43:41 +00:00
Christian Groessler
41d3b0565d * config/tc-z8k.c (whatreg): Add comment describing function.
Return NULL if symbol name characters follow the register number.
        (parse_reg): Use NULL instead of 0 for pointer values.  Stop
        processing if whatreg returned NULL.
2006-12-08 22:15:11 +00:00
Kazu Hirata
c694fd509c bfd/
* elf32-m68k.c: Update uses of EF_M68K_*.

binutils/
	* readelf.c: Update uses of EF_M68K_*.

gas/
	* config/tc-m68k.c: Update uses of EF_M68K_*.

include/elf
	* m68k.h (EF_M68K_ISA_MASK, EF_M68K_ISA_A_NODIV,
	EF_M68K_ISA_A, EF_M68K_ISA_A_PLUS, EF_M68K_ISA_B_NOUSP,
	EF_M68K_ISA_B, EF_M68K_ISA_C, EF_M68K_MAC_MASK, EF_M68K_MAC,
	EF_M68K_EMAC, EF_M68K_EMAC_B, EF_M68K_FLOAT): Rename to
	EF_M68K_CF_ISA_MASK, EF_M68K_CF_ISA_A_NODIV, EF_M68K_CF_ISA_A,
	EF_M68K_CF_ISA_A_PLUS, EF_M68K_CF_ISA_B_NOUSP,
	EF_M68K_CF_ISA_B, EF_M68K_CF_ISA_C, EF_M68K_CF_MAC_MASK,
	EF_M68K_CF_MAC, EF_M68K_CF_EMAC, EF_M68K_CF_EMAC_B,
	EF_M68K_CF_FLOAT, respectively.
2006-12-07 15:39:02 +00:00
H.J. Lu
9021ec07d7 gas/
2006-12-06  H.J. Lu <hjl@gnu.org>

	* config/tc-i386.h: Change the prefix order to SEG_PREFIX,
	ADDR_PREFIX, DATA_PREFIX, LOCKREP_PREFIX.

gas/testsuite/

2006-12-06  H.J. Lu <hjl@gnu.org>

	* gas/i386/amdfam10.d: Updated for operand/address-size override
	prefix position change.
	* gas/i386/naked.d: Likewise.
	* gas/i386/rep-suffix.d: Likewise.
	* gas/i386/rep.d: Likewise.
	* gas/i386/white.l: Likewise.
	* gas/i386/x86-64-amdfam10.d: Likewise.
	* gas/i386/x86-64-rep-suffix.d: Likewise.
	* gas/i386/x86-64-rep.d: Likewise.
	* gas/i386/x86_64.d: Likewise.
2006-12-06 18:15:45 +00:00
Paul Brook
f0291e4c15 2006-12-01 Paul Brook <paul@codesourcery.com>
gas/
	* config/tc-arm.c (arm_force_relocation): Return 1 for relocs against
	function symbols.

	gas/testsuite/
	* gas/arm/thumbrel.s: New test.
	* gas/arm/thumbrel.d: New test.
2006-12-01 16:42:26 +00:00
Paul Brook
e1da3f5b96 2006-11-29 Paul Brook <paul@codesourcery.com>
gas/
	* config/tc-arm.c (arm_is_eabi): New function.
	* config/tc-arm.h (arm_is_eabi): New prototype.
	(THUMB_IS_FUNC): Use ELF function type for EABI objects.
	* doc/c-arm.texi (.thumb_func): Update documentation.
2006-11-29 17:53:39 +00:00
Paul Brook
00249aaae7 2006-11-29 Paul Brook <paul@codesourcery.com>
gas/
	* config/tc-arm.c (do_vfp_sp_const, do_vfp_dp_const): Fix operans
	encoding.

	gas/testsuite/
	* gas/arm/vfpv3-const-conv.s: Improve test coverage.
	* gas/arm/vfpv3-const-conv.d: Adjust expected output.
	* gas/arm/vfp-neon-syntax_t2.d: Ditto.
	* gas/arm/vfp-neon-syntax.d: Ditto.

	opcodes/
	* arm-dis.c (coprocessor_opcodes): Fix bitfields for fconstd/fconstd.
2006-11-29 16:26:56 +00:00
Bob Wilson
a7284bf13b * config/tc-xtensa.c (xtensa_sanity_check): Check for RELAX_IMMED
as the first slot_subtype, not the frag subtype.
2006-11-27 23:58:39 +00:00
Bob Wilson
2caa7ca0aa bfd/
* elf32-xtensa.c (elf_xtensa_special_sections): Add .xtensa.info.
gas/
	* config/tc-xtensa.c (XSHAL_ABI): Add default definition.
	(directive_state): Disable scheduling by default.
	(xtensa_add_config_info): New.
	(xtensa_end): Call xtensa_add_config_info.
gas/testsuite/
	* gas/elf/section2.e-xtensa: New file.
	* gas/elf/elf.exp: Use it.
include/
	* xtensa-config.h (XSHAL_ABI): New.
	(XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New.
ld/
	* emultempl/xtensaelf.em (XSHAL_ABI): Add default definition.
	(replace_insn_sec_with_prop_sec): Use bfd_make_section_with_flags.
	Delete redundant code to set sections flags and alignment.
	(xt_config_info_unpack_and_check, check_xtensa_info): New.
	(elf_xtensa_after_open): Iterate over input statements instead of
	link_info.input_bfds.
	(elf_xtensa_before_allocation): Likewise.  Call check_xtensa_info for
	each input, and write a new .xtensa.info section in the output.
2006-11-27 20:14:53 +00:00
Eric Botcazou
062cf83700 * config/tc-sparc.c (tc_gen_reloc): Turn aligned relocs into
their unaligned counterparts in debugging sections.
2006-11-27 11:25:27 +00:00
Alan Modra
cefdba3983 * config/tc-spu.c (md_pseudo_table): Add eqv and .eqv. 2006-11-24 04:32:41 +00:00
Daniel Jacobowitz
e821645dee opcodes/
* arm-dis.c (last_is_thumb): Delete.
	(enum map_type, last_type): New.
	(print_insn_data): New.
	(get_sym_code_type): Take MAP_TYPE argument.  Check the type of
	the right symbol.  Handle $d.
	(print_insn): Check for mapping symbols even without a normal
	symbol.  Adjust searching.  If $d is found see how much data
	to print.  Handle data.
gas/
	* config/tc-arm.h (md_cons_align): Define.
	(mapping_state): New prototype.
	* config/tc-arm.c (mapping_state): Make global.
gas/testsuite/
	* gas/arm/arm7t.d, gas/arm/neon-ldst-rm.d, gas/arm/thumb2_pool.d,
	gas/arm/tls.d: Update for $d support.
	* gas/arm/mapshort.d, gas/arm/mapshort.s: New test.
	* gas/elf/section2.e-armeabi: Update.
	* gas/elf/section2.e-armelf: New file.
	* gas/elf/elf.exp: Use it.
ld/testsuite/
	* ld-arm/mixed-app.d, ld-arm/tls-app.d, ld-arm/tls-lib.d: Update
	for $d support.
2006-11-22 17:45:57 +00:00
Alan Modra
5ab504f906 * config/obj-elf.c (obj_elf_version): Use memcpy rather than strcpy. 2006-11-22 03:35:36 +00:00
Nathan Sidwell
869ddf2a18 gas/
* config/tc-m68k.c (m68k_ip):  Correct output of cpu aliases.
gas/testsuite/
	* gas/m68k/all.exp: Add mcf-trap.
	* gas/m68k/mcf-trap.[sd]: New.
opcodes/
	* m68k-opc.c (m68k_opcodes): Place trap instructions before set
	conditionals.  Add tpf coldfire instruction as alias for trapf.
2006-11-16 07:22:25 +00:00
Mei Ligang
41c55c875a * config/tc-score.c (score_relax_frag): If next frag contains 32 bit branch
instruction, handle it specially.
	(score_insns): Modify 32 bit branch instruction.
2006-11-16 04:36:25 +00:00
Mark Shinwell
25fe350bd9 gas/
* config/tc-arm.c (do_t_czb): Rename to do_t_cbz.
	(insns): Adjust accordingly.
	(md_apply_fix): Alter comments to use CBZ instead of CZB.
2006-11-14 12:21:13 +00:00
Nick Clifton
0ffdc86ce9 * config/tc-arm.c (arm_fix_adjustable) [OBJ_COFF]: Delete.
(arm_fix_adjustable) [OBJ_ELF]: Use it on coff targets too.
* gas/arm/local_label_coff.s: New test.
* gas/arm/local_label_coff.d: New test.
* gas/arm/local_label_elf.s: New test.
* gas/arm/local_label_elf.d: New test.
* gas/arm/local_label_wince.s: New test.
* gas/arm/local_label_wince.d: New test.
2006-11-10 09:32:42 +00:00
Nick Clifton
6afdfa61bd PR gas/3456:
* config/obj-elf.c (obj_elf_version): Do not include the name field's padding in the namesz value.
2006-11-10 07:47:14 +00:00
Thiemo Seufer
d84bcf09ed * config/tc-mips.c: Fix outdated comment. 2006-11-09 13:04:39 +00:00
H.J. Lu
b7d9ef3748 gas/
2006-11-08  H.J. Lu  <hongjiu.lu@intel.com>

	* config/tc-i386.h (CpuPNI): Removed.
	(CpuUnknownFlags): Replace CpuPNI with CpuSSE3.
	* config/tc-i386.c (md_assemble): Likewise.

include/opcode/

2006-11-08  H.J. Lu  <hongjiu.lu@intel.com>

	* i386.h (i386_optab): Replace CpuPNI with CpuSSE3.
2006-11-08 19:56:02 +00:00
David Daney
df1f3cdab5 gas:
* config/tc-mips.c (pic_need_relax): Return true for section symbols.

gas/testsuite:
	* gas/mips/elf-rel26.s: New test.
	* gas/mips/elf-rel26.d: Ditto.
	* gas/mips/mips.exp: Run it.
2006-11-07 23:55:36 +00:00
Thiemo Seufer
a360e743fb * config/tc-mips.c (mips_cpu_info_table): Remove 24k/24ke aliases.
34k always has DSP ASE.
2006-11-06 14:28:21 +00:00
Thiemo Seufer
58ea3d6a2f Fix typo in comment. 2006-11-03 16:32:04 +00:00
Thiemo Seufer
648178740a * config/tc-mips.c (md_pcrel_from_section): Disallow PC relative
MIPS16 instructions referencing other sections, unless they are
	external branches.
2006-11-03 16:27:41 +00:00
Thiemo Seufer
7764b3958e * config/tc-mips.c (mips_cpu_info_table): The 25Kf is a MIPS64
release 1 CPU.
2006-11-03 12:36:40 +00:00
Daniel Jacobowitz
d1e50f8a7e * config/tc-h8300.c (build_bytes): Fix const warning. 2006-11-02 21:39:56 +00:00
Nick Clifton
06d2da930d * tc-score.c (do16_rdrs): Handle not! instruction especially.
* score-opc.h (score_opcodes): Delete modifier '0x'.
* gas/score/rD_rA.d: Correct not! and not.c instruction disassembly.
* gas/score/b.d: Correct b! and b instruction disassembly.
2006-11-01 10:29:49 +00:00
Paul Brook
3ba674705b 2006-10-31 Paul Brook <paul@codesourcery.com>
gas/
	* config/tc-arm.c (arm_adjust_symtab): Don't use STT_ARM_16BIT
	for EABIv4.
2006-10-31 20:33:40 +00:00
Paul Brook
7a1d4c3893 2006-10-31 Paul Brook <paul@codesourcery.com>
gas/
	* config/tc-arm.c (object_arch): New variable.
	(s_arm_object_arch): New function.
	(md_pseudo_table): Add object_arch.
	(aeabi_set_public_attributes): Obey object_arch.
	* doc/c-arm.texi: Document .object_arch.
2006-10-31 20:16:33 +00:00
Nick Clifton
b138abaa40 * tc-score.c (data_op2): Check invalid operands.
(my_get_expression): Const operand of some instructions can not be symbol in assembly.
  (get_insn_class_from_type): Handle instruction type Insn_internal.
  (do_macro_ldst_label): Modify inst.type.
  (Insn_PIC): Delete.
* score-inst.h (enum score_insn_type): Add Insn_internal.
* tc-score.c (data_op2): The immediate value in lw is 15 bit signed.
* score-dis.c (print_insn): Correct the error code to print correct PCE instruction disassembly.
2006-10-31 09:54:41 +00:00
Randolph Chung
c79b7c30b4 2006-10-29 Randolph Chung <tausq@debian.org>
* config/tc-hppa.c (hppa_cfi_frame_initial_instructions)
	(hppa_regname_to_dw2regnum): New funcions.
	* config/tc-hppa.h [OBJ_ELF] (TARGET_USE_CFIPOP): Define.
	(tc_cfi_frame_initial_instructions)
	(tc_regname_to_dw2regnum): Define.
	(hppa_cfi_frame_initial_instructions)
	(hppa_regname_to_dw2regnum): Declare.
	(DWARF2_LINE_MIN_INSN_LENGTH, DWARF2_DEFAULT_RETURN_COLUMN)
	(DWARF2_CIE_DATA_ALIGNMENT): Define.
2006-10-30 01:09:18 +00:00
Nick Clifton
e2785c4472 * config/tc-spu.c (md_assemble): Cast printf string size parameter
to int in order to avoid a compiler warning.
2006-10-29 18:18:34 +00:00
Andrew Stubbs
86157c2070 2006-10-27 Andrew Stubbs <andrew.stubbs@st.com>
* config/tc-sh.c (md_assemble): Define size of branches.
2006-10-27 09:34:45 +00:00
Alan Modra
e9f5312993 New Cell SPU port. 2006-10-25 06:49:21 +00:00
Alan Modra
ede602d7c8 Add powerpc cell support. 2006-10-24 01:27:29 +00:00