Commit Graph

31112 Commits

Author SHA1 Message Date
Alan Modra
5c67d4bb59 * Makefile.am (ALL_EMULATIONS): Add eelf64ppc.o and eelf64lppc.o.
(eelf64ppc.c, eelf64lppc.c): Add make targets.
	Run "make dep-am"
	* Makefile.in: Regenerate.
	* configure.tgt: Add powerpc64 support.  Move pdp11, pjl, pj
	entries to correct alphabetical position.
	* emulparams/elf64ppc.sh: New.
	* emulparams/elf64lppc.sh: New.
2001-08-27 10:45:55 +00:00
Alan Modra
0baf16f23c * configure.in: Recognise powerpc*le*, not just powerpcle*.
* configure: Regenerate.
	* config/tc-ppc.c (PPC_LO, PPC_HI, PPC_HA, PPC_HIGHER,
	PPC_HIGHERA, PPC_HIGHEST, PPC_HIGHESTA, SEX16): New macros.
	(md_assemble): Use them.
	(ppc_machine): Support stub for ELF64 as well as XCOFF.
	(md_pseudo_table): Add "llong", "quad".
	(md_parse_option): Match default_cpu of powerpc*.
	(ppc_arch): Likewise.
	(ppc_subseg_align): Only for OBJ_XCOFF.
	(ppc_target_format): Return elf64-powerpc strings for 64 bit ELF.
	(md_begin): Select PPC_OPCODE_64 for 64 bit.
	(ppc_insert_operand): Don't bother testing 'file' before calling
	as_bad_where.  Use as_bad_where for operand->insert errors.
	(mapping): Add ELF64 relocation modifiers.
	(ppc_elf_suffix): Replace symbol on BFD_RELOC_PPC64_TOC reloc
	expressions with abs_symbol.
	(ppc_elf_cons): Correct offset for little endian targets.
	(ppc_elf_frob_symbol): New.
	(md_assemble): Add support for 64 bit ELF relocs.
	(ppc_tc): Ensure 8 byte alignment when 64 bit.
	(ppc_is_toc_sym): Only define for OBJ_XCOFF and OBJ_ELF.  Match
	".toc" section for 64 bit ELF.
	(ppc_fix_adjustable): New.  Macro body moved from tc-ppc.h.
	(md_apply_fix3): Silence warning with ATTRIBUTE_UNUSED.  Only do
	the ppc_is_toc_sym check for OBJ_XCOFF and OBJ_ELF.  For 64 bit,
	use BFD_RELOC_PPC64_TOC16_DS instead of BFD_RELOC_PPC_TOC16.
	Expand on comments, error message.  Add support for 64 bit relocs,
	and use PPC_HI etc. macros.
	* config/tc-ppc.h (MAX_MEM_FOR_RS_ALIGN_CODE): Define.
	(HANDLE_ALIGN): Define to generate nops in code sections rather
	than zeros.
	(TC_FORCE_RELOCATION): Force for BFD_RELOC_PPC64_TOC.
	(ELF_TC_SPECIAL_SECTIONS): Add 64 bit ELF sections.
	(tc_fix_adjustable): Move body of macro to tc-ppc.c.
	(ppc_fix_adjustable): Declare.
	(tc_frob_symbol): Define.
	(ppc_elf_frob_symbol): Declare.
2001-08-27 10:42:16 +00:00
Alan Modra
87e9f96075 * binutils-all/readelf.s-64: Adjust offsets for powerpc64. Don't
use constructs like [45][08] when all combinations are not valid.
	Instead use (48|50) to explicitly state which values are correct.
2001-08-27 10:38:41 +00:00
Nick Clifton
e4b172749c Add missing prototypes 2001-08-27 10:35:20 +00:00
Alan Modra
25a1ff5b2d * readelf.c (dump_relocations): Recognise EM_PPC64. 2001-08-27 10:33:19 +00:00
Alan Modra
6ba045b129 * ppc-opc.c (DS): Add PPC_OPERAND_DS flag.
(LS): Define.
	(insert_ds): Complain if not a multiple of 4.
	(XSYNC): Define.
	(XSYNC_MASK): Define.
	(powerpc_opcodes): Add "slbmte", "lwsync", "ptesync", "slbmfev",
	"slbmfee".  Modify "sync" to use XSYNC_MASK and LS.
2001-08-27 10:27:48 +00:00
Alan Modra
a695901141 * ppc.h (PPC_OPERAND_DS): Define. 2001-08-27 10:26:57 +00:00
Alan Modra
abd0e9cb21 * ppc.h: Add relocs from the 64-bit PowerPC ELF ABI revision 1.2. 2001-08-27 10:26:34 +00:00
Alan Modra
5bd4f1692e * config.bfd: Add powerpc64 target. Add powerpc64 vectors to
targ64_selvecs for 32 bit powerpc targets.
	* Makefile.am (BFD64_BACKENDS): Add elf64-ppc.lo.
	(BFD64_BACKENDS_CFILES): Add elf64-ppc.c.
	Run "make dep-am".
	* Makefile.in: Regenerate.
	* configure.in: Add elf64_powerpc vecs.
	* configure: Regenerate.
	* cpu-powerpc.c: Default to bfd_mach_ppc_620 entry for 64 bit.
	* elf.c (prep_headers): EM_PPC64 for 64 bit ppc elf target.
	* targets.c: Add bfd_elf64_powerpc_vec and bfd_elf64_powerpcle_vec.
	* elf64-ppc.c: New file.
	* reloc.c: Add powerpc64 relocs.
	* libbfd.h: Regenerate.
	* bfd-in2.h: Regenerate.
2001-08-27 10:22:03 +00:00
Andreas Schwab
aa91b392b3 * elf32-m68k.c (elf32_m68k_check_relocs): Set DF_TEXTREL if the
reloc is against read-only section.
	(elf32_m68k_size_dynamic_sections): Use DF_TEXTREL flag instead of
	looking up section names for DT_TEXTREL.
	(elf32_m68k_reloc_type_class): New function.
	(elf_backend_reloc_type_class): Define.
2001-08-27 09:16:10 +00:00
Andreas Jaeger
d3a5039f02 * xcoff.h (struct __rtinit): Make proper prototype for rtl. 2001-08-27 09:08:38 +00:00
Andreas Jaeger
29c2fb7c2b * elf64-s390.c (elf_s390_check_relocs): Set DF_TEXTREL if the
reloc is against read-only section.
	(elf_s390_size_dynamic_sections): Use DF_TEXTREL flag instead of
	looking up section names for DT_TEXTREL.
	(elf_s390_reloc_type_class): New.
	(elf_backend_reloc_type_class): Define.

	* elf32-s390.c (elf_s390_check_relocs): Set DF_TEXTREL if the
	reloc is against read-only section.
	(elf_s390_size_dynamic_sections): Use DF_TEXTREL flag instead of
	looking up section names for DT_TEXTREL.
	(elf_s390_reloc_type_class): New.
	(elf_backend_reloc_type_class): Define.

	* elf32-ppc.c (ppc_elf_check_relocs): Set DF_TEXTREL if the reloc
	is against read-only section.
	(ppc_elf_size_dynamic_sections): Use DF_TEXTREL flag instead of
	looking up section names for DT_TEXTREL.
	(ppc_elf_reloc_type_class): New.
	(elf_backend_reloc_type_class): Define.
2001-08-27 08:59:08 +00:00
Nick Clifton
081310158f Declare BSIZE as static 2001-08-27 08:52:50 +00:00
Andrew Cagney
526eeb95b8 From 2001-06-29 Andrew Cagney <ac131313@redhat.com>:
* config/powerpc/nbsd.mh (XM_FILE): Delete.
2001-08-27 02:22:14 +00:00
gdbadmin
215bf1461e *** empty log message *** 2001-08-27 00:00:05 +00:00
Andrew Cagney
c16ac28fb3 * doublest.h (HOST_FLOAT_FORMAT): Delete macro.
(HOST_DOUBLE_FORMAT): Delete macro.
2001-08-26 18:46:10 +00:00
Andreas Jaeger
99e4ae17b9 * elf32-cris.c (cris_elf_check_relocs): Set DF_TEXTREL if the
reloc is against read-only section.
	(elf_cris_size_dynamic_sections): Use DF_TEXTREL flag instead of
	looking up section names for DT_TEXTREL.
	(elf_cris_reloc_type_class): New.
	(elf_backend_reloc_type_class): Define.

	* elf32-sh.c (sh_elf_check_relocs): Set DF_TEXTREL if the reloc is
	against read-only section.
	(elf_backend_reloc_type_class): Define.
	(sh_elf_reloc_type_class): New.
	(sh_elf_size_dynamic_sections): Use DF_TEXTREL flag instead of
	looking up section names for DT_TEXTREL.

	* elf32-arm.h (elf32_arm_check_relocs): Set DF_TEXTREL if the
	reloc is against read-only section.
	(elf32_arm_size_dynamic_sections): Use DF_TEXTREL flag instead of
	looking up section names for DT_TEXTREL.
	(elf32_arm_reloc_type_class): New.
2001-08-26 18:03:19 +00:00
Andreas Jaeger
5b3fabc955 * h8500-opc.h: Add default initializers to h8500_table to shut up
GCC warnings.
2001-08-26 14:04:42 +00:00
Thiemo Seufer
a5d22d2ad5 * readelf.c (get_machine_flags): Add detection of EF_MIPS_32BITMODE. 2001-08-26 13:04:34 +00:00
Andreas Jaeger
d83c654853 For include/opcode:
* d30v.h: Fix declaration of reg_name_cnt.

	* d10v.h: Fix declaration of d10v_reg_name_cnt.

	* arc.h: Add prototypes from opcodes/arc-opc.c.

For opcodes:
	* tic54x-dis.c: Add unused attributes where needed.

	* z8k-dis.c (output_instr): Add unused attribute.

	* h8300-dis.c: Add missing prototypes.
	(bfd_h8_disassemble): Make static.

	* cris-dis.c: Add missing prototype.
	* h8500-dis.c: Likewise.
	* m68hc11-dis.c: Likewise.
	* pj-dis.c: Likewise.
	* tic54x-dis.c: Likewise.
	* v850-dis.c: Likewise.
	* vax-dis.c: Likewise.
	* w65-dis.c: Likewise.
	* z8k-dis.c: Likewise.

	* d10v-dis.c: Add missing prototype.
	(dis_long): Remove unused variable.
	(dis_2_short): Likewise.

	* sh-dis.c: Add missing prototypes.
	* v850-opc.c: Likewise.
	Add unused attributes where needed.

	* ns32k-dis.c: Add missing prototypes.
	(bit_extract_simple): Remove unused variable.
2001-08-26 11:47:39 +00:00
Andreas Jaeger
24a35864ab * oasys.c: Add missing prototypes.
* elf64-alpha.c (elf64_alpha_size_dynamic_sections): Add unused
	attribute for parameter.
	* elf.c (_bfd_elf_reloc_type_class): Likewise.

	* versados.c (get_4): Make static.
	(get_10): Make static.
	Add missing prototypes.
	(process_esd): Fix call to versados_new_symbol.
2001-08-26 11:46:04 +00:00
Andreas Jaeger
9d654c1ca4 * config/tc-s390.c: Add missing prototypes
(md_gather_operands): Make static.
2001-08-26 11:44:51 +00:00
Thiemo Seufer
e7d556dfef * tc_mips.h (MAX_GPREL_OFFSET): Change it to the maximum allowed
value, not the word beyond maximum.
	* tc_mips.c (macro_build_lui): Code cleanup.
	(macro): Reflect change to MAX_GPREL_OFFSET.
	(mips_ip): Check explicitly against S_EX_NONE.
	(my_get_SmallExpression): parse for %gp_rel, not %gprel.
	(md_apply_fix): Code cleanup.
2001-08-26 10:42:12 +00:00
gdbadmin
b92b9cfe73 *** empty log message *** 2001-08-26 00:00:02 +00:00
H.J. Lu
62a5a82d70 2001-08-25 H.J. Lu <hjl@gnu.org>
* nm.c (print_width): New.
	(display_rel_file): Set `print_width' according to
	bfd_sprintf_vma.
	(print_symbol_info_bsd): Check `print_width' instead of BFD64.
2001-08-25 15:16:39 +00:00
Nick Clifton
917583ad77 Add missing prototypes 2001-08-25 09:49:44 +00:00
Nick Clifton
b7781dbed3 fix compile time warning message 2001-08-25 09:48:13 +00:00
Thiemo Seufer
aee61b1396 * elf32-mips.c (elf_mips_abi_name): Return the right ABI string for
E_MIPS_ABI_O64 and E_MIPS_ABI_EABI64
2001-08-25 01:27:54 +00:00
Thiemo Seufer
dda688fcad * binutils-all/readelf.exp: Don't regard mips*el-*-* as traditional
mips.
	* gas/mips/mips.exp: Likewise. Use traditional testcases for
	mips${el}16-f if needed.
	* gas/mips/elempic.d: New file, testcase for little endian empic.
	* gas/mips/elfel-rel2.d: Don't test trailing zeroes in dump.
	* gas/mips/mips16-f.d: Use non-traditional symbol sorting.
	* gas/mips/mipsel16-f.d: Likewise.
	* gas/mips/mipsel16-e.d: New file, testcase for little endian MIPS16
	relocations.
	* gas/mips/tmipsel16-f.d: New file, testcase for little endian MIPS16
	relocations, traditional variant.
2001-08-25 00:48:49 +00:00
gdbadmin
602ffeaf84 *** empty log message *** 2001-08-25 00:00:02 +00:00
H.J. Lu
b0f35f365d 2001-08-24 H.J. Lu <hjl@gnu.org>
* elf.c (_bfd_elf_merge_sections): Fail if not using an ELF
	hash structure.
2001-08-24 20:10:25 +00:00
Andreas Jaeger
34f63668bf * config/tc-ppc.h: Fix prototype declaration. 2001-08-24 19:18:45 +00:00
Nick Clifton
8ea2e4bd70 Apply H.J.'s patch to revert change to elfxx-target.h
Apply my patch to allow SREC as output format.
2001-08-24 16:36:04 +00:00
Alexandre Oliva
1ae8b3d2a0 * objcopy.c (use_alt_mach_code): New variable.
(OPTION_ALT_MACH_CODE): Define.
(copy_options): Added --alt-machine-code.
(copy_main): Handle it.
(copy_object): Switch to alternate machine code if requested.
* doc/binutils.texi: Document new option.
* NEWS: Likewise.
2001-08-24 13:56:11 +00:00
Alexandre Oliva
8c98ec7dcc * bfd.c (bfd_alt_mach_code): New function.
* bfd-in2.h: Rebuilt.
2001-08-24 13:55:55 +00:00
Alexandre Oliva
17ea634937 * elf-m10300.c (mn10300_elf_relocate_section): Test the right
`type' field in the hash entry when deciding whether to follow a
link.
2001-08-24 13:14:46 +00:00
Mark Kettenis
ceacb162a1 * config/xm-lynx.h, config/xm-nbsd.h, config/xm-sysv4.h,
config/i386/xm-i386aix.h, config/m68k/xm-dpx2.h: Remove redundant
inclusion of <limits.h>.
2001-08-24 12:19:59 +00:00
Jakub Jelinek
fcfbdf319e * elflink.h (elf_link_sort_cmp1): Sort RELATIVE relocs first, not
last.
	(elf_link_sort_relocs): Adjust accordingly.

	* elf64-alpha.c (struct alpha_elf_link_hash_entry): Add reltext flag.
	(elf64_alpha_check_relocs): Set it if section this reloc is against
	is read-only.  Set DF_TEXTREL if a RELATIVE reloc is needed against
	read-only section.
	(elf64_alpha_calc_dynrel_sizes): Set DF_TEXTREL flag if relocation
	is is against read-only section.
	(elf64_alpha_size_dynamic_sections): Use DF_TEXTREL flag, don't
	check section names.
	(elf64_alpha_reloc_type_class): New.
	(elf_backend_reloc_type_class): Define.
2001-08-24 11:17:30 +00:00
Andrew Cagney
275f450c27 * regcache.c (read_register_bytes): When REGISTER_NAME indicates
that a register should be ignored, supply a value for the register
from the raw registers[] buffer.
2001-08-24 05:11:07 +00:00
Andrew Cagney
12a498f33a * go32-nat.c (go32_create_inferior): Use xfree instead of free.
* config/djgpp/fnchange.lst: Add entries for i386bsd-tdep.c and
i386bsd-nat.c.
2001-08-24 05:00:06 +00:00
Andrew Cagney
598f52dfcc * gdbtypes.h (builtin_type_ieee_single_big)
(builtin_type_ieee_single_little, builtin_type_ieee_double_big)
(builtin_type_ieee_double_little)
(builtin_type_ieee_double_littlebyte_bigword)
(builtin_type_i387_ext, builtin_type_m68881_ext)
(builtin_type_i960_ext, builtin_type_m88110_ext)
(builtin_type_m88110_harris_ext, builtin_type_arm_ext_big)
(builtin_type_arm_ext_littlebyte_bigword)
(builtin_type_ia64_spill_big, builtin_type_ia64_spill_little)
(builtin_type_ia64_quad_big)
(builtin_type_ia64_quad_little): Declare.
* gdbtypes.c (builtin_type_ieee_single_big)
(builtin_type_ieee_single_little, builtin_type_ieee_double_big)
(builtin_type_ieee_double_little)
(builtin_type_ieee_double_littlebyte_bigword)
(builtin_type_i387_ext, builtin_type_m68881_ext)
(builtin_type_i960_ext, builtin_type_m88110_ext)
(builtin_type_m88110_harris_ext, builtin_type_arm_ext_big)
(builtin_type_arm_ext_littlebyte_bigword)
(builtin_type_ia64_spill_big, builtin_type_ia64_spill_little)
(builtin_type_ia64_quad_big)
(builtin_type_ia64_quad_little): Define.
(_initialize_gdbtypes): Initialize builtin floatformat types.
2001-08-24 04:46:43 +00:00
Thiemo Seufer
f6be24f9a4 * linker.c (_bfd_generic_link_add_archive_symbols): Replace alloca()
by bfd_malloc().
2001-08-24 03:56:28 +00:00
Joern Rennecke
d586919e5f * internal.h (R_JMP2, R_JMPL2, R_MOVL2): Comment spelling fix. 2001-08-24 00:20:01 +00:00
gdbadmin
80376ebaec *** empty log message *** 2001-08-24 00:00:03 +00:00
Jakub Jelinek
c538998c23 * config/tc-ia64.c (dot_endp): Set function symbol sizes.
* config/obj-elf.c (obj_elf_size): When size is constant, free
	and clear symbol_get_obj(sym)->size if any.
2001-08-23 20:43:01 +00:00
Mark Kettenis
1a6fae3cf4 * tracepoint.c (read_actions): Add FIXME for code depending on
STOP_SIGNAL.
2001-08-23 20:31:36 +00:00
Martin Hunt
7829b8338e 2001-08-23 Martin M. Hunt <hunt@redhat.com>
* remote-mips.c (pmon_load_fast): Add ui_load_progress_hook
	to download loop.
	(mips_load_srec): Ditto.
2001-08-23 19:27:52 +00:00
Andreas Jaeger
8df9fc9d6a * elf64-x86-64.c (elf64_x86_64_check_relocs): Set DF_TEXTREL if
the reloc is against read-only section.
	(elf64_x86_64_size_dynamic_sections): Use DF_TEXTREL flag instead
	of looking up section names for DT_TEXTREL.
	(elf64_x86_64_reloc_type_class): New.
	(elf_backend_reloc_type_class): Define.
2001-08-23 18:14:29 +00:00
Nick Clifton
f4ffd77818 Add more missing prototypes 2001-08-23 17:05:52 +00:00
DJ Delorie
dc67663583 merge from gcc 2001-08-23 16:38:09 +00:00