* syscall.c (cb_syscall) <case CB_SYS_pipe>: New case.
* callback.c [HAVE_LIMITS_H]: Include limits.h.
Include libiberty.h.
(os_close, os_read, os_write, os_fstat, os_ftruncate): Support fd
being either end of a pipe.
(os_pipe, os_pipe_empty, os_pipe_nonempty): New functions.
(os_shutdown): Clear pipe state.
(default_callback): Initialize new members.
* callback.h (struct host_callback_struct): New members pipe,
pipe_empty, pipe_nonempty, ispipe, pipe_buffer and
target_sizeof_int.
(CB_SYS_pipe): New macro.
* callback.c (default_callback): Initialize target_endian.
(cb_store_target_endian): Renamed from store, new first parameter
host_callback *cb, drop last parameter big_p. Take endianness
from cb.
(cb_host_to_target_stat): Change to use cb_store_target_endian.
Remove variable big_p.
* nrun.c (main): Initialize default_callback.target_endian.
* config/tc-z8k.c (INSERT): Remove, not used anywhere.
(md_apply_fix3): Make relative branches out of range an error
instead of a warning. Display correct line number for out of
range branches/calls/memory accesses.
Andrew Cagney [Thu, 27 Jan 2005 20:34:51 +0000 (20:34 +0000)]
2005-01-27 Andrew Cagney <cagney@gnu.org>
* cli/cli-dump.h (fopen_with_cleanup): Make "filename" const.
* cli/cli-dump.c (dump_binary_file, dump_bfd_file): Make string
parameters const, change buf to a const bfd_byte.
(fopen_with_cleanup, bfd_openw_with_cleanup): Make all string
parameters const.
Andrew Cagney [Thu, 27 Jan 2005 20:09:10 +0000 (20:09 +0000)]
2005-01-27 Andrew Cagney <cagney@gnu.org>
* symfile-mem.c (do_target_read_memory): New function.
(symbol_file_add_from_memory): Pass do_target_read_memory to
bfd_elf_bfd_from_remote_memory.
* corefile.c (write_memory): Update, make a copy of the read-only
buffer.
* target.c (target_read_memory): Update.
(target_write_memory): Update, make a copy of the read-only
buffer.
* gdbcore.h (write_memory): Change buffer type to bfd_byte, make
const.
* target.h (target_read_memory, target_write_memory): Change
buffer type to bfd_byte; for write_memory, make it const.
Nathan Sidwell [Thu, 27 Jan 2005 16:33:47 +0000 (16:33 +0000)]
* dwarf2dbg.c (dwarf2_finish): Correct logic for determining when
to emit .debug_line and other debug sections.
* as.h (seg_not_empty_p): Declare.
* subsegs.c (seg_not_empty_p): New predicate.
Jan Beulich [Thu, 27 Jan 2005 08:41:25 +0000 (08:41 +0000)]
gas/
2005-01-25 Jan Beulich <jbeulich@novell.com>
* config/tc-ia64.c (emit_one_bundle): Add late resolution of move
to/from application registers dynamic insns.
(md_assemble): Defer resolution of move to/from application registers
dynamic insns when they can be issued on either the I- or M-units.
gas/testsuite/
2005-01-25 Jan Beulich <jbeulich@novell.com>
* gas/ia64/dv-waw-err.l: Don't expect ar112 move warning to refer to
M-unit.
* gas/ia64/mov-ar.[ds]: New.
* gas/ia64/ia64.exp: Run new test.
Mark Mitchell [Wed, 26 Jan 2005 06:10:45 +0000 (06:10 +0000)]
* elf32-arm.c (elf_backend_default_use_rela_p): Define to zero for
SymbianOS.
* emulparams/armsymbian.sh (OTHER_READONLY_SECTIONS): Define, so
as to include .ARM.exidx$${Base,Limit}.
* ld/scripttempl/armbpabi.sc: Move .plt to end of text segment.
Define IMAGE$$ER_RO$${Base,Limit} and SHT$$INIT_ARRAY$${Base,Limit}.
Put .init_array, .fini_array, etc. into the read-only data
segment.
Alan Modra [Tue, 25 Jan 2005 01:40:04 +0000 (01:40 +0000)]
bfd/
* elflink.c (elf_link_add_object_symbols): Don't create link dynamic
sections immediately when linking shared libs. Instead, wait until
we know a lib is needed.
(_bfd_elf_link_create_dynstrtab): Extract from..
(_bfd_elf_link_create_dynamic_sections_): ..here.
(elf_add_dt_needed_tag): Call _bfd_elf_link_create_dynstrtab and
_bfd_elf_link_create_dynamic_sections. Add abfd param. Allow
for non-existent .dynamic.
(elf_link_output_extsym): Don't complain about undefined symbols
in as-needed dynamic libs that aren't actually linked.
ld/
* emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Formatting.
(gld${EMULATION_NAME}_after_open): Ignore needed libs if they were
only needed by an as-needed lib that didn't get linked.
Nick Clifton [Mon, 24 Jan 2005 15:32:19 +0000 (15:32 +0000)]
sleb128.d: Do not assume an 8-bit byte.
quad.d: Likewise. Also allow for ports which order bytes within words in other
than simple big-endian or little-endian fashions.
Fred Fish [Fri, 21 Jan 2005 19:43:05 +0000 (19:43 +0000)]
2005-01-21 Fred Fish <fnf@specifixinc.com>
* mips-opc.c: Change INSN_ALIAS to INSN2_ALIAS.
Change INSN_WRITE_MDMX_ACC to INSN2_WRITE_MDMX_ACC.
Change INSN_READ_MDMX_ACC to INSN2_READ_MDMX_ACC.
* mips-dis.c: Ditto.
Fred Fish [Fri, 21 Jan 2005 19:42:08 +0000 (19:42 +0000)]
2005-01-21 Fred Fish <fnf@specifixinc.com>
* mips.h: Change INSN_ALIAS to INSN2_ALIAS.
Change INSN_WRITE_MDMX_ACC to INSN2_WRITE_MDMX_ACC.
Change INSN_READ_MDMX_ACC to INSN2_READ_MDMX_ACC.
Mark Kettenis [Fri, 21 Jan 2005 13:49:22 +0000 (13:49 +0000)]
* acconfig.h (HAVE_STRUCT_REG_R_FS, HAVE_STRUCT_R_GS): Remove
undefs.
* configure.ac: Use AC_CHECK_MEMBERS to check whether `struct
thread' has a td_pcb member and whether `struct reg' has r_fs and
r_gs members.
* configure, config.in: Regenerate.
Mark Kettenis [Fri, 21 Jan 2005 13:14:02 +0000 (13:14 +0000)]
* configure.ac: Use AC_CHECK_DECLS instead of gcc_AC_CHECK_DECLS
and BFD_NEED_DECLARATION. Don't check if a declaration of strdup
is necessary.
* configure, config.in: Regenerate.
* utils.c: Adjust for usage of AC_CHECK_DECLS instead of
BFD_NEED_DECLARATION. Never provide a prototype for
caninicalize_file_name.
* gdb_string.h: Adjust for usage of AC_CHECK_DECLS instead of
BFD_NEED_DECLARATION.
Nick Clifton [Thu, 20 Jan 2005 15:35:57 +0000 (15:35 +0000)]
(std_longopts): Add an entry for "--a" in order to prevent getopt_long_only()
from considering -a as an abbreviation for --alternate.
(parse_args): Fix the parsing of -a=<file>.
Fred Fish [Wed, 19 Jan 2005 23:35:26 +0000 (23:35 +0000)]
2005-01-19 Fred Fish <fnf@specifixinc.com>
* NEWS: Make note of the new MIPS disassembly option "no-aliases".
* doc/binutils.texi (objdump): Document the "no-aliases"
disassembly option.
Fred Fish [Wed, 19 Jan 2005 23:31:15 +0000 (23:31 +0000)]
2005-01-19 Fred Fish <fnf@specifixinc.com>
* mips-dis.c (no_aliases): New disassembly option flag.
(set_default_mips_dis_options): Init no_aliases to zero.
(parse_mips_dis_option): Handle no-aliases option.
(print_insn_mips): Ignore table entries that are aliases
if no_aliases is set.
(print_insn_mips16): Ditto.
* mips-opc.c (mips_builtin_opcodes): Add initializer column for
new pinfo2 member and add INSN_ALIAS initializers as needed. Also
move WR_MACC and RD_MACC initializers from pinfo to pinfo2.
* mips16-opc.c (mips16_opcodes): Ditto.
Fred Fish [Wed, 19 Jan 2005 23:29:12 +0000 (23:29 +0000)]
2005-01-19 Fred Fish <fnf@specifixinc.com>
* mips.h (struct mips_opcode): Add new pinfo2 member.
(INSN_ALIAS): New define for opcode table entries that are
specific instances of another entry, such as 'move' for an 'or'
with a zero operand.
(INSN_READ_MDMX_ACC): Redefine from 0 to 0x2.
(INSN_WRITE_MDMX_ACC): Redefine from 0 to 0x4.
Jim Blandy [Wed, 19 Jan 2005 22:04:37 +0000 (22:04 +0000)]
* configure.tgt: Set build_rdi_share to "yes" on those targets
that use that debugging protocol.
Set build_nlm to yes to build NLM stub for Netware targets.
* configure.ac: If build_rdi_share is "yes", then configure the
rdi-share subdirectory.
If build_nlm is "yes", the configure the "nlm" subdirectory.
* configure: Regenerated.
* read.c (convert_to_bignum): New function, split out from...
(emit_expr): ...here. Handle the case where X_add_number is
positive and the input value is negative.
(output_big_sleb128): Fix setting of continuation bit. Check whether
the final byte needs to be sign-extended. Fix size-shrinking loop.
(emit_leb128_expr): When generating a signed leb128, see whether the
sign of an O_constant's X_add_number matches the sign of the input
value. Use a bignum if not.
* ldmain.h (ld_sysroot): Change type to a constant string.
* ldmain.c (ld_sysroot): Likewise.
(get_relative_sysroot, get_sysroot): New functions, adding command-line
support for changing the sysroot.
(main): Call the new functions.
* lexsup.c (OPTION_SYSROOT): New.
(ld_options): Add --sysroot.
(parse_args): Add a dummy handler for it.
* ld.texinfo (--sysroot): Document.
* NEWS: Mention the new --sysroot option.