* libbfd.c (bfd_malloc, bfd_realloc): New functions.
(bfd_zmalloc): Return PTR, not char *. Take size_t, not
bfd_size_type.
* libbfd-in.h (bfd_malloc, bfd_realloc): Declare.
(bfd_zmalloc): Change declaration.
* libbfd.h: Rebuild.
* Many files: Use bfd_malloc and bfd_realloc rather than malloc
and realloc. Don't set bfd_error_no_memory if they fail.
Per Bothner [Fri, 1 Dec 1995 19:05:52 +0000 (19:05 +0000)]
* tests1.exp, tests2.exp (test_print_reject): Remove; causes
conflicts with later tests using test_print_reject in ../lib/gdb.exp.
(passcount): Remove.
* tests2.exp (test_print_accept): Removed.
(test_write): Re-write to use gdb_test rather than test_print_accept.
* tests1.exp (test_print_accept_exact): Removed.
(tests_locations): Rewrite to use gdb_test and not above proc.
* gencode.c: Tidied instruction decoding, and added FP instruction
support.
* interp.c: Added dineroIII, and BSD profiling support. Also
run-time FP handling.
At the moment the options are still mostly build-time controlled,
rather than run-time. Also work still needs to be done to remove (long
long) usage (However this is trivial, just time-consuming).
The out-standing instruction work to be done is in supporting round
and trunc for FP operations, and providing better exception support.
Per Bothner [Fri, 1 Dec 1995 08:08:41 +0000 (08:08 +0000)]
* language.c (lang_bool_type), language.h: New function.
* language.h (LA_BOOL_TYPE): New macro.
* eval.c (evaluate_subexp_standard) Use LA_BOOL_TYPE instead
of builtin_type_int where appropriate,
* valarith.c (value_subscript): Likewise.
Ian Lance Taylor [Thu, 30 Nov 1995 22:15:13 +0000 (22:15 +0000)]
* elf.c (_bfd_elf_make_section_from_shdr): Don't set lma based on
p_paddr if p_paddr is zero.
(make_mapping): Set includes_filehdr and includes_phdrs for first
PT_LOAD segment.
(map_sections_to_segments): Set includes_phdrs for PT_PHDR
segment.
(assign_file_positions_for_segments): Handle includes_filehdr and
includes_phdrs. Remove special handling of PT_PHDR and first
PT_LOAD segments.
(copy_private_bfd_data): Set includes_filehdr and includes_phdr
when appropriate. Remove special handling of PT_PHDR segment.
Use a more complex condition for when a section is included in a
segment to handle Solaris linker oddities.
* configure.host (m68*-motorola-sysv): Define HOSTING_CRT0 and
HOSTING_LIBS for testing.
(m88*-motorola-sysv3): Define HOSTING_CRT0 and HOSTING_LIBS for
testing.
* coff-m88k.c (howto_table): Reformatted for easier reading;
special_function now points to new function m88k_special_reloc.
(howto_hvrt16): Function previously used for handling HVRT16 relocs
removed.
(rtype2howto): Do not add reloc's r_offset to the addend, this will
be done correctly by m88k_special_reloc.
(reloc_processing): New function to be used by RELOC_PROCESSING.
(RELOC_PROCESSING): Define to call reloc_processing.
Per Bothner [Thu, 30 Nov 1995 03:35:14 +0000 (03:35 +0000)]
* Makefile.in: Add .exp.check rule.
* callch.ch: Add missing "%." to format strings.
* callch.exp: Fix argument to gdb_load.
* chexp.exp: Add specific error messages to test_print_reject calls.
* misc.exp: Add a test for PR 8496.
* pr-6632.exp, pr-8136.exp: Link executables from two .o files.
Per Bothner [Thu, 30 Nov 1995 03:26:34 +0000 (03:26 +0000)]
* ch-exp.y: Replaced by ...
* ch-exp.c: New file. Use recursive-descent.
Recognize labelled array tuples and powerset ranges.
* Makefile.in: Update for no longer using yacc for ch-exp.
* c-lang.c: Make various functions non-static.
* c-lang.h: Add bunches of prototypes.
* cp-valprint.c (cp_print_value_fields): Also take address.
(cp_print_value): Likewise. Use baselcass_offset.
* stabsread.c (current_symbol): New static variable.
(type_synonym_name): Remove.
(read_type): If copying, make copy be a TYPE_CODE_TYPEDEF.
(read_array_type): Don't need to handle undefined element type here.
(cleanup_undefined_types): Ditto.
(read_range_type): Look for Chill ranges.
* valops.c (value_assign): Fix case lval_internalvar - don't try
to assign into old value (which might be too small!).
(value_coerce_array): No longer need special VALUE_REPEATED handling.
(value_arg_coerce): Cleaner array->pointer decay mechanism.
(search_struct_field): Use baseclass_offset rather than
baseclass_addr.
(value_slice): Use get_discrete_bounds.
* value.h (COERCE_VARYING_ARRAY): Take type argumnt as well.
* values.c (baseclass_offset): Change parameter interface.
(baseclass_addr): Removed.
* c-typeprint.c, c-valprint.c, ch-valprint.c, values.c, valops.c:
Add check_typedef/CHECK_TYPEDEF as needed.
Per Bothner [Thu, 30 Nov 1995 02:32:29 +0000 (02:32 +0000)]
* f-typeprint.c, valarith.c, valprint.c, typeprint.c, eval.c:
Add check_typedef/CHECK_TYPEDEF as needed.
* f-typeprint.c: Various cleaning up.
* valarith.c (value_subscript): Also subscript bitstrings (for Chill).
* typeprint.c (print_type_scalar): Also support TYPE_CODE_RANGE.
* eval.c (evaluate_subexp_standard case OP_ARRAY): Implement
support for labelled array tuples and ranges in powerset tuples.
(init_array_element): New function.
Per Bothner [Thu, 30 Nov 1995 01:07:28 +0000 (01:07 +0000)]
* gdbtypes.h (enum type_code): Added TYPE_CODE_TYPEDEF.
(check_typedef): New prototype.
(CHECK_TYPEDEF): New macro.
(TYPE_DUMMY_RANGE): Removed.
* gdbtypes.c (get_discrete_bounds): Fix paren error; make more robust.
(create_array_type): Don't force_to_range_type; users of the
array are responsible for handling non-range index types.
(create_set_type): Likewise.
(force_to_range_type): Removed.
(check_typedef): New function handles stub types and typedefs.
(check_stub_type): Just call check_typedef. (To be removed.)
(recursive_dump_type): Handle TYPE_CODE_TYPEDEF.
* ch-lang.c (type_lower_upper): Use get_discrete_bounds.
(evaluate_subexp_chill): Handle string repetition.
Re-arrange to handle EVAL_AVOID_SIDE_EFFECTS better.
* ch-typeprint.c (chill_type_print_base): Handle TYPE_CODE_TYPEDEF.
Pass show=0 in recursive calls various places.
(case TYPE_CODE_ARRAY): Don't require index type to have
TYPE_CODE_RANGE.
(case TYPE_CODE_RANGE): Don't need to support TYPE_DUMMY_RANGE.
* gdbtypes.c, ch-lang.c, ch-typeprint.c (numerous places):
Add check_typedef/CHECK_TYPEDEF as needed.
Ian Lance Taylor [Wed, 29 Nov 1995 22:05:37 +0000 (22:05 +0000)]
* opncls.c (bfd_alloc_by_size_t): Set bfd_error_no_memory if
obstack_alloc fails.
(bfd_alloc_finish): Set bfd_error_no_memory if obstack_finish
fails.
* libbfd.c (bfd_zmalloc): Set bfd_error_no_memory if malloc fails.
* Many files: don't set bfd_error_no_memory if one of the above
routines fails.
J.T. Conklin [Wed, 29 Nov 1995 21:57:12 +0000 (21:57 +0000)]
* configure.in (noconfigdirs): Disable target-libio on v810-*-*.
* config/mt-v810 (CC_FOR_TARGET, AS_FOR_TARGET, AR_FOR_TARGET,
RANLIB_FOR_TARGET): Set as appropriate for NEC v810 toolchain.
Jim Wilson [Wed, 29 Nov 1995 20:41:46 +0000 (20:41 +0000)]
* gencode.c (tab): In shad/shld definitions, negate R[m] before
the and operation instead of after. For shad delete cast. For shld
use UR instead of R and delete cast.
Ian Lance Taylor [Wed, 29 Nov 1995 17:40:58 +0000 (17:40 +0000)]
* coff-alpha.c (alpha_ecoff_swap_reloc_in): Don't abort if
r_symndx is RELOC_SECTION_NONE for an ALPHA_R_IGNORE reloc.
Change a RELOC_SECTION_LITA symndx to RELOC_SECTION_ABS.
(alpha_ecoff_swap_reloc_out): Change RELOC_SECTION_ABS to
RELOC_SECTION_LITA for ALPHA_R_IGNORE.
(alpha_adjust_reloc_out): For ALPHA_R_IGNORE, don't change
RELOC_SECTION_ABS to RELOC_SECTION_NONE.
David Edelsohn [Wed, 29 Nov 1995 03:35:35 +0000 (03:35 +0000)]
* Makefile.in (target_subdir): Define.
(CC_FOR_TARGET, CXX_FOR_TARGET): Use it to find target libraries.
* configure.in (X_CFLAGS): Fix typo.
(target_subdir): Set to "${target_alias}/" if cross.
* configure: Regenerated.
David Edelsohn [Wed, 29 Nov 1995 03:34:57 +0000 (03:34 +0000)]
* Makefile.in (target_subdir): Define.
(CC_FOR_TARGET, CXX_FOR_TARGET): Use it to find target libraries.
* configure.in (X_CFLAGS): Fix typo.
(target_subdir): Set to "${target_alias}/" if cross.
* configure.in: Regenerated.
Ian Lance Taylor [Tue, 28 Nov 1995 22:15:27 +0000 (22:15 +0000)]
* configure.in: Default to --with-stabs for some targets for which
it makes sense: mips*-*-*, alpha*-*-osf*, i[345]86*-*-sysv4* and
i[345]86*-*-unixware*.
Fred Fish [Tue, 28 Nov 1995 19:33:22 +0000 (19:33 +0000)]
* magic.h: Renamed to gmagic.h to avoid <magic.h> conflict.
* magic.c: Renamed to gmagic.c in sympathy.
* eval.c, gmagic.c, config/tm-magic.h:
Include "gmagic.h" rather than "magic.h".
Ken Raeburn [Tue, 28 Nov 1995 19:21:09 +0000 (19:21 +0000)]
Clean up hash code, parameterize some actions, tweak some parameters. Hash
table entries, table allocation and control structure are larger now, but
collisions are reduced and string compares even further reduced.
Dump lots more statistics, especially hash code data, for --statistics. Dump
statistics even in error cases.
Fred Fish [Mon, 27 Nov 1995 22:43:08 +0000 (22:43 +0000)]
* gdb.base/signals.exp: Setup "alpha-*-osf2*" xfail for
"bt in signals.exp".
* gdb.base/a1-selftest.exp: Add alpha-dec-osf2 setup_xfail for
"step over execarg initialization" and
"step over corearg initialization".
* gdb.base/ptype.c (main): Declare malloc as a "char *" for systems
with sizeof(pointer) > sizeof(int). Avoid "void *" or include files.
Ian Lance Taylor [Mon, 27 Nov 1995 18:50:31 +0000 (18:50 +0000)]
* config-ml.in: Get list of multidirs using gcc --print-multi-lib
rather than basing it on the target. Simplify handling of options
controlling which directories to configure. Remove extraneous
slash in multi-clean target.
Fred Fish [Sat, 25 Nov 1995 19:55:29 +0000 (19:55 +0000)]
From Rob Savoye ([email protected])
* Makefile.in, configure.in, gdb.base/{Makefile.in, configure.in},
gdb.c++/{Makefile.in, configure.in}, gdb.chill/{Makefile.in, configure.in},
gdb.disasm/{Makefile.in, configure.in}, gdb.stabs/{Makefile.in, configure.in},
gdb.threads/{Makefile.in, configure.in}: Major reworking for autoconfig.
* aclocal.m4, configure, gdb.base/configure, gdb.c++/configure,
gdb.disasm/configure, gdb.stabs/configure, gdb.stabs/default.mt : New files.
* config/unix-gdb.exp: Make GDB global.
* gdb.base/{a1-selftest.exp, a2-run.exp,bitfields.exp, break.exp, callfuncs.exp,
commands.exp, corefile.exp, crossload.exp, exprs.exp, funcargs.exp, interrupt.exp,
langs.exp, list.exp, mips_pro.exp, nodebug.exp, opaque.exp, printcmds.exp,
ptype.exp, recurse.exp, regs.exp, return.exp, scope.exp, setvar.exp, sigall.exp,
signals.exp, term.exp, twice.exp, watchpoint.exp, whatis.exp},
gdb.c++/{classes.exp, callfuncs.exp, inherit.exp, misc.exp, templates.exp,
virtfunc.exp}, gdb.chill/{callch.exp, chillvars.exp, misc.exp, pr-4975.exp,
pr-5016.exp, pr-5020.exp, pr-5022.exp, pr-5646.exp, pr-5984.exp, pr-6292.exp,
pr-6632.exp, pr-8134.exp, pr-8136.exp, result.exp, string.exp, tuples.exp},
gdb.disasm/{hppa.exp, sh3.exp}, gdb.stabs/weird.exp: Change continues
to returns as necessary, arrange for test to compile own testcase executable.
* lib/gdb.exp: Changes for testsuite to compile own test cases.
From Fred Fish ([email protected])
* gdb.c++/classes.exp (test_pointers_to_class_members): Add
clear_xfail at end of test which might not call either pass or fail.
* gdb.base/a1-selftest.exp: Add i*86-*-linuxaout xfail for
"backtrace through signal handler".
Peter Schauer [Sat, 25 Nov 1995 11:32:18 +0000 (11:32 +0000)]
* mdebugread.c (handle_psymbol_enumerators, parse_symbol):
Recognize enums from alpha cc -migrate.
(upgrade_type): Pass correct fd to parse_symbol when parsing
the index type of an array.
(parse_procedure, parse_lines, psymtab_to_symtab_1): Handle
unsorted procedure descriptors from Irix 5.x and Alpha OSF/1-3.x
shared libraries. Use CORE_ADDR instead of `unsigned long' in
procedure descriptor address computations.
* symtab.c (decode_line_1): Prevent accidental strchr match
of a null character with the terminating null character of
gdb_completer_quote_characters.
(cplusplus_hint): Make sure that only a single quote is printed
in the hint message.
Fred Fish [Wed, 22 Nov 1995 04:26:03 +0000 (04:26 +0000)]
* config/m68k/xm-hp300hpux.h: Define MMAP_BASE_ADDRESS and MMAP_INCREMENT.
Also force HAVE_MMAP to be defined since autoconf is currently broken
for detecting a working mmap under hpux.
* config/pa/xm-hppah.h (MMAP_BASE_ADDRESS): Tweak MMAP_BASE_ADDRESS
to a better value suggested by Jeffrey A Law ([email protected]).