Per Bothner [Thu, 3 Sep 1992 05:03:47 +0000 (05:03 +0000)]
* utils.c (strcmp_iw): Add a hack to allow "FOO(ARGS)" to
match "FOO". This allows 'break Foo' to work when Foo is
a mangled C++ function. (See comment before function.)
John Gilmore [Thu, 3 Sep 1992 00:55:04 +0000 (00:55 +0000)]
* config/rs6000.mh (MH_CFLAGS): Circumvent IBM <rpc/rpc.h> bug,
for files in vx-share/*.c.
* xm-rs6000.h (fd_set): Circumvent the rs6000.mh circumvention,
for normal GDB source files.
John Gilmore [Wed, 2 Sep 1992 08:52:53 +0000 (08:52 +0000)]
* config/sun4os4.mh: Include ser-termios.o. FIXME, all .mh files
should include a ser-XXX.o module.
* configure.in: Map unrecognized sun 68k's, sun sparcs, into
known suns in configure.in, rather than mapping them to unique
config files that happen to duplicate other config files.
* config/sun3.{mh,mt}: Remove (use identical sun3os4.*).
* config/sun4.{mh,mt}: Remove (use identical sun4os4.*).
John Gilmore [Wed, 2 Sep 1992 08:51:17 +0000 (08:51 +0000)]
* ser-termios.c, ser-go32.c: Remove DEFUN crap, clean up.
* serial.h (EXFUN): Remove all uses, convert to PARAMS.
* config/sun4os4.mh: Include ser-termios.o. FIXME, all .mh files
should include a ser-XXX.o module.
* configure.in: Map unrecognized sun 68k's, sun sparcs, into
known suns in configure.in, rather than mapping them to unique
config files that happen to duplicate other config files.
* config/sun3.{mh,mt}: Remove (use identical sun3os4.*).
* config/sun4.{mh,mt}: Remove (use identical sun4os4.*).
John Gilmore [Wed, 2 Sep 1992 08:04:32 +0000 (08:04 +0000)]
* config/m68k-un.mt, config/m68k-noun.mt, config/sparc-un.mt,
config/sparc-noun.mt: New target configs for embedded.
* config/sun4os3.{mh,mt}: Remove, never existed in production.
John Gilmore [Wed, 2 Sep 1992 08:03:42 +0000 (08:03 +0000)]
* configure.in (*-*-sunos*): Use trailing * to match all
sub-variants of SunOS, e.g. sunos4* to match sunos4.1.1.
(sparc-*-sunos3): Remove host & target. Sunos3 never shipped
in production on Sun-4.
({a29k,i[34]86,i960}-*-elf): Add targets, equivalent to coff.
(m68k-*-{aout,coff,elf}): Add targets, w/new config and tm files.
(sparc-*-{aout,coff,elf}): Add targets, w/new config and tm files.
* tm-68k-un.h, tm-68k-noun.h, tm-spc-un.h, tm-spc-noun.h: New
target definitions for embedded with and without underlines on
identifiers. FIXME -- this ought to be known by BFD instead.
* tm-sparc.h, tm-sun2.h, tm-sun3.h: Delete NAMES_HAVE_UNDERSCORE:
not a parameter of the CPU, but of the development environment.
* tm-es1800.h, tm-sunos.h, tm-vx68.h: Add NAMES_HAVE_UNDERSCORE.
Per Bothner [Wed, 2 Sep 1992 06:45:13 +0000 (06:45 +0000)]
* ldmisc.c (xrealloc): New (needed by ../libiberty/cplus.dem.c).
* ldlex.l: Moved comment() to end, since some compilers
otherwise have problems with input() used before it is defined.
Per Bothner [Tue, 1 Sep 1992 20:42:11 +0000 (20:42 +0000)]
* targets.c (target_vector): Take out oasys (unless that is
the default): Because there is no magic number in archives,
there can be annoying target mis-matches.
* configure: added -program_transform_name option, used as
argument to sed when installing programs.
configure.texi: added documentation for -program_prefix,
-program_suffix and -program_transform_name.
Fred Fish [Mon, 31 Aug 1992 20:50:45 +0000 (20:50 +0000)]
* dwarfread.c (cu_language): New local variable to record
language for current compilation unit being processed.
* dwarfread.c (set_cu_language): New local function to decode
and record language for current compilation unit being processed.
* dwarfread.c (synthesize_typedef): Add local function to
synthesize a typedef for C++ classes, structs, unions, and
enumerations.
* dwarfread.c (read_structure_scope): Synthesize typedefs
for C++ classes, structs and unions.
* dwarfread.c (read_enumeration): Synthesize typedefs for
C++ enumerations.
* dwarfread.c (read_file_scope): Call set_cu_language to
record language for current compilation unit. After symtab
is built, save this recorded language.
* dwarfread.c (process_dies, add_partial_symbol, struct_type,
scan_partial_symbols, new_symbol): Recognize TAG_class_type.
* dwarfread.c (add_partial_symbol): Synthesize partial symbol
typedefs for C++ classes, structs, unions, and enumerations.
* dwarfread.c (scan_compilation_units): Call set_cu_language
to record language for current compilation unit.
* dwarfread.c (scan_partial_symbols): Call add_enum_psymbol here
for TAG_enumeration_types, rather than in add_partial_symbol.
* dwarfread.c (add_partial_symbol): Combine TAG_enumeration_type
case with class, struct, and union type cases, now that they are
the same. Remove tests for non-NULL name attributes, now done
by callers.
* gdbtypes.h (TYPE_CODE_CLASS): Add type for C++ classes, but
treat as alias for TYPE_CODE_STRUCT for now.
Jim Wilson [Mon, 31 Aug 1992 17:03:47 +0000 (17:03 +0000)]
Handle new v9 insn argument codes, and delete support for obsolete ones.
Otherwise not updated or tested, since v9 support is obviously incomplete,
and it can't possibly work right without some effort.
* aoutx.h (aout<n>swap_ext_reloc_out), bout.c
(b_out_squirt_out_relocs): fix bug 1506 where abs symbols attached
to the built-in abs_section were not written out correctly.
Fred Fish [Mon, 31 Aug 1992 04:22:46 +0000 (04:22 +0000)]
* {i386-tdep.c, m68k-tdep.c, mips-tdep.c, sparc-tdep.c}
(supply_gregset, fill_gregset, supply_fpregset, fill_fpregset):
Use "regi" for local indexing through register numbers, reserving
"regno" for the name of a specific register passed as an input
parameter. Fix bug propagated through all versions that sometimes
used regno as an index when it should have been regi, thus using
-1 as an index in some cases.
Per Bothner [Mon, 31 Aug 1992 03:34:15 +0000 (03:34 +0000)]
* gprof.h, gprof.c, printfgprof.c: Add support for two
output styles: The default is similar to the old FSF gprof,
while -T sets the variable bsd_style_output, which causes
output matching Berkeley's gprof. The biggest differences
are that with the FSF style output, the flat profile comes
before the call graph; numbers come before explanations;
and there is less gratuitous white space.
* gprof.h, gprof.c, printfgprof.c: New discard_underscores
variable causes discarding of initial underscores when
printing symbol names. It is set unless there is a "main"
symbol (without an underscore).
* printfgprof.c: New function printnameonly(), called
by printname(). It handles stripping of initial '_',
as well as C++ name-demangling.
* gprof.callg, gprof.flat, make-c-prog.awk: Removed.
It is just as convenient to edit blurbs.c directly.
* Makefile.in: Removed rule for making blurbs.c.
* blurbs.c: This is now a true source file (as opposed
to being generated from gprof.callg and gprof.flat).
Change style to use one long string literal, instead of
one literal per output line. Add FSF-style blurb for call graph.
Per Bothner [Mon, 31 Aug 1992 01:23:24 +0000 (01:23 +0000)]
* cplus-dem.c, demangle.h: Moved to ../libiberty and ../include,
respectively, so same demangler can be used by other programs.
* Makefile.in: Remove demangler stuff.
* Makefile.in (depend): Pass -I../readline (needed for main.c).
* demangle.c (_initialize_demangler): Tell demangler which
CPLUS_MARKER to assume.
Per Bothner [Mon, 31 Aug 1992 01:11:18 +0000 (01:11 +0000)]
* Makefile.in: Bump to versions 1.97.90.
* cplus-dem.c: Removed. Was nowhere used - and if some
programs are changed to to demangling should now use the
versions in libiberty.
Per Bothner [Mon, 31 Aug 1992 00:57:03 +0000 (00:57 +0000)]
* demangle.h: New file, moved from ../gdb. Made independent
of gdb. Allow demangling style option to be passed as a
parameter to cplus_demangle(), but using the
current_demangling_style global as the default.
* breakpoint.c (fixup_breakpoints): Re-kludge to IBM6000_TARGET.
* buildsym.c, rs6000-xdep.c, rs6000-tdep.c, tm-rs6000.h,
xcoffexec.c, xcoffread.c: Rename aixcoff to xcoff everywhere.
* printcmd.c (print_frame_args): Remove an RS/6000 dependency.
* stabsread.c (define_symbol): Remove RS/6000 dependencies.
* tm-rs6000.h (ATTACH_DETACH): Remove: host-dependent.
(PTRACE_ATTACH, PTRACE_DETACH): Remove: host-dep.
(NO_SINGLE_STEP): Add, target-dependent.
(loadinfotextindex): Lowercase, remove "aix_".
* xm-rs6000.h: Add <sys/ptrace.h> for infptrace.c.
(NO_SINGLE_STEP): Remove, target-dependent.
* xcoffexec.c (vmap_symtab): Cleanup #if 0'd code.
* xcoffread.c: Only build file if RS/6000 native GDB.
(build_function_symbol): Remove #if 0'd code.
* rs6000-tdep.c: Cleanup. Add static fn protos.
Use CORE_ADDR for addresses throughout. Make void fns void.
(pop_dummy_frame): Add FIXME about bogosity of design here.
(rs6000_struct_return_address): Ditto.
(frameless_function_invocation, frame_get_cache_fsr,
frame_initial_stack_address, xcoff_relocate_symtab,
xcoff_init_loadinfo, free_loadinfo, xcoff_add_toc_to_loadinfo,
add_text_to_loadinfo, find_toc_address): Move from xdep file.
Use CORE_ADDRs. Change identifiers to lowercase.
* rs6000-xdep.c: Make whole file conditional on native RS/6000,
supplying dummy routines if non-native. Add prototype for
static exec_one_dummy_insn. Move a mess of functions to
rs6000-tdep.c (as above). Remove #if 0'd code.
* breakpoint.c (fixup_breakpoints): Re-kludge to IBM6000_TARGET.
* buildsym.c, rs6000-xdep.c, rs6000-tdep.c, tm-rs6000.h,
xcoffexec.c, xcoffread.c: Rename aixcoff to xcoff everywhere.
* printcmd.c (print_frame_args): Remove an RS/6000 dependency.
* stabsread.c (define_symbol): Remove RS/6000 dependencies.
* tm-rs6000.h (ATTACH_DETACH): Remove: host-dependent.
(PTRACE_ATTACH, PTRACE_DETACH): Remove: host-dep.
(NO_SINGLE_STEP): Add, target-dependent.
(loadinfotextindex): Lowercase, remove "aix_".
* xm-rs6000.h: Add <sys/ptrace.h> for infptrace.c.
(NO_SINGLE_STEP): Remove, target-dependent.
* xcoffexec.c (vmap_symtab): Cleanup #if 0'd code.
* xcoffread.c: Only build file if RS/6000 native GDB.
(build_function_symbol): Remove #if 0'd code.
* rs6000-tdep.c: Cleanup. Add static fn protos.
Use CORE_ADDR for addresses throughout. Make void fns void.
(pop_dummy_frame): Add FIXME about bogosity of design here.
(rs6000_struct_return_address): Ditto.
(frameless_function_invocation, frame_get_cache_fsr,
frame_initial_stack_address, xcoff_relocate_symtab,
xcoff_init_loadinfo, free_loadinfo, xcoff_add_toc_to_loadinfo,
add_text_to_loadinfo, find_toc_address): Move from xdep file.
Use CORE_ADDRs. Change identifiers to lowercase.
* rs6000-xdep.c: Make whole file conditional on native RS/6000,
supplying dummy routines if non-native. Add prototype for
static exec_one_dummy_insn. Move a mess of functions to
rs6000-tdep.c (as above). Remove #if 0'd code.
* archive.c (bfd_slurp_bsd_armap): if the symdef_count is too
large, assume we're using a swapped byte order and fail with
wrong_format rather than dumping core.
* obj-bout.h, obj-bout.c (obj_header_append, obj_symbol_to_chars),
tc-i960.c (md_ri_to_chars): Always output bout object file in
little endian byte order (used to use endianness of host).
* targets.c, config/i960-bout.mt, hosts/*: added
HOST_BIG_ENDIAN_DEFAULT_VECTOR and
HOST_LITTLE_ENDIAN_DEFAULT_VECTOR because bout archive format
depends on the endianness of the host. Added #define
HOST_BIG_ENDIAN_P and #undef HOST_BIG_ENDIAN_P to a number of
configuration files in hosts/ (it was already in some).
* ldlang.c (lang_process): don't pass null pointers when
abs_output_section is what is required.
* ldwrite.c (ldwrite): use malloc to allocate the largest space
used, and pass that down.
* relax.c,relax.h (write_relaxnorel): use the passed malloc area rather
than alloca.
Fred Fish [Wed, 26 Aug 1992 23:05:55 +0000 (23:05 +0000)]
* cplus-dem.c: Reorder args to most local functions to make them
follow the consistent pattern of struct work_stuff pointer first,
followed by pointer into string being demangled, followed by
pointer to the string where the result is being stored, followed
by other args. Also generally replace most variables of name
"type" with "mangled" for consistency. They all pointed to the
same string but half were one name and half the other.
* cplus-dem.c (LONGERNAMES): Remove #ifndef's.
* cplus-dem.c (demangle_qualified): Rewrite to clean up and allow
use whenever a qualified name is being demangled.
* cplus-dem.c (do_type): Qualified names are treated similarly
to fundamental types, not as modifiers of fundamental types.
Ken Raeburn [Wed, 26 Aug 1992 04:08:45 +0000 (04:08 +0000)]
* config/tc-m68k.c (init_table): Now const. Always include 68851
data, so that "bc" is available to 68040 cache instructions. Added
"tt0", "tt1", and 68ec030 variants.
(md_assemble): Complain if 68000 (only) and 68881 are specified.
(enum _register): Added TT0, TT1.
(m68k_ip, cases '3' and 't'): Handle new operand type codes. Pass
line number correctly in "internal error" messages. Don't print
architecture-mismatch message for operand errors.
From Colin Smith ([email protected]):
* config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather than
install_operand.
Ken Raeburn [Wed, 26 Aug 1992 04:02:42 +0000 (04:02 +0000)]
* config/tc-m68k.c (init_table): Now const. Always include 68851
data, so that "bc" is available to 68040 cache instructions. Added
"tt0", "tt1", and 68ec030 variants.
(md_assemble): Complain if 68000 (only) and 68881 are specified.
(enum _register): Added TT0, TT1.
(m68k_ip, cases '3' and 't'): Handle new operand type codes. Pass
line number correctly in "internal error" messages. Don't print
architecture-mismatch message for operand errors.
From Colin Smith ([email protected]):
* config/tc-m68k.c (m68k_ip, case '_'): Use addword twice rather than
install_operand.
Ken Raeburn [Wed, 26 Aug 1992 03:46:22 +0000 (03:46 +0000)]
m68k.h (m68ec030): Defined as alias for 68030.
(m68k_opcodes): New type characters "3" for 68030 MMU regs and "t" for
immediate 0-7 added. Set up some opcodes (ptest, bkpt) to use them.
Tightened description of "fmovex" to distinguish it from some "pmove"
encodings. Added "pmove" for 68030 MMU regs, cleaned up descriptions that
claimed versions were available for chips not supporting them. Added
"pmovefd".