Mark Kettenis [Sat, 4 Jan 2003 01:03:41 +0000 (01:03 +0000)]
* configure.in: Move code that provides the --enable-gdbtk option
right after the code that handles the --enable-tui option, and
polish it somewhat.
* configure: Regenerated.
Mark Kettenis [Sat, 4 Jan 2003 00:34:43 +0000 (00:34 +0000)]
* configure.in: Call AC_GNU_SOURCE. Check for pread64 using
AC_CHECK_FUNCS and remove the old check for pread64.
* acinclude.m4 (AC_GNU_SOURCE): New macro.
* acconfig.h (_GNU_SOURCE): Add.
(HAVE_PREAD64): Remove.
* configure, aclocal.m4, config.in: Regenerated.
Mark Kettenis [Fri, 3 Jan 2003 23:19:28 +0000 (23:19 +0000)]
* configure.in: Remove all use of the SUBDIRS variable; add
directories using the AC_CONFIG_SUBDIRS macro instead. Polish
code providing the --enable-multi-ice option, and move it right in
front of the code that checks whether gdbserver is supported.
Polish that too.
* configure: Regenerated.
* Makefile.in (SUBDIRS): Substitute @subdirs@ instead of
@SUBDIRS@.
Joel Brobecker [Fri, 3 Jan 2003 15:29:29 +0000 (15:29 +0000)]
(parse_symbol): Skip stProc entries which storage class is not scText.
These do not define "real" procedures.
(parse_partial_symbols): Likewise.
Fixes [C102-001].
Mark Kettenis [Fri, 3 Jan 2003 14:10:08 +0000 (14:10 +0000)]
* cli/cli-decode.h: Don't include "gdb_regex.h"; provide a forward
declaration for `struct re_pattern_buffer' instead.
* Makefile.in (cli_decode_h): Remove $(gdb_regex_h).
Chris Demetriou [Thu, 2 Jan 2003 22:04:55 +0000 (22:04 +0000)]
2003-01-02 Chris Demetriou <cgd@broadcom.com>
* mips-dis.c (print_insn_args): Use position extracted by "+A"
to calculate size for "+B". Redo code for "+C" so it shares
the same style as "+A" and "+B" now do.
bfd/
* elfxx-mips.c: Include libiberty.h.
(elf_mips_isa, _bfd_mips_elf_mach_extends_p): Remove.
(mips_set_isa_flags): New function, split out from...
(_bfd_mips_elf_final_write_processing): ...here. Only call
mips_set_isa_flags if the EF_MIPS_MACH bits are clear.
(mips_mach_extensions): New array.
(mips_32bit_flags_p): New function.
(_bfd_mips_elf_merge_private_bfd_data): Rework architecture checks.
Use mips_32bit_flags_p to check if one binary is 32-bit and the
other is 64-bit. When adopting IBFD's architecture, adopt the
bfd_mach as well as the flags.
ld/testsuite/
* ld-mips-elf/jr.s: New file.
* ld-mips-elf/mips-elf-flags.exp: New test.
Chris Demetriou [Thu, 2 Jan 2003 21:07:00 +0000 (21:07 +0000)]
2003-01-02 Chris Demetriou <cgd@broadcom.com>
* mips-dis.c: Update copyright years.
(print_insn_arg): Rename to...
(print_insn_args): This, returning void. Process the whole
string of args rather than a single one. Reindent.
(print_insn_mips): Update to match the above.
Mark Kettenis [Thu, 2 Jan 2003 20:12:29 +0000 (20:12 +0000)]
* configure.in: Move code that provides the --enable-gdbcli,
--enable-gdbmi options right before the code that handles the
--enable-tui option. Polish a bit.
* configure: Regenerated.
Chris Demetriou [Thu, 2 Jan 2003 20:03:09 +0000 (20:03 +0000)]
[ gas/ChangeLog ]
2003-01-02 Chris Demetriou <cgd@broadcom.com>
* config/tc-mips.c: Update copyright years to include 2003.
(mips_ip): Fix indentation of "+A", "+B", and "+C" handling.
Additionally, clean up their code slightly and clean up their
comments some more.
* doc/c-mips.texi: Add MIPS32r2 to ".set mipsN" documentation.
[ gas/testsuite/ChangeLog ]
2003-01-02 Chris Demetriou <cgd@broadcom.com>
[ include/opcode/ChangeLog ]
2003-01-02 Chris Demetriou <cgd@broadcom.com>
* mips.h: Update copyright years to include 2002 (which had
been missed previously) and 2003. Make comments about "+A",
"+B", and "+C" operand types more descriptive.
Mark Kettenis [Thu, 2 Jan 2003 19:35:31 +0000 (19:35 +0000)]
* configure.in: Rewrite check for GNU regex and the
--without-included regex option, and move it into the "Checks for
library functions" section. This makes us use the system regex
again by default on systems with version 2 of the GNU C library.
This was apparently broken.
* gdb_regex.h [!USE_INCLUDED_REGEX] (_REGEX_RE_COMP): Define.
* acconfig.h (USE_INCLUDED_REGEX): Remove.
* config.in, configure: Regenerated.
Mark Kettenis [Thu, 2 Jan 2003 16:54:56 +0000 (16:54 +0000)]
* configure.in: Move code that provides the --enable-tui option
before the "Checks for libraries" section. Polish the code
somewhat and set need_curses to yes if we build the TUI. Rewrite
code that looks for a library providing termcap functionality to
match more closely what's done in the Readline library, and move
it into to the "Checks for libraries" section.
* configure: Regenerated.
* Makefile.in (TERMCAP): Remove variable.
* config/i386/go32.mh (TERMCAP): Remove variable.
Mark Kettenis [Thu, 2 Jan 2003 11:14:33 +0000 (11:14 +0000)]
* acconfig.h (_MSE_INT_H): Remove.
* configure.in: Create "Checks for header files" section, and move
appropriate tests there. Don't check for objlist.h, wchar.h,
wctype.h and asm/debugreg.h. Rewrite Solaris 2.[78] <curses.h>
misdetection fix. Also add "Checks for types", "Checks for
compiler characteristics" and "Checks for library functions"
sections.
* config.in, configure: Regenerated.
Mark Kettenis [Wed, 1 Jan 2003 23:50:46 +0000 (23:50 +0000)]
* configure.in: Create "Checks for libraries" section, and move
appropriate tests there. Cleanup check for wctype in libw. Use
AC_SEARCH_LIBS to see whether we need libsocket.
* configure: Regenerated.
Mark Kettenis [Tue, 31 Dec 2002 12:41:00 +0000 (12:41 +0000)]
* gdb_dirent.h: Cleanup and update code to match the example in
the Autoconf manual.
* configure.in: Call AC_HEADER_DIRENT. Remove dirent.h,
sys/ndir.h, sys/dir.h and ndir.h from call to AC_CHECK_HEADERS.
* configure: Regenerated.
Chris Demetriou [Tue, 31 Dec 2002 08:11:18 +0000 (08:11 +0000)]
[ gas/ChangeLog ]
2002-12-31 Chris Demetriou <cgd@broadcom.com>
* config/tc-mips.c (validate_mips_insn, mips_ip): Recognize
the "+D" operand, which will be used only by the disassembler.
[ gas/testsuite/ChangeLog ]
2002-12-31 Chris Demetriou <cgd@broadcom.com>
* gas/mips/cp0sel-names-mips32.d: New test.
* gas/mips/cp0sel-names-mips32r2.d: New test.
* gas/mips/cp0sel-names-mips64.d: New test.
* gas/mips/cp0sel-names-numeric.d: New test.
* gas/mips/cp0sel-names-sb1.d: New test.
* gas/mips/cp0sel-names.s: New test source file.
* gas/mips/mips.exp: Run new tests.
[ include/opcode/ChangeLog ]
2002-12-31 Chris Demetriou <cgd@broadcom.com>
* mips.h: Note that the "+D" operand type name is now used.
[ opcodes/ChangeLog ]
2002-12-31 Chris Demetriou <cgd@broadcom.com>
* mips-dis.c (mips_cp0sel_name): New structure.
(mips_cp0sel_names_mips3264, mips_cp0sel_names_mips3264r2)
(mips_cp0sel_names_sb1): New arrays.
(mips_arch_choice): New structure members "cp0sel_names" and
"cp0sel_names_len".
(mips_arch_choices): Add references to new cp0sel_names arrays
as appropriate, and make all existing entries reference
appropriate mips_XXX_names_numeric arrays rather than simply
using NULL.
(mips_cp0sel_names, mips_cp0sel_names_len): New variables.
(lookup_mips_cp0sel_name): New function.
(set_default_mips_dis_options): Set mips_cp0sel_names and
mips_cp0sel_names_len as appropriate. Remove now-unnecessary
checks for NULL register name arrays.
(parse_mips_dis_option): Likewise.
(print_insn_arg): Handle "+D" operand type.
* mips-opc.c (mips_builtin_opcodes): Add new "+D" variants
of mfc0, mtc0, dmfc0, and dmtc0 to print CP0+sel register
names symbolically.
Chris Demetriou [Tue, 31 Dec 2002 07:42:20 +0000 (07:42 +0000)]
[ gas/testsuite/ChangeLog ]
2002-12-30 Chris Demetriou <cgd@broadcom.com>
* gas/mips/elf_arch_mips1.d: New test.
* gas/mips/elf_arch_mips2.d: New test.
* gas/mips/elf_arch_mips3.d: New test.
* gas/mips/elf_arch_mips4.d: New test.
* gas/mips/elf_arch_mips5.d: New test.
* gas/mips/elf_arch_mips32.d: New test.
* gas/mips/elf_arch_mips32r2.d: New test.
* gas/mips/elf_arch_mips64.d: New test.
* gas/mips/empty.s: New test source file.
* gas/mips/mips.exp: Run new tests.
* gas/mips/elf_ase_mips16.d: Change to use empty.s
* gas/mips/elf_ase_mips16.s: Remove.
[ gas/ChangeLog ]
2002-12-30 Chris Demetriou <cgd@broadcom.com>
* configure.in: Recognize mipsisa32r2, mipsisa32r2el, and
CPU variants.
* configure: Regenerate.
* config/tc-mips.c (ISA_HAS_DROR, ISA_HAS_ROR): New defines.
(macro_build): Handle "K" operand.
(macro2): Use ISA_HAS_DROR and ISA_HAS_ROR in the places where
CPU_HAS_DROR and CPU_HAS_ROR are currently used.
(mips_ip): New variable "lastpos", and implement "+A", "+B",
and "+C" operands for MIPS32 Release 2 ins/ext instructions.
Implement "K" operand for MIPS32 Release 2 rdhwr instruction.
(validate_mips_insn): Implement "+" as a way to extend the
allowed operands, and implement "K", "+A", "+B", and "+C"
operands.
(OPTION_MIPS32R2): New define.
(md_longopts): Add entry for OPTION_MIPS32R2.
(OPTION_ELF_BASE): Adjust to accomodate OPTIONS_MIPS32R2.
(md_parse_option): Handle OPTION_MIPS32R2.
(s_mipsset): Reimplement handling of ".set mipsN" options
and add support for ".set mips32r2".
(mips_cpu_info_table): Add entry for "mips32r2" (MIPS32 Release 2).
(md_show_usage): Document "-mips32r2" option.
* doc/as.texinfo: Document "-mips32r2" option.
* doc/c-mips.texi: Likewise.
[ gas/testsuite/ChangeLog ]
2002-12-30 Chris Demetriou <cgd@broadcom.com>
* gas/mips/cp0-names-mips32r2.d: New test.
* gas/mips/hwr-names-mips32r2.d: New test.
* gas/mips/hwr-names-numeric.d: New test.
* gas/mips/hwr-names.s: New test source file.
* gas/mips/mips32r2.d: New test.
* gas/mips/mips32r2.s: New test source file.
* gas/mips/mips32r2-ill.l: New test.
* gas/mips/mips32r2-ill.s: New test source file.
* gas/mips/mips.exp: Add mips32r2 architecture data array
entry. Run new tests mentioned above.
[ include/elf/ChangeLog ]
2002-12-30 Chris Demetriou <cgd@broadcom.com>
* mips.h (E_MIPS_ARCH_32R2): New define.
[ include/opcode/ChangeLog ]
2002-12-30 Chris Demetriou <cgd@broadcom.com>
* mips.h: Document "+" as the start of two-character operand
type names, and add new "K", "+A", "+B", and "+C" operand types.
(OP_MASK_INSMSB, OP_SH_INSMSB, OP_MASK_EXTMSB)
(OP_SH_EXTMSB, INSN_ISA32R2, ISA_MIPS32R2, CPU_MIPS32R2): New
defines.
[ opcodes/ChangeLog ]
2002-12-30 Chris Demetriou <cgd@broadcom.com>
* mips-dis.c (mips_cp0_names_mips3264r2, mips_hwr_names_numeric)
(mips_hwr_names_mips3264r2): New arrays.
(mips_arch_choice): New "hwr_names" member.
(mips_arch_choices): Adjust for structure change, and add a new
entry for "mips32r2" ISA.
(mips_hwr_names): New variable.
(set_default_mips_dis_options): Set mips_hwr_names.
(parse_mips_dis_option): New "hwr-names" option which sets
mips_hwr_names, and adjust "reg-names=ARCH" to set mips_hwr_names.
(print_insn_arg): Change return type to "int"
and use that to indicate number of characters consumed.
Add support for "+" operand extension character, "+A", "+B",
"+C", and "K" operands.
(print_insn_mips): Adjust for changes to print_insn_arg.
(print_mips_disassembler_options): Adjust for "hwr-names"
addition and "reg-names" change.
* mips-opc (I33): New define (shorthand for INSN_ISA32R2).
(mips_builtin_opcodes): Note that "nop" and "ssnop" are special
forms of "sll". Add new MIPS32 Release 2 instructions: ehb,
di, ei, ext, ins, jr.hb, jalr.hb, mfhc1, mfhc2, mthc1, mthc2,
rdhwr, rdpgpr, seb, seh, synci, wrpgpr, wsbh.
Note that hardware rotate instructions (ror, rorv) can be
used on MIPS32 Release 2, and add the official mnemonics
for them (rotr, rotrv) and the similar "rotl" mnemonic for
left-rotate.
Alexandre Oliva [Sun, 29 Dec 2002 19:05:04 +0000 (19:05 +0000)]
* Makefile.tpl (local-distclean): Don't remove...
(multilib.ts): ... this. Moved into...
(multilib.out): ... this. Don't use sub-make.
($(BUILD_SUBDIR)/[+module+]/Makefile, [+module+]/Makefile,
$(TARGET_SUBDIR)/[+module+]/Makefile, gcc/Makefile): Moved into...
(configure-build-[+module+], configure-[+module+],
configure-target-[+module+], configure-gcc): ... these. Test
for Makefile existence. Drop config.status from dependencies.
* Makefile.in: Rebuilt.
* configure.in: Move gcc-version-trigger to the end of
ac_configure_args. Add comments to maybedep.tmp and
serdep.tmp. Introduce --disable-serial-configure. Remove
nonopt from baseargs, matching and removing corresponding
whitespace while at it.
* configure: Rebuilt.
Jakub Jelinek [Sat, 28 Dec 2002 21:15:35 +0000 (21:15 +0000)]
* elf.c (elf_sort_sections): Don't reorder .tbss.
(assign_file_positions_for_segments): Only adjust off/voff
for increased alignment in PT_LOAD or PT_NOTE segment,
but adjust p_filesz for .tbss too. in PT_LOAD consider
.tbss to have zero memory size.
(copy_private_bfd_data) [SECTION_SIZE]: Define.
[IS_CONTAINED_BY_VMA, IS_CONTAINED_BY_LMA]: Use it.
[INCLUDE_SECTION_IN_SEGMENT]: Only put SHF_TLS sections
into PT_TLS segment. Never put SHF_TLS sections in
segments other than PT_TLS or PT_LOAD.
Alexandre Oliva [Sat, 28 Dec 2002 17:57:49 +0000 (17:57 +0000)]
* acx.m4: Name cache variables properly.
(NCN_STRICT_CHECK_TOOL): If program is not found and
value-if-not-found is empty, use ${ncn_tool_prefix}$2 or $2,
depending on whether build != host or not.
(NCN_STRICT_CHECK_TARGET_TOOL): Ditto, with the target prefix.
Alexandre Oliva [Sat, 28 Dec 2002 16:25:00 +0000 (16:25 +0000)]
* Makefile.tpl ($(NOTPARALLEL)): Move to the end. Bring uses of
program_transform_name to standard idiom.
(AUTOGEN, AUTOCONF): Define.
(Makefile.in): Use $(AUTOGEN).
(Makefile): Depend on config.status, and use autoconf-style rule to
build it. Move original commands to...
(config.status): ... this new target.
(configure): Add $(srcdir). Depend on config/acx.m4. Use
$(AUTOCONF).
* Makefile.in: Rebuilt.
Chris Demetriou [Fri, 27 Dec 2002 23:51:49 +0000 (23:51 +0000)]
2002-12-27 Chris Demetriou <cgd@broadcom.com>
* gas/mips/mips.exp: Define the notion of an "architecture data
array," add comments indicating how to add a new architecture and
suggestions for adding new tests. Populate the architecture data
array with many known architectures and convert many tests to
be run for multiple architectures.
(mips_arches): New global array.
(mips_arch_create, mips_arch_list_all, mips_arch_data)
(mips_arch_displayname, mips_arch_properties)
(mips_arch_as_flags, mips_arch_objdump_flags, mips_arch_matches)
(mips_arch_list_matching): New functions to operate on mips_arches.
(run_dump_test_arch, run_dump_test_arches, run_list_test_arch)
(run_list_test_arches): New functions.
(run_list_test): Document and add an optional "test name" argument.
* gas/mips/abs.d: Remove CPU-specific assembler and objdump flags,
and CPU names from test names.
* gas/mips/add.d: Likewise.
* gas/mips/and.d: Likewise.
* gas/mips/dli.d: Likewise.
* gas/mips/jal-empic-elf-2.d: Likewise.
* gas/mips/jal-empic-elf-3.d: Likewise.
* gas/mips/jal-empic-elf.d: Likewise.
* gas/mips/lb-svr4pic.d: Likewise.
* gas/mips/lb.d: Likewise.
* gas/mips/mips32.d: Likewise.
* gas/mips/mips4.d: Likewise.
* gas/mips/mips64.d: Likewise.
* gas/mips/rol-hw.d: Likewise.
* gas/mips/rol.d: Likewise.
* gas/mips/rol64-hw.d: Likewise.
* gas/mips/rol64.d: Likewise.
* gas/mips/elf-jal.d: Likewise. Also, indicate ELF in test name.
* gas/mips/mips64-mdmx.d: Tweak printed name to indicate that this
test uses the -mdmx flag.
* gas/mips/mips64-mips3d.d: Tweak printed name to indicate that
this test uses the -mips3d flag.
* gas/mips/mips64-mips3d-incl.d: New file.