Changes to let cons handle bignums like general expressions.
* expr.h (expressionS): New field X_unsigned.
* expr.c (operand): Initialize X_unsigned to 1. Set it to 0 for
unary minus case.
(expr) Fix typo resultP to right if missing operand. Set
X_unsigned to 1 when building new expression.
* read.c (potable): Make "octa" and "quad" call cons, not
big_cons.
(cons): Handle bignums. If given an O_constant (small integer) to
fill a big space, turn it into a bignum.
(parse_bitfield_cons): Set X_unsigned field.
(bignum_low, bignum_limit, bignum_high, grow_bignum, big_cons):
Removed.
* read.h (big_cons): Remove prototype.
* symbols.c (resolve_symbol_value): Don't give a warning if a
symbol in expr_section can not be resolved.
(S_SET_VALUE): Clear X_unsigned.
* write.c (write_object_file): If resolve_symbol_value failed on a
symbol we are writing out, give a warning.
* config/tc-h8500.c (parse_reglist): Set X_unsigned.
* config/tc-hppa.c (md_pseudo_table): Change "octa" and "quad" to
call pa_cons, not pa_big_cons.
(pa_big_cons): Remove.
* config/tc-hppa.h (pa_big_cons): Remove declaration.
* config/tc-i960.c (md_pseudo_table): Change "quad" to call cons,
not big_cons.
Jim Kingdon [Tue, 5 Oct 1993 21:25:10 +0000 (21:25 +0000)]
* Makefile.in (install, uninstall): Remove $$n.1 stuff; I don't
understand what it is trying to do, but I suspect it's not doing
it.
* config/ns32k/merlin.mh: Add comment about M_INSTALL.
* config/m88k/{delta88.mh,delta88v4.mh}: Remove M_INSTALL and
M_UNINSTALL; it tries to install a non-existent file gdb.z.
* Makefile.in: Remove M_INSTALL stuff; the above were the only uses.
Peter Schauer [Tue, 5 Oct 1993 19:44:57 +0000 (19:44 +0000)]
Changes to support alpha OSF/1 in native mode.
* alpha-nat.c, alpha-tdep.c, config/alpha/alpha-osf1.mt,
config/alpha/nm-alpha.h, config/alpha/tm-alpha.h, osfsolib.c:
New files.
* Makefile.in: Add new files and dependencies.
* configure.in: Add alpha target.
* config/alpha/alpha-osf1.mh (NATDEPFILES): Add osfsolib.o
* config/alpha/alpha-osf1.mh (MH_CFLAGS): Remove, we can handle
shared libraries now.
* config/alpha/xm-alpha.h: Cleanup, get MAKEVA_* defines right.
* defs.h (CORE_ADDR): Make its type overridable via CORE_ADDR_TYPE,
provide `unsigned int' default.
* breakpoint.c (breakpoint_auto_delete): Delete only if we really
stopped for the breakpoint.
* stabsread.c, stabsread.h (define_symbol): Change valu parameter
to a CORE_ADDR.
* stabsread.c (read_range_type): Handle the case where the lower
bound overflows and the upper doesn't and the range is legal.
* infrun.c (resume): Do not step a breakpoint instruction if
CANNOT_STEP_BREAKPOINT is defined.
* inferior.h (CALL_DUMMY_LOCATION): New variant AT_ENTRY_POINT.
Now that we have the bp_call_dummy breakpoint the call dummy code
is no longer needed. PUSH_DUMMY_FRAME, PUSH_ARGUMENTS and
FIX_CALL_DUMMY can be used to set up everything for the dummy.
The breakpoint for the dummy is set at the entry point and thats it.
* blockframe.c (inside_entry_file, inside_entry_func): Do not stop
backtraces if pc is in the call dummy at the entry point.
* infcmd.c (run_stack_dummy): Handle AT_ENTRY_POINT case. Use
the expected breakpoint pc when setting up the frame for
set_momentary_breakpoint.
* symfile.c (entry_point_address): New function for AT_ENTRY_POINT
support.
* valops.c (call_function_by_hand): Handle AT_ENTRY_POINT case.
Peter Schauer [Tue, 5 Oct 1993 19:32:46 +0000 (19:32 +0000)]
* gdb.stabs/alpha.mt: New configuration file for alpha.
* gdb.stabs/configure.in: Use it.
* gdb.stabs/ecoff.mt, weird-ecoff.sed: Change sed script to enable
sharing with alpha.mt, redefine long to word via preprocessor.
* gdb.stabs/weird.def: Conditionally adapt storage layout of v_comb
for alpha.
* gdb.stabs/weird.exp: Handle compilation of weird.s by alpha
native cc.
* gdb.t00/teststrategy.exp: Change expect string so that we
consume the `(xgdb)' from the command echo and from the gdb prompt.
* gdb.t05/expr.exp: xfail "print unsigned int == (~0)" on the alpha.
gdb currently compares all values as long, so this failure probably
applies to any configuration where LONGEST is bigger than a target int.
* gdb.t08/comp-info.c: New file to determine if gdbme is compiled
with gcc.
* gdb.t08/Makefile.in, opaque.exp: Use it. Alpha native cc is unable
to handle opaque pointers, gcc is.
* gdb.t21/gdbme.cc, gdb.t23/gdbme.cc: operator new takes a size_t
as first argument. Include <sys/types.h> and change all operator
new definitions to use size_t.
* gdb.t21/cplusfuncs.exp: Handle changes in output for operator new
now that we use size_t.
Jim Kingdon [Tue, 5 Oct 1993 17:46:28 +0000 (17:46 +0000)]
* configure.host: Recognize hppa*-*-hiux* (currently synonym for hpux).
Change other hppa entries to use -*- not -hp-.
* config.bfd: Recognize hppa*-*-hiux* (currently synonym for hpux).
David D. Zuhn [Mon, 4 Oct 1993 23:19:25 +0000 (23:19 +0000)]
* configure.in: default to '--with-gnu-as' and '--with-gnu-ld'
if gas and ld are in the source tree and are in ${configdirs}.
If ${use_gnu_as} or ${use_gnu_ld} are 'no', then don't set the
the --with options (but still pass them down on the command line,
if they were explicitly specified).
* configure: substitute SHELL value in Makefile.in with
${CONFIG_SHELL}
Ken Raeburn [Mon, 4 Oct 1993 20:17:30 +0000 (20:17 +0000)]
configure.in: Alphabetize list of cpu type alternatives. Enable OS values of
"linux*elf*" and "linux*coff*" to select those formats, with linux emulation.
Don't bother checking for upper- or mixed-case versions of "ose".
Jim Kingdon [Sun, 3 Oct 1993 00:39:42 +0000 (00:39 +0000)]
* config/mips/news-mips.mh: Remove coredep.o; mips-nat.o does it.
* config/mips/news-mips.mh: Define NAT_FILE not NM_FILE.
* config/mips/nm-news-mips.h: Include mips/nm-mips.h not nm-mips.h.
Jim Kingdon [Sat, 2 Oct 1993 21:07:50 +0000 (21:07 +0000)]
* m88k-nat.c (store_inferior_registers): When writing all registers,
don't try to write EXIP_REGNUM or ENIP_REGNUM (not needed for this
case, and they cause trouble).
Jim Kingdon [Sat, 2 Oct 1993 20:55:34 +0000 (20:55 +0000)]
* TODO: Don't suggest doing fast watchpoints by stepping a line
at a time. That would be really hairy and still not fast enough.
Do suggest debug registers and page table diddling.
Jim Kingdon [Fri, 1 Oct 1993 20:48:14 +0000 (20:48 +0000)]
* printcmd.c (do_examine): Make meaning of 'h', 'w', and 'g' not
depend on builtin_type_*. Instead, it is always 2, 4, and 8 bytes
like the documentation says.
* printcmd.c (decode_format) [CC_HAS_LONG_LONG]: Remove 'l' as
synonym for 'g'. This was never documented, it shouldn't depend on
CC_HAS_LONG_LONG, and I don't see what's wrong with 'g'.
Rob Savoye [Fri, 1 Oct 1993 01:28:55 +0000 (01:28 +0000)]
* ldlang.c (lang_add_input_file): If it's a library brought in by
INPUT(), then change the file type to lang_input_file_is_l_enum.
* ldgram.y: In input_list, change lang_input_file_is_file_enum to
lang_input_file_is_search_file_enum so objects brought in using
INPUT() do a path lookup.
Ken Raeburn [Thu, 30 Sep 1993 21:54:49 +0000 (21:54 +0000)]
reloc.c (bfd_reloc_code_type): Add linkage-table relative reloc of size 8, 16,
32. Sort generic relocs by type, not size. Added a little documentation too.
Jim Kingdon [Thu, 30 Sep 1993 21:42:23 +0000 (21:42 +0000)]
* inflow.c (generic_mourn_inferior): Call reinit_frame_cache
instead of doing it ourself.
* blockframe.c (reinit_frame_cache): Use code which was in
generic_mourn_inferior so we can use this function even when
we have switched targets.
* corelow.c (core_detach): Call reinit_frame_cache.
* target.c (target_detach): Don't call generic_mourn_inferior
(revert yesterday's change, now handled by core_detach).
* objfiles.c (free_objfile): Detach any core file if we call
SOLIB_CLEAR. #include target.h.
Jim Kingdon [Thu, 30 Sep 1993 20:41:17 +0000 (20:41 +0000)]
* fork-child.c (fork_inferior): Don't call target_terminal_init
and target_terminal_inferior until we are sure that the inferior
has called gdb_setpgid. This fixes PR 2900 (Schauer tracked it
down and was able to reliably reproduce it by putting a sleep()
before the gdb_setpgid()).
Peter Schauer [Thu, 30 Sep 1993 19:06:33 +0000 (19:06 +0000)]
* c-exp.y, m2-exp.y: Change type of address for msymbol to
builtin_type_long.
* infptrace.c (fetch_register, store_inferior_register,
child_xfer_memory): Use PTRACE_XFER_TYPE for the type of ptrace
transfers. Provide an `int' default for PTRACE_XFER_TYPE.
Jim Kingdon [Thu, 30 Sep 1993 17:01:45 +0000 (17:01 +0000)]
* gdb.texinfo: Remove stuff about ar and 14 character filenames.
I believe this was fixed by the 13 Sep 89 change to print_frame_info.
Also, modern versions of ar like BSD 4.4 or SVR4 don't have this bug.
Jim Kingdon [Wed, 29 Sep 1993 00:10:26 +0000 (00:10 +0000)]
* gdb.t24 (demangle.exp): Constructors of templates have names like
vector<int>::vector(int) not vector<int>::vector<int>(int). See
section 14.6 of the ARM.
* gdb.t24 (demangle.exp): Remove a whole bunch of tests of the form
"_vt$MoveCmd"; these differ only in name from "_vt$foo", so they
accomplish little and slow down the testsuite.
* gdb.t24 (demangle.exp): Accept "XXX const" as well as "const XXX".
Accept spaces various places.
Jim Kingdon [Tue, 28 Sep 1993 21:47:15 +0000 (21:47 +0000)]
* section.c (bfd_make_section_anyway): New function.
* section.c: Change comments to say several sections can have
the same name.
* bfd-in2.h: Re-generate to reflect above change.
* coffgen.c (make_a_section_from_file): Call bfd_make_section_anyway
if still no section after the bfd_coff_make_section_hook.
* coffcode.h: Add comment about TWO_DATA_SECS.
Jim Kingdon [Tue, 28 Sep 1993 20:44:43 +0000 (20:44 +0000)]
* section.c (bfd_make_section_anyway): New function.
* section.c: Change comments to say several sections can have
the same name.
* bfd-in2.h: Re-generate to reflect above change.
* coffgen.c (make_a_section_from_file): Call bfd_make_section_anyway
if still no section after the bfd_coff_make_section_hook.
* coffcode.h: Add comment about TWO_DATA_SECS.
Jim Kingdon [Tue, 28 Sep 1993 17:43:25 +0000 (17:43 +0000)]
Tue Sep 28 09:45:38 1993 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
* symmisc.c (print_symbol): Use %02x not %2x for LOC_CONST_BYTES.
Clean up problems with targets and hosts that have 64 bit longs
and pointers and 32 bit ints.
* breakpoint.c, buildsym.c, c-lang.c, c-valprint.c, ch-lang.c,
ch-valprint.c, core.c, cp-valprint.c, dbxread.c, exec.c,
expprint.c, gdbtypes.c, infcmd.c, language.c, language.h,
m2-lang.c, maint.c, mips-tdep.c, mipsread.c, partial-stab.h,
printcmd.c, remote-vx.c, solib.c, source.c, stack.c, symfile.c,
symmisc.c, symtab.c, valops.c, valprint.c, xcoffexec.c:
Change all printf formats from %x to %lx if outputting an address.
Change la_*_format to use long format.
local_hex_string, local_hex_string_custom now take an unsigned long
argument, change all callers.
* coffread.c (read_coff_symtab): Remove superfluous cast for
complaint output.
* dbxread.c (end_psymtab): Cast MSYMBOL_INFO to long, not int.
* findvar.c, value.h (write_register): Change register value to long.
* gdbtypes.h (struct type): Change `bitsize' to long as
TYPE_FIELD_STATIC_PHYSNAME uses this field as a pointer.
* inferior.h (struct inferior_status): Change type of stop_pc to
CORE_ADDR.
* language.h (local_octal_string, local_octal_string_custom):
Remove prototype, the functions are neither defined nor used.
* mipsread.c (parse_symbol): Use temporary variable for bitsize as
f->bitsize is a long now.
* objfiles.c (add_to_objfile_sections, build_objfile_section_table):
Use unsigned long casts instead of int for abusing sections_end
pointer as integer.
* stack.c (parse_frame_specification): Change type of `args' to
CORE_ADDR for SETUP_ARBITRARY_FRAME.
* printcmd.c (make_vasize): Allow redefinition via MAKEVA_SIZE.
* mipsread.c (parse_type): Alpha cc now supports the t->continued
bit, update algorithm to match the way the compiler uses it.