Commit graph

1981 commits

Author SHA1 Message Date
Alan Modra
55257f50c0 * config/tc-ppc.c (md_parse_option): Add PPC_OPCODE_ISEL and
PPC_OPCODE_RFMCI to -m440 selected ppc_cpu.
2003-08-19 15:48:53 +00:00
Nick Clifton
f02232aaa3 Add support for unindexed form of Addressing Mode 5 2003-08-19 13:05:42 +00:00
Alan Modra
3d8aea2f47 * config/tc-ppc.c (md_parse_option): Handle -m440.
(md_apply_fix3): Warning fix.
	(md_show_usage): Add -m440.
	* doc/c-ppc.texi: Document -m440.
2003-08-19 07:09:44 +00:00
Alan Modra
d6415f6cd6 * read.c (s_print): Check for NULL. 2003-08-16 14:04:48 +00:00
Alan Modra
1a317472f6 * write.c (fixup_segment): When handling an expression involving
the subtraction of two symbols in the same segment, don't clear
	fx_pcrel except for TC_M68K.
2003-08-16 13:35:08 +00:00
Alan Modra
f86103b730 * config/tc-i386.h: Remove BFD_ASSEMBLER tests and all !BFD_ASSEMBLER
code.
	* config/tc-i386.c: Likewise.
	(RELOC_ENUM): Don't define.  Replace throughout with enum.
2003-08-14 08:05:44 +00:00
Alan Modra
c8089be72d fix typo 2003-08-14 07:06:45 +00:00
Alan Modra
da64f3bf47 * dep-in.sed: Remove libintl.h. Ignore include/fpoen-*.h
* Makefile.am (POTFILES.in): Unset LC_COLLATE.
	Run "make dep-am".
	* Makefile.in: Regenerate.
2003-08-14 07:04:09 +00:00
Andreas Schwab
c04898f807 gas/
* config/tc-m68k.h (TARGET_USE_CFIPOP)
	(DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT)
	(tc_regname_to_dw2regnum, tc_cfi_frame_initial_instructions):
	Define.
	* config/tc-m68k.c: Include "dw2gencfi.h".
	(tc_m68k_regname_to_dw2regnum)
	(tc_m68k_frame_initial_instructions): New functions.

gas/testsuite/
	* gas/cfi/cfi-m68k.s, gas/cfi/cfi-m68k.d: New test.
	* gas/cfi/cfi.exp (run_list_test): Run it.
2003-08-08 14:46:41 +00:00
Nick Clifton
3b260895e3 Add MSP430 variants 2003-08-08 10:14:52 +00:00
Jason Eckhardt
14d3f36402 2003-08-07 Jason Eckhardt <jle@rice.edu>
* config/tc-i860.c (i860_check_label): New function.
        * config/tc-i860.h (i860_check_label): New prototype.
        (tc_check_label): Define macro as i860_check_label.
2003-08-07 19:20:45 +00:00
Jason Eckhardt
820aff5582 2003-08-01 Jason Eckhardt <jle@rice.edu>
* config/tc-i860.c (s_align_wrapper): New function and prototype.
        (md_pseudo_table): Change s_align_bytes to s_align_wrapper, remove
        surrounding OBJ_ELF ifdef, and re-format slightly.
        * doc/c-i860.texi: Document the special .align syntax available
        in Intel mode.
2003-08-07 04:05:42 +00:00
Jason Eckhardt
e15f6d3074 gas:
2003-08-06  Jason Eckhardt  <jle@rice.edu>

        * config/tc-i860.c (i860_handle_align): New function.
        * config/tc-i860.h (HANDLE_ALIGN): Define macro.
        (MAX_MEM_FOR_RS_ALIGN_CODE): Define macro.

gas/testsuite:
2003-08-06  Jason Eckhardt  <jle@rice.edu>

        * gas/i860/dir-align01.{s,d}: New files.
        * gas/i860/i860.exp: Execute the new test above.
2003-08-06 23:59:36 +00:00
Jason Eckhardt
0acc96e1c8 gas:
2003-08-06  Jason Eckhardt  <jle@rice.edu>

        * config/tc-i860.c (i860_process_insn): Check that instructions
        with their dual-bit set are 8-byte aligned.

gas/testsuite:
2003-08-06  Jason Eckhardt  <jle@rice.edu>

        * gas/i860/dual02-err.l: Update expected error message.
        * gas/i860/README.i860: Remove dual02-err from known failure list.
2003-08-06 19:53:19 +00:00
Nick Clifton
9e7d479d74 Updated French translations 2003-08-06 10:15:16 +00:00
Jason Eckhardt
07c7854e59 2003-08-05 Jason Eckhardt <jle@rice.edu>
* config/tc-i860.c (i860_process_insn): Don't handle dual-bit
        setting during flop argument parsing.  Instead, do it after
        instruction is fully parsed.
2003-08-06 04:31:58 +00:00
Jason Eckhardt
5eb0723a76 2003-08-05 Jason Eckhardt <jle@rice.edu>
* doc/c-i860.texi: Mention that .dual, .enddual, and .atmp
        directives are only available in Intel syntax mode.
2003-08-05 23:24:06 +00:00
Jason Eckhardt
5ea0549d55 2003-08-05 Jason Eckhardt <jle@rice.edu>
* config/tc-i860.c (s_dual): Accept .dual directive only in
        the Intel syntax mode.
        (s_enddual): Likewise for .enddual.
        (s_atmp): Likewise for .atmp.
2003-08-05 22:58:00 +00:00
Alan Modra
a4622f4072 * config/tc-i386.c (i386_intel_operand): Always call i386_index_check
for memory operands.  Pass the full operand_string to i386_index_check.
2003-08-04 12:03:49 +00:00
Jason Eckhardt
87505968d5 2003-08-01 Jason Eckhardt <jle@rice.edu>
* config/tc-i860.c: Remove SYNTAX_SVR4 macro and occurrences.
        (target_intel_syntax): Declare variable.
        (OPTION_INTEL_SYNTAX): Declare macro.
        (md_longopts): Add option -mintel-syntax.
        (md_parse_option): Set target_intel_syntax.
        (md_show_usage): Add -mintel-syntax usage.
        (md_begin): Set reg_prefix based on target_intel_syntax.
        (i860_process_insn): Skip register prefix only if there is one.
        Parse relocatable expressions in either Intel or AT&T syntax based
        on target_intel_syntax instead of the SYNTAX_SVR4 macro.
        * doc/c-i860.texi: Document -mintel-syntax option and give blurb
        about the differences in syntax.
2003-08-02 03:03:52 +00:00
Alan Modra
2097767332 * config/tc-msp430.c (msp430_srcoperand): Extend 'push' bug workaround
to all arches.
2003-08-01 03:48:55 +00:00
Joern Rennecke
26c9b70410 * config/tc-sh.c (md_assemble): For branches, check & update
valid_arch here.
2003-07-30 20:34:26 +00:00
Jason Eckhardt
7734b6e923 bfd:
2003-07-30  Jason Eckhardt  <jle@rice.edu>

        * elf32-i860.c: Convert to ISO C90.  Remove superflous prototypes.

gas:
2003-07-30  Jason Eckhardt  <jle@rice.edu>

        * config/tc-i860.c: Convert to ISO C90.
2003-07-30 20:24:55 +00:00
Rainer Orth
2d150871cf * read.c (s_space): Revert 2003-07-28 change. 2003-07-30 17:21:52 +00:00
Alan Modra
92191b291d * config/obj-elf.c (obj_elf_change_section): Allow "x" for .note*. 2003-07-30 14:11:03 +00:00
Alan Modra
c861c80c03 * config/tc-sh.c (tc_gen_reloc): Test for R_SH_IND12W only when ELF. 2003-07-29 06:55:34 +00:00
Alan Modra
77a6138a46 * config/tc-ppc.c (md_apply_fix3): Fix check for lq insns. 2003-07-29 06:48:30 +00:00
H.J. Lu
34f708754e gas/
2003-07-28  H.J. Lu  <hongjiu.lu@intel.com>

	* config/obj-elf.c (obj_elf_section_type): Also accept "note".

gas/testsuite/

2003-07-28  H.J. Lu  <hongjiu.lu@intel.com>

	* gas/elf/elf.exp: Add section3 for note section.

	* gas/elf/section3.d: New file.
	* gas/elf/section3.s: Likewise.
2003-07-29 02:03:33 +00:00
Rainer Orth
8d548edbc9 * read.c (s_space): Don't warn about .space 0. 2003-07-28 20:35:59 +00:00
Rainer Orth
dcd410fe15 * config/tc-mips.c (mips_flag_pdr): Define.
(md_begin) [OBJ_ELF]: Use it to control .pdr creation.
	(s_mips_end) [OBJ_ELF]: Likewise.
	(md_longopts) [OBJ_ELF]: Define OPTION_PDR, OPTION_NO_PDR.
	(md_parse_option) [OBJ_ELF]: Handle them.
	(md_show_usage) [OBJ_ELF]: Document -mpdr, -mno-pdr.

	* doc/c-mips.texi (MIPS Opts): Document -mpdr, -mno-pdr.
	* doc/as.texinfo (Overview) [MIPS]: Likewise.
2003-07-28 20:06:27 +00:00
H.J. Lu
3cddba1e54 bfd/
2003-07-25  H.J. Lu  <hongjiu.lu@intel.com>

	* elf.c (_bfd_elf_new_section_hook): Set the default section
	type to SHT_NULL.
	(elf_fake_sections): Set the section type based on asect->flags
	if it is SHT_NULL. Don't abort on processor specific section
	types.

gas/

2003-07-25  H.J. Lu  <hongjiu.lu@intel.com>

	* config/obj-elf.c (obj_elf_change_section): Update
	elf_section_type and elf_section_flags only when they are
	specified.
2003-07-26 01:06:27 +00:00
H.J. Lu
8e8c182c83 2003-07-25 H.J. Lu <hongjiu.lu@intel.com>
* config/obj-elf.c (obj_elf_change_section): Always set section
	type and flags.
2003-07-25 16:08:28 +00:00
H.J. Lu
2f89ff8d8e bfd/
2003-07-25  H.J. Lu  <hongjiu.lu@intel.com>

	* elf-bfd.h (bfd_elf_special_section): New.
	(elf_backend_data): Add special_sections, a pointer to
	bfd_elf_special_section.
	(elf_section_type). New.
	(elf_section_flags): New.
	(_bfd_elf_get_sec_type_attr): New.

	* elf.c (_bfd_elf_make_section_from_shdr): Always use the
	real section type/flags.
	(special_sections): New.
	(get_special_section): New.
	(_bfd_elf_get_sec_type_attr): New.
	(_bfd_elf_new_section_hook): Check special_section to set
	elf_section_type and elf_section_flags.
	(elf_fake_sections): Don't use section name to set ELF section
	data.

	* elf32-m32r.c (m32r_elf_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf32-m68hc11.c (elf32_m68hc11_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf32-mcore.c (mcore_elf_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf32-ppc.c (ppc_elf_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf32-sh64.c (sh64_elf_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf32-v850.c (v850_elf_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf32-xtensa.c (elf_xtensa_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf64-alpha.c (elf64_alpha_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf64-hppa.c (elf64_hppa_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf64-ppc.c (ppc64_elf_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elf64-sh64.c (sh64_elf64_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elfxx-ia64.c (elfNN_ia64_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elfxx-mips.c (_bfd_mips_elf_special_sections): New.

	* elfxx-mips.h (_bfd_mips_elf_special_sections): New.
	(elf_backend_special_sections): Defined.

	* elfxx-target.h (elf_backend_special_sections): New. Default
	to NULL.
	(elfNN_bed): Initialize special_sections.

	* section.c (bfd_abs_section): Remove const.
	(bfd_und_section): Likewise.
	(bfd_com_section): Likewise.
	(bfd_ind_section): Likewise.

gas/

2003-07-25  H.J. Lu  <hongjiu.lu@intel.com>

	* config/obj-elf.c (special_sections): Removed.
	(obj_elf_change_section): Call _bfd_elf_get_sec_type_attr. Set
	elf_section_type and elf_section_flags.
	(elf_frob_file): Set SHT_GROUP.

	* config/obj-elf.h (obj_sec_set_private_data): New.

	* config/tc-alpha.h (ELF_TC_SPECIAL_SECTIONS): Removed.
	* config/tc-ia64.h: Likewise.
	* config/tc-m32r.h: Likewise.
	* config/tc-m68hc11.h: Likewise.
	* config/tc-mcore.h: Likewise.
	* config/tc-mips.h: Likewise.
	* config/tc-ppc.h: Likewise.
	* config/tc-sh64.h: Likewise.
	* config/tc-v850.h: Likewise.
	* config/tc-xtensa.h: Likewise.

	* config/tc-v850.h (SHF_V850_GPREL): Removed.
	(SHF_V850_EPREL): Likewise.
	(SHF_V850_R0REL): Likewise.

	* subsegs.c (subseg_get): Call obj_sec_set_private_data if it
	is defined.

include/elf/

2003-07-25  H.J. Lu  <hongjiu.lu@intel.com>

	* v850.h (SHF_V850_GPREL): New.
	(SHF_V850_EPREL): Likewise.
	(SHF_V850_R0REL): Likewise.
2003-07-25 14:35:56 +00:00
Stephane Carrez
a7f10e7a9c * config/tc-m68hc11.h (DWARF2_ADDR_SIZE): Use 32-bit address for
debugging symbols so that we handle page memory correctly.
2003-07-24 20:55:38 +00:00
Nick Clifton
834d807bb8 Updated French translations 2003-07-24 11:16:05 +00:00
Daniel Jacobowitz
8266886ed2 * config/tc-arm.c (arm_archs): Add iwmmxt. 2003-07-23 19:30:39 +00:00
H.J. Lu
b41b1f95b7 2003-07-22 H.J. Lu <hongjiu.lu@intel.com>
* read.c (do_parse_cons_expression): Mark nbytes unused to
	silence gcc.
2003-07-22 15:27:06 +00:00
Alexandre Oliva
ba18dd6f10 * config/tc-h8300.c (get_specific): No PCREL8 encoding for bsr/bc
or bsr/bs.
2003-07-22 04:56:50 +00:00
Alexandre Oliva
0c0b9be051 * config/tc-h8300.c (md_assemble): Make sure characters after
slash and dot are lower-case.
2003-07-22 04:56:05 +00:00
Nick Clifton
6c37ac4d15 Update translations 2003-07-17 14:22:45 +00:00
Alan Modra
c5c0a21022 * dwarf2dbg.c (get_frag_fix): Revert 2001-11-15 change.
(generic_dwarf2_emit_offset): Don't define function when
	TC__DWARF2_EMIT_OFFSET is defined.
2003-07-16 03:09:31 +00:00
Richard Sandiford
963ac3630d * doc/c-mips.texi: Document -march=rm9000. 2003-07-15 09:02:59 +00:00
Richard Sandiford
5a7ea74950 include/opcode/
* mips.h (CPU_RM7000): New macro.
	(OPCODE_IS_MEMBER): Match CPU_RM7000 against 4650 insns.

bfd/
	* archures.c (bfd_mach_mips7000): New.
	* bfd-in2.h: Regenerated.
	* cpu-mips.c (arch_info_struct): Add an entry for mips:7000.
	* elfxx-mips.c (mips_set_isa_flags): Handle bfd_mach_mips7000.
	(mips_mach_extensions): Add an entry for it.

opcodes/
	* mips-dis.c (mips_arch_choices): Add rm7000 and rm9000 entries.

gas/
	* config/tc-mips.c (hilo_interlocks): True for CPU_RM7000.
	(mips_cpu_info_table): Add rm7000 and rm9000 entries.

gas/testsuite/
	* gas/mips/rm7000.[sd]: New test.
	* gas/mips/mips.exp: Run it.
2003-07-15 07:50:39 +00:00
Alan Modra
ec178e1bbb * config/tc-v850.c (md_assemble): When no reloc, create pcrel fixups
only for V850_OPERAND_DISP operands.
2003-07-15 04:04:18 +00:00
Alan Modra
e85ca5bb79 * frags.c (frag_more): Move segment checks to..
(frag_alloc_check): ..here.  New function.
	(frag_append_1_char): Call frag_alloc_check.
2003-07-15 01:33:54 +00:00
Nick Clifton
76bff7057c Update Turkish translation files for bfd, gas and opcodes 2003-07-14 11:18:13 +00:00
Nick Clifton
278ed1281c Remove uses of ctype.h 2003-07-14 10:06:06 +00:00
Alan Modra
fce0080055 Update pot files. 2003-07-11 05:10:21 +00:00
Jakub Jelinek
75e21f08dc * config/tc-ppc.h (DWARF2_LINE_MIN_INSN_LENGTH): Define always.
(TARGET_USE_CFIPOP, tc_cfi_frame_initial_instructions,
	tc_regname_to_dw2regnum, DWARF2_DEFAULT_RETURN_COLUMN,
	DWARF2_CIE_DATA_ALIGNMENT): Define.
	(ppc_cfi_frame_initial_instructions, tc_ppc_regname_to_dw2regnum): New
	prototypes.
	(ppc_cie_data_alignment): Declare.
	* config/tc-ppc.c: Include dw2gencfi.h.
	(ppc_cie_data_alignment): Define.
	(md_begin): Initialize ppc_cie_data_alignment.
	(ppc_cfi_frame_initial_instructions, tc_ppc_regname_to_dw2regnum): New
	functions.
	* config/tc-s390.h (DWARF2_LINE_MIN_INSN_LENGTH): Define always.
	(TARGET_USE_CFIPOP, tc_cfi_frame_initial_instructions,
	tc_regname_to_dw2regnum, DWARF2_DEFAULT_RETURN_COLUMN,
	DWARF2_CIE_DATA_ALIGNMENT): Define.
	(s390_cfi_frame_initial_instructions, tc_s390_regname_to_dw2regnum):
	New prototypes.
	(s390_cie_data_alignment): Declare.
	* config/tc-s390.c: Include dw2gencfi.h.
	(s390_cie_data_alignment): Define.
	(md_begin): Initialize s390_cie_data_alignment.
	(s390_cfi_frame_initial_instructions, tc_s390_regname_to_dw2regnum):
	New functions.

	* gas/cfi/cfi-ppc-1.s: New test.
	* gas/cfi/cfi-ppc-1.d: New test.
	* gas/cfi/cfi-s390-1.s: New test.
	* gas/cfi/cfi-s390-1.s: New test.
	* gas/cfi/cfi-s390x-1.s: New test.
	* gas/cfi/cfi-s390x-1.s: New test.
	* gas/cfi/cfi.exp: Run them.
2003-07-10 16:46:38 +00:00
Alexandre Oliva
2ce28d43c4 2002-12-12 Alexandre Oliva <aoliva@redhat.com>
* config/tc-mn10300.h (EXTERN_FORCE_RELOC): Don't define to zero.
2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
* configure.in (am33_2.0, mn10300-*-linux*): Added.
* configure: Rebuilt.
* config/tc-mn10300.h (TARGET_FORMAT) [TE_LINUX]: Define to
elf32-am33lin.
* config/tc-mn10300.c (md_begin) [TE_LINUX]: Choose AM33/2.0
by default.
2003-07-10 04:44:56 +00:00
Alexandre Oliva
bf6f0d0c20 2003-02-25 Alexandre Oliva <aoliva@redhat.com>
* config/tc-mn10300.c (mn10300_check_fixup): Set GOT_PCREL type
for subtracts from GLOBAL_OFFSET_TABLE that could not be
simplified.
2002-07-18  Alexandre Oliva  <aoliva@redhat.com>
* config/tc-mn10300.c (mn10300_check_fixup): Accept subtracts that
could not be simplified.
(tc_gen_reloc): Turn an absolute fx_subsy into part of fx_offset.
2001-11-04  Alexandre Oliva  <aoliva@redhat.com>
* config/tc-mn10300.h (TC_RELOC_RTSYM_LOC_FIXUP): Don't adjust
BDF_RELOC_MN10300_GOT32.
* config/tc-mn10300.c (mn10300_fix_adjustable): If
TC_RELOC_RTSYM_LOC_FIXUP doesn't hold, it's not adjustable.
2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
* config/tc-mn10300.c (mn10300_parse_name): Don't return a
symbol if we know its value.
2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
* config/tc-mn10300.h (GLOBAL_OFFSET_TABLE_NAME): Remove
duplicate underscore prefix.
2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
* config/tc-mn10300.c (mn10300_parse_name): Store relocation
type in X_md, not X_add_number.  Zero X_add_number.
(mn10300_check_fixup): Extract relocation type from X_md.
* config/tc-mn10300.h: Update comment.
2001-04-14  Alexandre Oliva  <aoliva@redhat.com>
* config/tc-mn10300.h (O_GOTOFF, O_PLT, O_GOT): Replace with...
(O_PIC_reloc): this.
* config/tc-mn10300.c (mn10300_PIC_related_p): Use it.
(mn10300_check_fixup): Likewise.
(mn10300_parse_name): Set X_add_number to relocation type.
* config/tc-mn10300.h (DIFF_EXPR_OK, GLOBAL_OFFSET_TABLE_NAME,
TC_RELOC_RTSYM_LOC_FIXUP, md_parse_name, TC_CONS_FIX_NEW,
O_GOTOFF, O_PLT, O_GOT): Define.
* config/tc-mn10300.c (mn10300_PIC_related_p): New fn.
(mn10300_check_fixup): New fn.
(md_assemble): Call it.  Check for PIC-related relocs.
(mn10300_cons_fix_new): Likewise.  New fn.
(mn10300_end_of_match): New fn.
(mn10300_md_parse_name_cont): New fn.
2003-07-10 03:20:14 +00:00
Alexandre Oliva
e7b715256e 2000-05-25 Alexandre Oliva <aoliva@cygnus.com>
* config/tc-mn10300.c (mn10300_insert_operand): Negate negative
accumulator's shift.
2000-05-08  Alexandre Oliva  <aoliva@cygnus.com>
* config/tc-mn10300.c (md_relax_table, md_convert_frag,
md_assemble, md_estimate_size_before_relax): Handle fbCC.
2000-04-20  Alexandre Oliva  <aoliva@cygnus.com>
* config/tc-mn10300.c (HAVE_AM33): Redefine in terms of
HAVE_AM33_2.
2000-04-03  Alexandre Oliva  <aoliva@cygnus.com>
* config/tc-mn10300.c (md_pseudo_table): Use AM33_2 constant.
(HAVE_AM33): Match AM33_2 too.
(HAVE_AM33_2): New macro.
(md_assemble): Use it.  Match 2.0 registers only if HAVE_AM33_2.
2000-04-01  Alexandre Oliva  <aoliva@cygnus.com>
* config/tc-mn10300.c (md_pseudo_table): Added `am33_2'.
(float_registers, double_registers): New variables.
(float_register_name, double_register_name): New functions.
(md_assemble): Recognize FP registers.  Implement FMT_D3.
(mn10300_insert_operand): Support FP registers.
2003-07-10 02:50:00 +00:00
Chris Demetriou
115695a81d [ gas/ChangeLog ]
2003-07-08  Chris Demetriou  <cgd@broadcom.com>

        * config/tc-mips.c (mips_validate_fix): Do not warn about branch
        target being a global symbol if not compiling SVR4 PIC code.

[ gas/testsuite/ChangeLog ]
2003-07-08  Chris Demetriou  <cgd@broadcom.com>

        * gas/testsuite/gas/mips/mips.exp: Make sure that branch-misc-2 is
        run to compile non-PIC code, and add branch-misc-2pic.
        * gas/mips/branch-misc-2.l: Adjust for change in non-PIC warnings.
        * gas/mips/branch-misc-2pic.l: New file.
        * gas/mips/branch-misc-2pic.s: New file.
2003-07-09 01:27:30 +00:00
Nick Clifton
9f7598c156 Add documentation of M32R .high, .shigh and .low directives. 2003-07-07 10:24:08 +00:00
Richard Sandiford
1b680e4f57 * config/tc-h8300.c (h8300sxnmode): Add prototype.
(DSYMMODE): Remove.
	(parse_exp): Replace expressionS argument with a h8_op.  Parse the
	operand size as well.
	(skip_colonthing): Remove unused expression argument.  Tighten checks
	for 2-digit sizes.
	(colonmod24): Remove.
	(get_mova_operands): Combine calls to parse_exp and skip_colonthing.
	(get_operand): Likewise.  Use the standard code to read the size of
	pc-relative operands.
	(fix_operand_size): Include the size-guessing logic that used to be
	in colonmod24 and get_operand.  Don't apply dd:2 optimizations to
	offsets with a symbolic component.

testsuite/
	* gas/h8300/h8sx_disp2.[sd]: Add tests for symbolic displacements.
2003-07-07 09:33:02 +00:00
Nick Clifton
0cea619061 * config/tc-i386.c (tc_x86_regname_to_dw2regnum): Use ARRAY_SIZE
macro to compute size of selected register name array.
2003-07-04 10:46:35 +00:00
Martin Schwidefsky
933fbc29d6 * config/tc-s390.c (md_parse_option): Add cpu type z990.
(md_begin): Add minimal cpu type logic for instructions with different
        binary format depending on the cpu.
        (md_assemble): Remove check for minimal cpu.
        (s390_insert_operand): Add support for long displacements.
        (md_gather_operands): Likewise.
        (tc_s390_fix_adjustable): Likewise.
        (tc_s390_force_relocation): Likewise.
        (md_apply_fix3): Likewise.
2003-07-01 14:45:37 +00:00
Chris Demetriou
1a2c1fadc9 2003-06-30 Chris Demetriou <cgd@broadcom.com>
* config/tc-mips.c (s_mipsset): Implement -march= handling
        differently.
2003-06-30 21:54:19 +00:00
Thiemo Seufer
17a2f25124 * config/tc-mips.c: Convert to ISO C90 prototypes. Remove unnecessary
prototypes and casts. Replace PTR with void *. Reformat.
	* config/tc-mips.h: Likewise.
2003-06-30 12:44:25 +00:00
Alan Modra
6344efa4f2 * config/tc-ia64.c (note_register_values): Warning fix.
* config/tc-mips.c (append_insn): Likewise.
2003-06-30 04:10:48 +00:00
Thiemo Seufer
fef14a4289 * ld-mips-elf/elf-rel-got-n64-linux.d: New file.
* ld-mips-elf/elf-rel-xgot-n64-linux.d: New file.
	* ld-mips-elf/mips-elf.exp: Use the new files for Linux.
2003-06-29 19:41:33 +00:00
H.J. Lu
02fc308916 2003-06-26 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (md_assemble): Declare "exp" before "if".
2003-06-26 17:50:41 +00:00
Richard Sandiford
2d0d09ca83 include/opcode/
* h8300.h (IMM2_NS, IMM8_NS, IMM16_NS): Remove.
	(IMM8U, IMM8U_NS): Define.
	(h8_opcodes): Use IMM8U_NS for mov.[wl] #xx:8,@yy.

gas/
	* config/tc-h8300.c (get_specific): Allow ':8' to be used for
	unsigned 8-bit operands.

gas/testsuite/
	* gas/h8300/h8sx_mov_imm.[sd]: Add tests for mov.[wl] #xx:8,@yy.
2003-06-25 15:31:59 +00:00
Nick Clifton
685736be24 Update .comm error messages to assume an unsigned value.
Update relaxing code to work in 64-bit address spaces.
2003-06-24 11:10:47 +00:00
Mark Mitchell
e98d298cda * config/tc-ppc.c (ppc_cleanup): Use bytes to count APUinfo slots. 2003-06-24 06:41:56 +00:00
H.J. Lu
ca164297eb gas/
2003-06-23  H.J. Lu <hongjiu.lu@intel.com>

	* gas/config/tc-i386.c (md_assemble): Support Intel Precott New
	Instructions.

	* gas/config/tc-i386.h (CpuPNI): New.
	(CpuUnknownFlags): Add CpuPNI.

gas/testsuite/

2003-06-23  H.J. Lu <hongjiu.lu@intel.com>

	* gas/i386/i386.exp: Add prescott.

	* gas/i386/prescott.d: New file.
	* gas/i386/prescott.s: Likewise.

include/opcode/

2003-06-23  H.J. Lu <hongjiu.lu@intel.com>

	* i386.h (i386_optab): Support Intel Precott New Instructions.

opcodes/

2003-06-23  H.J. Lu <hongjiu.lu@intel.com>

	* i386-dis.c (PNI_Fixup): New. Fix up "mwait" and "monitor" in
	Intel Precott New Instructions.
	(PREGRP27): New. Added for "addsubpd" and "addsubps".
	(PREGRP28): New. Added for "haddpd" and "haddps".
	(PREGRP29): New. Added for "hsubpd" and "hsubps".
	(PREGRP30): New. Added for "movsldup" and "movddup".
	(PREGRP31): New. Added for "movshdup" and "movhpd".
	(PREGRP32): New. Added for "lddqu".
	(dis386_twobyte): Use PREGRP30 to replace the "movlpX" entry.
	Use PREGRP31 to replace the "movhpX" entry. Use PREGRP28 for
	entry 0x7c. Use PREGRP29 for entry 0x7d. Use PREGRP27 for
	entry 0xd0. Use PREGRP32 for entry 0xf0.
	(twobyte_has_modrm): Updated.
	(twobyte_uses_SSE_prefix): Likewise.
	(grps): Use PNI_Fixup in the "sidtQ" entry.
	(prefix_user_table): Add PREGRP27, PREGRP28, PREGRP29, PREGRP30,
	PREGRP31 and PREGRP32.
	(float_mem): Use "fisttp{l||l|}" in entry 1 in opcode 0xdb.
	Use "fisttpll" in entry 1 in opcode 0xdd.
	Use "fisttp" in entry 1 in opcode 0xdf.
2003-06-23 20:15:34 +00:00
Jim Wilson
041340adcd Patch from David Mosberger.
* config/tc-ia64.c (pseudo_func): Add ABI constants for linux,
	freebsd, openvms, and nsk (non-stop kernel).
2003-06-23 19:35:52 +00:00
Jason Thorpe
b7599f01d2 * config/tc-ns32k.c (md_begin): Initialize inst_hash_table after
all locals have been declared.
2003-06-23 00:41:47 +00:00
Thiemo Seufer
b7c7d6c193 * config/tc-mips.c (ADDRESS_ADD_INSN,ADDRESS_ADDI_INSN): Remove
special handling for n32 ABI.
	(macro): Likewise.
	* gas/mips/elf-rel-got-n32.d: Remove special handling for n32 ABI.
	* gas/mips/elf-rel-xgot-n32.d: Likewise.
	* gas/mips/jal-newabi.d: Likewise.
	* ld-mips-elf/elf-rel-got-n32.d: Remove special handling for n32 ABI.
	* ld-mips-elf/elf-rel-xgot-n32.d: Likewise.
2003-06-21 21:38:04 +00:00
Thiemo Seufer
815ddb5051 Revert 2003-06-11 change. 2003-06-19 16:43:38 +00:00
Christian Groessler
f590b86e1e * config/tc-z8k.c (parse_reg): Invalid registers generate an error
now, not only a warning.  Add some more checks to detect invalid
	registers.
	(get_operand): For CLASS_IR remember register size in mode struct.
	(get_specific): Handle new CLASS_IRO type.  Add register size
	checks for CLASS_IR and CLASS_IRO.
        (md_apply_fix3): Fix undefined usage of buf.
2003-06-19 13:44:42 +00:00
Alan Modra
931e13a666 * config/tc-ppc.c (ppc_csect): Pass alignment to ppc_change_csect.
(ppc_change_csect): Add align param.  Align frag at start of csect.
	(ppc_section, ppc_named_section): Adjust ppc_change_csect calls.
	(ppc_frob_section): Align vma.
2003-06-18 23:05:44 +00:00
Jakub Jelinek
9393cb0db9 * dw2gencfi.c (EH_FRAME_ALIGNMENT): Define if not defined.
(output_cie): Don't pad.
	(output_fde): Add align argument.  Pad to align if not 0.
	(cfi_finish): Set .eh_frame alignment to EH_FRAME_ALIGNMENT.
	Pad just last FDE to EH_FRAME_ALIGNMENT.

	* gas/cfi/cfi-i386.d: Regenerated.
	* gas/cfi/cfi-common-1.d: Regenerated.
	* gas/cfi/cfi-common-2.d: Regenerated.
	* gas/cfi/cfi-common-3.d: Regenerated.
	* gas/cfi/cfi-x86_64.d: Regenerated.
	* gas/cfi/cfi-alpha-1.d: Regenerated.
	* gas/cfi/cfi-alpha-2.d: Regenerated.
	* gas/cfi/cfi-alpha-3.d: Regenerated.
2003-06-18 17:58:48 +00:00
Martin Schwidefsky
df9a398fe6 * config/tc-s390.c (init_default_arch): Make current_mode_mask
dependent on s390_arch_size and current_cpu dependent on
	current_mode_mask.
2003-06-18 11:18:46 +00:00
Nick Clifton
2fe04c57c8 Add c4x as an architecture variant to tic4x. 2003-06-18 09:49:59 +00:00
Alan Modra
9f2b53d784 * config/tc-ppc.c (ppc_elf_suffix): Don't remove symbols other than
".TOC." from PPC64_TOC relocs.
2003-06-18 03:27:18 +00:00
Alan Modra
ba0b217435 * config/tc-ppc.c (md_apply_fix3): Allow BRTAKEN, BRNTAKEN relocs. 2003-06-17 00:14:24 +00:00
Thiemo Seufer
f899b4b82a * config/tc-mips.c (ADDRESS_ADD_INSN,ADDRESS_ADDI_INSN,
ADDRESS_LOAD_INSN,ADDRESS_STORE_INSN): New macros.
	(macro_build_ldst_constoffset,load_address,macro,s_cpsetup,
	s_cprestore,s_cpadd): Use them.
2003-06-16 12:13:10 +00:00
Hans-Peter Nilsson
399f703e49 * configure.in: Add specific case for cris-*-linux-gnu* with
em=linux.
	* configure: Regenerate.
	* config/tc-cris.c (DEFAULT_CRIS_AXIS_LINUX_GNU): New macro, TRUE
	if TE_LINUX defined, else FALSE.
	(bfd_boolean demand_register_prefix): Set default from
	DEFAULT_CRIS_AXIS_LINUX_GNU.
	(symbols_have_leading_underscore): Similar.
	* config/tc-cris.h (LOCAL_LABELS_DOLLAR): Define to 1.
2003-06-16 00:38:58 +00:00
Richard Earnshaw
39c2da3212 * tc-arm.c (FPU_DEFAULT, case TE_LINUX): Default to FPU_ARCH_FPA.
(FPU_DEFAULT, case TE_NetBSD): Default to FPU_ARCH_VFP for ELF,
FPU_ARCH_FPA for AOUT.
(md_begin): Don't try to guess the floating point architecture from
the CPU if the OS ABI (Linux, NetBSD) mandates a particular form.
2003-06-13 15:20:26 +00:00
Nick Clifton
a06a29f25f Add i386-netbsd-gnu target. 2003-06-13 13:17:58 +00:00
Tom Tromey
d88ef7a621 * doc/as.texinfo (Comm): Added @node. Moved before CFI
directives node.
2003-06-12 14:32:19 +00:00
Richard Sandiford
34ce925ee0 * config/tc-mips.c (append_insn): In a compound relocation, take the
field width from the final (outermost) operator.
2003-06-12 05:45:50 +00:00
Richard Henderson
cdfbf930b9 * dw2gencfi.c (struct cfi_escape_data): New.
(cfi_add_CFA_nop): Remove.
        (CFI_escape, dot_cfi_escape): New.
        (dot_cfi): Remove nop.
        (cfi_pseudo_table): Remove nop; add escape.
        (output_cfi_insn): Likewise.
        (select_cie_for_fde): Stop on escape.
        * dw2gencfi.h (cfi_add_CFA_nop): Remove.
        * read.c, read.h (do_parse_cons_expression): New.
        * doc/as.texinfo (.cfi_escape): New.

        * gas/cfi/cfi-common-3.[ds]: New.
        * gas/cfi/cfi.exp: Run it.
2003-06-11 23:16:58 +00:00
Thiemo Seufer
8c1a34cd5c * config/tc-mips.c (s_cpsetup): Use mips_frame_reg instead of SP.
(s_cprestore): Likewise.
	(s_cpreturn): Likewise.
2003-06-11 20:59:09 +00:00
Thiemo Seufer
4b0cff4e36 * config/tc-mips.c (tc_gen_reloc): Initialize retval amd reloc
with zeros.
2003-06-11 20:53:32 +00:00
Thiemo Seufer
a7ebbfdf67 * elf32-mips.c (mips_elf_generic_reloc): New Function.
(elf_mips_howto_table_rel): Use it.
	(gprel32_with_gp): Move prototype.
	(mips_elf_hi16_reloc): Check for ! BSF_LOCAL instead of zero addend.
	Use mips_elf_generic_reloc.
	(mips_elf_got16_reloc): Check for ! BSF_LOCAL instead of zero addend.
	Code cleanup.
	(_bfd_mips_elf32_gprel16_reloc): Check for ! BSF_LOCAL instead of
	zero addend.
	(mips_elf_gprel32_reloc): Likewise. Use the same GP assignment logic
	as in the other *_gprel*_reloc functions.
	(gprel32_with_gp): Handle partial_inplace properly.
	(mips32_64bit_reloc): Use mips_elf_generic_reloc.
	(mips16_gprel_reloc): Check for ! BSF_LOCAL instead of zero addend.
	Do addend handling directly instead of calling
	_bfd_mips_elf_gprel16_with_gp. Handle partial_inplace properly.
	* elf64-mips.c (mips_elf64_hi16_reloc): Check for ! BSF_LOCAL instead
	of zero addend. Handle partial_inplace properly.
	(mips_elf64_got16_reloc): Check for ! BSF_LOCAL instead of zero
	addend.
	(mips_elf64_gprel16_reloc): Likewise.
	(mips_elf64_literal_reloc): Likewise.
	(mips_elf64_gprel32_reloc): Likewise. Use the same GP assignment
	logic as in the other *_gprel*_reloc functions. Handle
	partial_inplace properly.
	(mips_elf64_shift6_reloc): Check for ! BSF_LOCAL instead of zero
	addend. Handle partial_inplace properly.
	(mips16_gprel_reloc): Likewise. Do addend handling directly instead
	of calling _bfd_mips_elf_gprel16_with_gp.
	* elfn32-mips.c (mips_elf_got16_reloc): Check for BSF_LOCAL.
	(mips_elf_gprel32_reloc): Check for ! BSF_LOCAL instead
	of zero addend.
	(mips_elf_shift6_reloc): Handle partial_inplace properly.
	(mips16_gprel_reloc): Likewise. Do addend handling directly instead
	of calling _bfd_mips_elf_gprel16_with_gp.
	* elfxx-mips.c (_bfd_mips_elf_gprel16_with_gp): Handle
	partial_inplace properly. Fix wrong addend handling. Fix overflow
	check.
	(_bfd_mips_elf_sign_extend): Renamed from mips_elf_sign_extend and
	exported.
	(mips_elf_calculate_relocation): Use _bfd_mips_elf_sign_extend.
	(_bfd_mips_elf_relocate_section): Likewise.
	(mips_elf_create_dynamic_relocation): Update sec_info_type access.
	* elfxx-mips.h (_bfd_mips_relax_section): Fix prototype declaration.
	(_bfd_mips_elf_sign_extend): New prototype.
	* config/tc-mips.c (md_pcrel_from): Return actual pcrel address.
	(md_apply_fix3): Ignore non-special relocations. Remove superfluous
	exceptions from size assert. Remove most of the addend fixup
	specialcasing. Remove value, use valP directly. simplify fx_addnumber
	handling. Remove zero addend specialcases.
	(tc_gen_reloc): Use appropriate value for reloc2 addend. Remove
	the addend fixup specialcase.
	* config/tc-mips.h (MD_APPLY_SYM_VALUE): Define as 0.
2003-06-11 16:22:26 +00:00
Thiemo Seufer
d25d759de9 * write.c (write_relocs): Use xcalloc. Fix relocs initialization
in the RELOC_EXPANSION_POSSIBLE case.
2003-06-11 10:32:08 +00:00
Alan Modra
9d83078bc4 * config/tc-i960.c (line_comment_chars): Add '#'.
* config/tc-mn10200.c (tc_gen_reloc): Don't ignore fx_subsy.
2003-06-11 06:11:45 +00:00
H.J. Lu
3b4433739c bfd/
2003-06-06  H.J. Lu <hongjiu.lu@intel.com>

	* po/Make-in (DESTDIR): New.
	(install-data-yes): Support $(DESTDIR).
	(uninstall): Likewise.

binutils/

2003-06-06  H.J. Lu <hongjiu.lu@intel.com>

	* po/Make-in (DESTDIR): New.
	(install-data-yes): Support $(DESTDIR).
	(uninstall): Likewise.

gas/

2003-06-06  H.J. Lu <hongjiu.lu@intel.com>

	* po/Make-in (DESTDIR): New.
	(install-data-yes): Support $(DESTDIR).
	(uninstall): Likewise.

gprof/

2003-06-06  H.J. Lu <hongjiu.lu@intel.com>

	* po/Make-in (DESTDIR): New.
	(install-data-yes): Support $(DESTDIR).
	(uninstall): Likewise.

ld/

2003-06-06  H.J. Lu <hongjiu.lu@intel.com>

	* po/Make-in (DESTDIR): New.
	(install-data-yes): Support $(DESTDIR).
	(uninstall): Likewise.

opcodes/

2003-06-06  H.J. Lu <hongjiu.lu@intel.com>

	* po/Make-in (DESTDIR): New.
	(install-data-yes): Support $(DESTDIR).
	(uninstall): Likewise.
2003-06-11 01:32:08 +00:00
Alan Modra
795bb480ca * bfd/Makefile.am (config.status): Depend on version.h.
Run "make dep-am" in bfd/ and elsewhere, and regen files.
2003-06-10 23:44:42 +00:00
Doug Evans
b11dcf4e7f opcodes:
* cgen-asm.in (@arch@_cgen_assemble_insn): CGEN_INSN_RELAX renamed to
	CGEN_INSN_RELAXED.
	* fr30-asm.c,fr30-desc.c,fr30-desc.h: Regenerate.
	* frv-asm.c,frv-desc.c,frv-desc.h: Regenerate.
	* ip2k-asm.c,ip2k-desc.c,ip2k-desc.h: Regenerate.
	* iq2000-asm.c,iq2000-desc.c,iq2000-desc.h: Regenerate.
	* m32r-asm.c,m32r-desc.c,m32r-desc.h,m32r-opc.c: Regenerate.
	* openrisc-asm.c,openrisc-desc.c,openrisc-desc.h: Regenerate.
	* xstormy16-asm.c,xstormy16-desc.c,xstormy16-desc.h: Regenerate.
gas:
	* cgen.c (gas_cgen_finish_insn): CGEN_INSN_RELAX renamed to
	CGEN_INSN_RELAXED.
	* config/tc-fr30.c (md_estimate_size_before_relax): Ditto.
	* config/tc-m32r.c (md_estimate_size_before_relax): Ditto.
	* config/tc-openrisc.c (md_estimate_size_before_relax): Ditto.
2003-06-10 22:08:45 +00:00
Alan Modra
adadcc0cc9 Add "attn", "lq" and "stq" power4 insns. 2003-06-10 07:44:11 +00:00
Richard Sandiford
0613284fd4 opcodes/
* h8300-dis.c (bfd_h8_disassemble): Don't print brackets round
	rts/l and rte/l register lists.

gas/
	* config/tc-h8300.c (get_rtsl_operands): Accept unbracketed register
	lists.  Allow single-register ranges.

testsuite/
	* gas/h8300/h8sx_rtsl.[sd]: New test.
	* gas/h8300/h8300.exp: Run it.
2003-06-10 07:27:56 +00:00
Richard Sandiford
7134554a4a Fix last changelog. 2003-06-10 07:14:29 +00:00
Richard Sandiford
f4984206d8 include/elf/
* h8.h (E_H8_MACH_H8300SXN): New flag.

bfd/
	* archures.c (bfd_mach_h8300sxn): New architecture.
	* bfd-in2.h: Regenerate.
	* cpu-h8300.c (h8300_scan): Check for 'sxn'.
	(h8300sxn_info_struct): New.
	(h8300sx_info_struct): Link to it.
	* elf32-h8300.c (elf32_h8_mach): Add h8300sxn case.
	(elf32_h8_final_write_processing): Likewise.

gas/
	* config/tc-h8300.c (h8300sxnmode): New.
	(md_pseudo_table): Add .h8300sxn entry.  Sync others with FSF version.

ld/
	* configure.tgt (h8300*): Add h8300sxn emulations.
	* Makefile.am (ALL_EMULATIONS): Add eh8300sxn.o and eh8300sxnelf.o.
	(eh8300sxn.c, eh8300sxnelf.c): New rules.
	* Makefile.in: Regenerate.
	* emulparams/h8300sxnelf.sh, emulparams/h8300sxn.sh: New files.
2003-06-10 07:09:31 +00:00
H.J. Lu
12b55ccc43 2003-06-09 H.J. Lu <hongjiu.lu@intel.com>
* NEWS: Updated for the new -n option for the i386 assembler.

	* config/tc-i386.c (optimize_align_code): New.
	(md_shortopts): Add 'n'.
	(md_parse_option): Handle 'n'.
	(md_show_usage): Add '-n'.

	* config/tc-i386.h (optimize_align_code): Declared.
	(md_do_align): Optimize code alignment only if optimize_align_code
	is not 0.

	* doc/as.texinfo: Add the new -n option.

	* doc/c-i386.texi: Document the new -n option.
2003-06-10 06:46:34 +00:00
Richard Henderson
1707620440 * doc/as.texinfo: Document .cfi_rel_offset. 2003-06-08 10:06:17 +00:00
Richard Henderson
fa87b337c3 * dw2gencfi.c (struct cfa_save_data, cfa_save_stack): New.
(cfi_add_CFA_offset): Detect invalid offsets.
        (cfi_add_CFA_remember_state): Save cur_cfa_offset.
        (cfi_add_CFA_restore_state): Restore it.
        (CFI_rel_offset): New.
        (cfi_pseudo_table): Add it.
        (dot_cfi): Handle it.

        * gas/cfi/cfi-common-1.d, gas/cfi/cfi-common-1.s: New.
        * gas/cfi/cfi-common-2.d, gas/cfi/cfi-common-2.s: New.
        * gas/cfi/cfi-diag-1.d, gas/cfi/cfi-diag-1.s: New.
        * gas/cfi/cfi.exp: Run them.
2003-06-08 03:59:44 +00:00
H.J. Lu
5262831592 2003-06-07 H.J. Lu <hongjiu.lu@intel.com>
* app.c (do_scrub_chars): Add states 14 and 15 to handle
	predicate for ia64.
2003-06-07 14:53:59 +00:00
Michael Snyder
d4ea8842ef 2003-06-05 Michael Snyder <msnyder@redhat.com>
* config/tc-h8sx.c (get_specific): Distinguish h8h from h8s ops.
	(build_bytes): Ditto.

2003-06-05  Richard Sandiford  <rsandifo@redhat.com>

	* config/tc-h8sx.c (DMODE): Remove.
	(colonmod24): Don't choose a default if the operand is a 16-bit
	constant integer.
	(fix_operand_size): New function.
	(md_assemble): Use it to choose between @(d:2, ERn) and @(d:16,ERn).
	Adjust @(d:2,ERn) operands before choosing the specific opcodes.
2003-06-05 18:53:35 +00:00
Michal Ludvig
2be24b54a9 2003-06-05 Michal Ludvig <mludvig@suse.cz>
* dw2gencfi.c (cfi_add_CFA_insn, cfi_add_CFA_insn_reg)
	(cfi_add_CFA_insn_reg_reg, cfi_add_CFA_insn_reg_offset): New.
	(cfi_add_CFA_offset, cfi_add_CFA_def_cfa)
	(cfi_add_CFA_register, cfi_add_CFA_def_cfa_register)
	(cfi_add_CFA_def_cfa_offset): Use cfi_add_CFA_insn_*().
	(cfi_add_CFA_restore, cfi_add_CFA_undefined)
	(cfi_add_CFA_same_value, cfi_add_CFA_remember_state)
	(cfi_add_CFA_restore_state, cfi_add_CFA_nop): New.
	(cfi_pseudo_table): New directives .cfi_return_column,
	.cfi_restore, .cfi_undefined, .cfi_same_value,
	.cfi_remember_state, .cfi_restore_state, .cfi_nop.
	(dot_cfi, output_cfi_insn): Handle new directives.
	* dw2gencfi.h (cfi_add_CFA_restore, cfi_add_CFA_undefined)
	(cfi_add_CFA_same_value, cfi_add_CFA_remember_state)
	(cfi_add_CFA_restore_state, cfi_add_CFA_nop): New prototypes.
2003-06-05 09:23:47 +00:00
Richard Henderson
1233ae6299 * dw2gencfi.c (output_cfi_insn): Fix typo for negative offsets. 2003-06-05 06:53:40 +00:00
Richard Henderson
757bc39371 * dw2gencfi.c (cfi_finish): Set .eh_frame read-only. 2003-06-05 05:25:38 +00:00
Richard Henderson
f4b97536ed * config/tc-alpha.c (s_alpha_usepv): New.
(md_pseudo_table): Add it.
        (alpha_cfi_frame_initial_instructions): New.
        * config/tc-alpha.h (TARGET_USE_CFIPOP): New.
        (tc_cfi_frame_initial_instructions): New.
        * doc/c-alpha.texi: Document .usepv.

        * gas/alpha/elf-usepv-1.[sd]: New.
        * gas/alpha/elf-usepv-2.[sd]: New.
        * gas/alpha/alpha.exp: Run them.
        * gas/cfi/cfi-alpha-3.[sd]: New.
        * gas/cfi/cfi.exp: Run it.
2003-06-05 03:27:03 +00:00
Jakub Jelinek
68d55fe3f0 * as.c (show_usage): Document --execstack and --noexecstack.
(parse_args): Add --execstack and --noexecstack.
	(main): Create .note.GNU-stack section if --execstack or
	--noexecstack was given on comand line, set its SHF_EXECINSTR bit.
	* as.h (flag_execstack, flag_noexecstack): New.
2003-06-04 16:54:45 +00:00
Chris Demetriou
f9b4148d9e 2003-06-03 Chris Demetriou <cgd@broadcom.com>
* config/tc-mips.c: (OPTION_ARCH_BASE, OPTION_ASE_BASE)
        (OPTION_COMPAT_ARCH_BASE, OPTION_FIX_BASE)
        (OPTION_MISC_BASE): New defines.
        (OPTION_BREAK, OPTION_CONSTRUCT_FLOATS, OPTION_EB, OPTION_EL)
        (OPTION_ELF_BASE, OPTION_FIX_VR4122, OPTION_FP32, OPTION_FP64)
        (OPTION_GP32, OPTION_GP64, OPTION_M3900, OPTION_M4010, OPTION_M4100)
        (OPTION_M4650, OPTION_M7000_HILO_FIX, OPTION_MARCH, OPTION_MDMX)
        (OPTION_MEMBEDDED_PIC, OPTION_MIPS1, OPTION_MIPS16, OPTION_MIPS2)
        (OPTION_MIPS3, OPTION_MIPS32, OPTION_MIPS32R2, OPTION_MIPS3D)
        (OPTION_MIPS4, OPTION_MIPS5, OPTION_MIPS64)
        (OPTION_MNO_7000_HILO_FIX, OPTION_MTUNE, OPTION_NO_CONSTRUCT_FLOATS)
        (OPTION_NO_FIX_VR4122, OPTION_NO_M3900, OPTION_NO_M4010)
        (OPTION_NO_M4100, OPTION_NO_M4650, OPTION_NO_MDMX, OPTION_NO_MIPS16)
        (OPTION_NO_MIPS3D, OPTION_NO_RELAX_BRANCH, OPTION_RELAX_BRANCH)
        (OPTION_TRAP): Redefine in terms of new defines.
        (md_longopts): Reorder entries.
2003-06-04 06:38:38 +00:00
Michael Snyder
7ee7b84dfa 2003-05-14 Michael Snyder <msnyder@redhat.com>
From Bernd Schmidt  <bernds@redhat.com>
	and Michael Snyder  <msnyder@redhat.com>
        and Alexandre Oliva <aoliva@redhat.com>
	* config/tc-h8300.c: Add insns and addressing modes for h8300sx.
	* config/tc-h8300.h: Ditto.
2003-06-03 21:29:08 +00:00
Nick Clifton
e30ddb24b3 Add pc-relative 32-bit reloc to v850 port. Fixes ld-elf/merge test failure. 2003-06-03 16:24:06 +00:00
H.J. Lu
9f470756e9 Reformat. 2003-06-02 23:11:43 +00:00
Alan Modra
ed7d5d1a43 * read.c (emit_expr): Set dot_value.
* dw2gencfi.c (output_fde): Remove pcrel reloc hack.
2003-06-02 22:48:59 +00:00
Alan Modra
c1ed1235d7 * macro.c (sub_actual): Don't lose string if it turns out that
&string wasn't an arg.
2003-06-02 15:03:20 +00:00
Richard Henderson
eafbc43f93 * dw2gencfi.c (output_fde): Use fix_new to emit pc-relative reloc.
(cfi_finish): Set flag_traditional_format around .eh_frame data.

        * gas/alpha/elf-reloc-8.d: Correct .eh_frame relocs.
        * gas/cfi/cfi-alpha-2.d: New.
        * gas/cfi/cfi-alpha-2.s: New.
        * gas/cfi/cfi.exp: Run it.
2003-05-31 19:36:45 +00:00
Richard Henderson
f37f01cff7 * config/tc-alpha.c (alpha_cur_ent_sym): Remove.
(all_frame_data, plast_frame_data, cur_frame_data): New.
        (s_alpha_ent): Record data for dwarf2 cfi.
        (s_alpha_end, s_alpha_mask, s_alpha_frame, s_alpha_prologue): Likewise.[
        (alpha_elf_md_end): Emit dwarf2 cfi for ecoff unwind directives.
        * config/tc-alpha.h (md_end): New.
        (DWARF2_DEFAULT_RETURN_COLUMN): New.
        (DWARF2_CIE_DATA_ALIGNMENT): New.

        * gas/alpha/elf-reloc-8.d: Add .eh_frame relocs.
        * gas/cfi/cfi-alpha-1.d: New.
        * gas/cfi/cfi-alpha-1.s: New.
        * gas/cfi/cfi.exp: Run it.
2003-05-30 03:01:12 +00:00
Nick Clifton
a197c3519c Add i386-*-freebsd* entry. 2003-05-29 18:17:55 +00:00
Nick Clifton
4bf4a8829c Change Mitsubishi to Renesas 2003-05-29 17:37:03 +00:00
Richard Henderson
756d1d0188 * expr.c (make_expr_symbol): Fold FAKE_LABEL_NAME use into the
symbol_create call.
        (current_location): Use symbol_temp_new_now.
        * stabs.c (s_stab_generic): Use symbol_temp_new.
        * symbols.c (temp_label_name): Remove.
        (symbol_temp_new, symbol_temp_make): Use FAKE_LABEL_NAME.
2003-05-27 19:19:29 +00:00
Richard Henderson
a4447b9378 * dw2gencfi.c, dw2gencfi.h: Rewrite from scratch.
* as.c (main): Always call cfi_finish.
        * config/tc-i386.c (x86_dwarf2_return_column): New.
        (x86_cie_data_alignment): New.
        (md_begin): Set them.
        (tc_x86_cfi_init): Remove.
        (tc_x86_regname_to_dw2regnum): Fix 32-bit register numbers;
        return int, not unsigned long; don't as_bad here.
        (tc_x86_frame_initial_instructions): Streamline; use
        updated api.
        * config/tc-i386.h (tc_cfi_init): Remove.
        (DWARF2_DEFAULT_RETURN_COLUMN): New.
        (DWARF2_CIE_DATA_ALIGNMENT): New.

        * gas/cfi/cfi-i386.d: Update for dw2gencfi rewrite.
        * gas/cfi/cfi-x86_64.d: Likewise.
        * gas/cfi/cfi-i386-2.d: New.
        * gas/cfi/cfi-i386-2.s: New.
2003-05-27 16:52:49 +00:00
Richard Henderson
b7d6ed970a * symbols.c (temp_label_name): New.
(symbol_temp_new, symbol_temp_new_now, symbol_temp_make): New.
        (symbol_set_value_now): New.
        * symbols.h: Prototype them.
        * dwarf2dbg.c: Use them.
        (fake_label_name, symbol_new_now, set_symbol_value_now): Remove.
2003-05-27 16:00:04 +00:00
Jason Eckhardt
14218d5f24 2003-05-23 Jason Eckhardt <jle@rice.edu>
gas:
        * config/tc-i860.c (target_xp): Declare variable.
        (OPTION_XP): Declare macro.
        (md_longopts): Add option -mxp.
        (md_parse_option): Set target_xp.
        (md_show_usage): Add -mxp usage.
        (i860_process_insn): Recognize XP registers bear, ccr, p0-p3.
        (md_assemble): Don't try expansions if XP_ONLY is set.
        * doc/c-i860.texi: Document -mxp option.

gas/testsuite:
        * gas/i860/xp.s: New file.
        * gas/i860/xp.d: New file.

include/opcode:
        * i860.h (expand_type): Add XP_ONLY.
        (scyc.b): New XP instruction.
        (ldio.l): Likewise.
        (ldio.s): Likewise.
        (ldio.b): Likewise.
        (ldint.l): Likewise.
        (ldint.s): Likewise.
        (ldint.b): Likewise.
        (stio.l): Likewise.
        (stio.s): Likewise.
        (stio.b): Likewise.
        (pfld.q): Likewise.

opcodes:
        * i860-dis.c (crnames): Add bear, ccr, p0, p1, p2, p3.
        (print_insn_i860): Grab 4 bits of the control register field
        instead of 3.
2003-05-24 04:22:23 +00:00
Eric Christopher
36ede617d2 2003-05-23 Eric Christopher <echristo@redhat.com>
* config/tc-mips.c (macro_build_jalr): Warning patrol.
2003-05-23 22:26:20 +00:00
Thiemo Seufer
a105a3009c * config/tc-mips.c (append_insn): Use actual relocation size for new
fixp's.	Don't relax overflow checking for partial_inplace relocations.
	Use the actual relocation type in combined relocs, not just the type
	of the first one.
	(macro_build_jalr): Use actual relocation size for new fix.
	(s_cpsetup, s_gpdword): Likewise.
2003-05-22 09:19:33 +00:00
Thiemo Seufer
dc9461f6ad * config/tc-mips.c (macro): Don't use uninitialized tempreg. 2003-05-22 09:15:12 +00:00
Nick Clifton
ceb410091e Do not producesection relative offsets for relocs that will not be based on the
section symbol.
2003-05-22 08:57:32 +00:00
Eric Christopher
143d77c5e9 2003-05-07 Eric Christopher <echristo@redhat.com>
Alexandre Oliva   <aoliva@redhat.com>

	* elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Adjust
	pic tests, change to warning.
	(_bfd_mips_elf_final_link): Remove EF_MIPS_CPIC flag setting.

2003-05-07  Eric Christopher  <echristo@redhat.com>

        * config/tc-mips.c (mips_abicalls): New variable.
        (md_parse_option): Use.
        (s_option): Ditto.
        (s_abicalls): Ditto.
        (mips_elf_final_processing): Set EF_MIPS_PIC and
        EF_MIPS_CPIC dependent on above.
2003-05-21 21:53:33 +00:00
Dave Anglin
85c77c383f * config/tc-hppa.c (hppa_symbol_chars): Remove ,' and !'.
* testsuite/gas/hppa/parse/parse.exp: Add "space.s".
	* testsuite/gas/hppa/parse/space.s: New file to test spaces.
2003-05-21 19:40:54 +00:00
Nick Clifton
87ccc1b08d Move .file and .loc pseudo ops into obj-elf.c 2003-05-21 12:07:56 +00:00
Nick Clifton
7ed2c8b026 Fix dw3gencfi.c so that it will build on targets that do not define BFD_ASSEMBLER. 2003-05-21 11:31:07 +00:00
Michal Ludvig
39b8215104 2003-05-20 Michal Ludvig <mludvig@suse.cz>
* as.c (main): Remove tc_cfi_init().
	* dw2gencfi.c (cfi_parse_arg): Allow regnames beginning
	with '%'.
	(cfi_pseudo_table): Add "cfi_register" entry.
	(cfi_make_insn): Handle CFA_register.
	(cfi_output_insn): Ditto.
	(dot_cfi): Ditto.
	(cfi_get_label): Add 'simple' modifier to .cfi_startproc.
	(dot_cfi_endproc): Reuse already emitted CIEs.
	* testsuite/gas/cfi/cfi-i386.d: New pattern.
	* testsuite/gas/cfi/cfi-x86-64.d: Ditto.
2003-05-20 14:31:44 +00:00
Nick Clifton
f53e95c758 Add support for .file and .loc 2003-05-20 11:58:20 +00:00
Alan Modra
7c0295b157 * dw2gencfi.c (cfi_parse_arg): Only use tc_regname_to_dw2regnum if
defined.
	(dot_cfi_endproc): Avoid C99 construct.
2003-05-20 11:35:45 +00:00
Alan Modra
54cfded08e * dw2gencfi.c, dw2gencfi.h: New files.
* config/tc-i386.c (tc_x86_cfi_init): New function.
	* config/tc-i386.h (TARGET_USE_CFIPOP, tc_cfi_init): New defines.
	* as.c (parse_args): Set verbose flag on --verbose.
	(main): Call tc_cfi_init()/cfi_finish().
	* as.h (verbose): New external variable.
	* read.c (pobegin): Insert CFI pops to the list.
	* symbols.c (local_symbol_make): Make symbol external.
	* symbols.h (local_symbol_make): New prototype.
	* Makefile.am: Add dw2gencfi.[ch] files.  Run "make dep-am".
	* Makefile.in: Regenerate.
	* doc/as.texinfo: Added node "CFI directives" with description of
	all implemented .cfi_* directives.
	* doc/Makefile.in: Regenerate.
	* po/POTFILES.in: Regenerate.
2003-05-20 07:58:07 +00:00
Svein Seldal
78d8735ac7 Reverted faulty code 2003-05-18 22:52:35 +00:00
Svein Seldal
1975ab2528 Forgot to check in changelog of config/tc-tic4x.h 2003-05-18 22:25:42 +00:00
Svein Seldal
a1f3c24c25 * config/tc-tic4x.c (md_assemble): Added support for one-line parallel insns.
(tic4x_start_line): Fixed scrub bug and added error for three-element
	parallel insns.
2003-05-18 22:23:15 +00:00
Jason Eckhardt
b645cb1726 2003-05-18 Jason Eckhardt <jle@rice.edu>
gas:
        * config/tc-i860.c (i860_process_insn): Initialize fc after
        each opcode mismatch.

include/opcode:
        * i860.h (form, pform): Add missing .dd suffix.

opcodes:
        * i860-dis.c (print_insn_i860): Instruction shrd has a dual bit,
        print it.

bfd:
        * elf32-i860.c (elf32_i860_relocate_highadj): Simplify calculation.
2003-05-18 21:24:33 +00:00
Nick Clifton
80c7c40aef Replace i[3456]86 with i[3-7]86 2003-05-16 16:30:27 +00:00
Thiemo Seufer
c344a4c8c4 * config/tc-mips.h: Fix comment formatting. 2003-05-15 00:02:06 +00:00
Hans-Peter Nilsson
64e55042d6 * read.c (old_buffer, old_input, old_limit): Remove variables.
(read_a_source_file): Delete label contin.
	<handling #APP/#NO_APP>: Use an "sb" to push #APP expansion into
	input as with macros, instead of in separate old_* variables.
	Zero-terminate string being scrubbed.
2003-05-13 01:51:40 +00:00
Nick Clifton
e66c629e09 Allow xstormy-elf-gas to handle "@fptr() - @fptr()" expressions. 2003-05-12 09:09:11 +00:00
Jason Eckhardt
673a54e371 2003-05-11 Jason Eckhardt <jle@rice.edu>
* config/tc-i860.c (MAX_FIXUPS): Define.
        (struct i860_fi fi[]): New struct.
        (struct i860_it the_insn): Add above as member and move fields
        exp, reloc, pcrel and fup into i860_fi.
        (md_assemble): Replace all instances of exp, reloc, pcrel
        and fup with fi[].exp, fi[].reloc, fi[].pcrel, fi[].fup.
        Add a loop to possibly emit multiple fix-ups for each insn.
        (i860_process_insn): Likewise.
        (i860_get_expression): Likewise.
        (md_apply_fix3): Use a bitwise check for OP_IMM_U5, not equality.
2003-05-12 03:35:34 +00:00
Martin Schwidefsky
2ebb4b8890 * config/tc-s390.c (s390_target_format): Always call init_default_arch. 2003-05-09 15:32:52 +00:00
H.J. Lu
35f5df7fe8 gas/
2003-05-07  H.J. Lu <hongjiu.lu@intel.com>

	* config/tc-ia64.c (alias_hash): New.
	(alias_name_hash): New.
	(secalias_hash): New.
	(secalias_name_hash): New.
	(md_pseudo_table): Add "secalias".
	(md_begin): Initialize alias_hash, alias_name_hash,
	secalias_hash and secalias_name_hash.
	(struct alias): New.
	(dot_alias): Implement .alias and .secalias directives.
	(do_alias): New.
	(ia64_adjust_symtab): New.
	(do_secalias): New.
	(ia64_frob_file): New.

	* config/tc-ia64.h (ia64_adjust_symtab): New.
	(tc_adjust_symtab): Defined.
	(ia64_frob_file): New.
	(tc_frob_file): Defined.

gas/testsuite/

2003-05-07  H.J. Lu <hongjiu.lu@intel.com>

	* gas/ia64/ia64.exp: Add alias.

	* gas/ia64/alias.s: New.
	* gas/ia64/alias.d: Likewise.
2003-05-07 19:31:10 +00:00
Nick Clifton
d2bf1bdacb (md_show_usage): Add missing lines to known cpus list. 2003-05-07 08:58:33 +00:00
Alexandre Oliva
cac012d6d3 * configure.in (MIPS_DEFAULT_ABI): AC_DEFINE.
* config/tc-mips.c (mips_after_parse_args): Set mips_abi to it.
* config.in, configure: Rebuilt.
2003-05-07 05:10:45 +00:00
H.J. Lu
d8dbbec1ca 2003-05-05 H.J. Lu <hjl@gnu.org>
* config/tc-mips.c (tc_gen_reloc): Add addend just once if
	howto->partial_inplace is false.
2003-05-06 00:28:25 +00:00
Daniel Jacobowitz
9204e615fb * config/tc-mips.c (mips_need_elf_addend_fixup): Remove
symbol_used_in_reloc_p check.
	(md_apply_fix3): Remove check for howto->pcrel_offset.
2003-05-06 00:16:12 +00:00
H.J. Lu
711ef82f1d gas/
2003-05-03  H.J. Lu <hjl@gnu.org>

	* config/obj-elf.c (obj_elf_parse_section_letters): Make it a
	fatal error for unknown section attribute.

	* config/tc-alpha.c (alpha_elf_section_letter): Return -1 for
	unknown section attribute.
	* config/tc-ia64.c (ia64_elf_section_letter): Likewise.
	* config/tc-ppc.c (ppc_section_letter): Likewise.

	* config/tc-ia64.c (ia64_elf_section_letter): Handle 'o'.
	(ia64_elf_section_type): Accept "unwind".

gas/testsuite/

2003-05-03  H.J. Lu <hjl@gnu.org>

	* gas/ia64/ia64.exp: Add unwind.

	* gas/ia64/unwind.s: New. Test the new section attribute 'o'
	and the new section type "unwind".
	* gas/ia64/unwind.d: Likewise.
2003-05-03 16:04:12 +00:00
H.J. Lu
83b5ab55b3 2003-05-02 H.J. Lu <hjl@gnu.org>
* read.h (demand_copy_string): New.

	* config/tc-alpha.c (demand_copy_string): Removed.
2003-05-03 06:10:59 +00:00
Michael Snyder
7ff0565e83 2003-05-02 Michael Snyder <msnyder@redhat.com>
* write.h (FAKE_LABEL_NAME): Allow override
	(for targets that like eg. a leading dot in a local label).
2003-05-02 18:38:49 +00:00