* as.h (enum _relax_state): Add rs_leb128.
* read.c (potable): Add sleb128 and uleb128.
(sizeof_*leb128, output_*leb128, emit_leb128_expr, s_leb128): New
functions.
* read.h: Update prototypes.
* symbols.c (resolve_symbol_value): Streamline quite a bit. Return
the symbol value, add a second FINALIZE argument that prevents
changes from being comitted. Update all callers.
* write.c (cvt_frag_to_fill, relax_segment): Handle rs_leb128.
* doc/as.texinfo: Document the new pseudos.
Stan Shebs [Tue, 12 Aug 1997 02:34:14 +0000 (02:34 +0000)]
* dink32-rom.c: New file, support for DINK32 monitor.
* Makefile.in (dink32-rom.o): Add build rule.
* config/powerpc/ppc-eabi.mt, config/powerpc/ppc-sim.mt
(TDEPFILES): Add dink32-rom.o.
* monitor.h (MO_32_REGS_PAIRED, MO_SETREG_INTERACTIVE,
MO_SETMEM_INTERACTIVE, MO_GETMEM_16_BOUNDARY,
MO_CLR_BREAK_1_BASED): New monitor interface flags.
* monitor.c: Use them.
(monitor_store_register): Use setreg.term if defined.
(monitor_insert_breakpoint, monitor_remove_breakpoint): Notice
if set_break and clr_break fields are empty.
Geoffrey Noer [Mon, 11 Aug 1997 23:40:26 +0000 (23:40 +0000)]
Mon Aug 11 16:22:36 1997 Geoffrey Noer <noer@cygnus.com>
* ocd.c (ocd_insert_breakpoint, ocd_remove_breakpoint): macro
BDM_BREAKPOINT already has braces around it, remove erroneous ones.
* ser-ocd.c (ocd_write): conditionalize on _WIN32 instead of
__CYGWIN32__
* config/powerpc/tm-ppc-eabi.h: remove BDM_NUM_REGS, BDM_REGMAP
* ppc-bdm.c: move BDM_NUM_REGS, BDM_REGMAP here from tm.h file,
fill in doc fields of bdm_ppc_ops.
(bdm_ppc_fetch_registers): don't ask for invalid registers such
as the MQ or floating point regs not present on ppc 8xx boards
(bdm_ppc_store_registers): don't write those same invalid registers
* config/i386/cygwin32.mh: stop including ocd.o ser-ocd.o
* config/powerpc/ppc-eabi.mt:
* config/powerpc/ppcle-eabi.mt:
* config/powerpc/ppc-sim.mt:
* config/powerpc/ppcle-sim.mt: include ser-ocd.o
Geoffrey Noer [Mon, 11 Aug 1997 02:04:16 +0000 (02:04 +0000)]
Sun Aug 10 16:49:09 1997 Geoffrey Noer <noer@cygnus.com>
* ocd.c: move ocd_write_bytes proto to ocd.h since it is used
by ppc-bdm.c, use OCD_LOG_FILE to help debugging, define
BDM_BREAKPOINT if not defined in tm.h
(ocd_error): add new error cases
(ocd_start_remote): send the OCD_INIT command before
OCD_AYT and OCD_GET_VERSION calls, 80 was correct speed after all
(ocd_write_bytes): no longer static
(ocd_insert_breakpoint): no longer static
(ocd_remove_breakpoint): new
* ocd.h: add protos for ocd_write_bytes, ocd_insert_breakpoint,
and ocd_remove_breakpoint
* ppc-bdm.c: change bdm_ppc_ops so we call ocd_insert_breakpoint
and ocd_remove_breakpoint instead of memory_insert_breakpoint
and memory_remove_breakpoint.
(bdm_ppc_open): after calling ocd_open, modify DER
register so interrupts will drop us into debugging mode, finally
disable the watchdog timer on the board so we don't leave BDM
mode unexpectedly.
Geoffrey Noer [Mon, 11 Aug 1997 00:01:59 +0000 (00:01 +0000)]
Sun Aug 10 16:49:09 1997 Geoffrey Noer <noer@cygnus.com>
* ocd.c: move ocd_write_bytes proto to ocd.h since it is used
by ppc-bdm.c, use OCD_LOG_FILE to help debugging, define
BDM_BREAKPOINT if not defined in tm.h
(ocd_error): add new error cases
(ocd_start_remote): send the OCD_INIT command before
OCD_AYT and OCD_GET_VERSION calls
(ocd_write_bytes): no longer static
(ocd_insert_breakpoint): no longer static
(ocd_remove_breakpoint): new
* ocd.h: add protos for ocd_write_bytes, ocd_insert_breakpoint,
and ocd_remove_breakpoint
* ppc-bdm.c: change bdm_ppc_ops so we call ocd_insert_breakpoint
and ocd_remove_breakpoint instead of memory_insert_breakpoint
and memory_remove_breakpoint.
(bdm_ppc_open): after calling ocd_open, modify DER
register so interrupts will drop us into debugging mode, finally
disable the watchdog timer on the board so we don't leave BDM
mode unexpectedly.
Ian Lance Taylor [Sun, 10 Aug 1997 18:47:36 +0000 (18:47 +0000)]
* coff-stgo32.c: Rename from coff-stubgo32.c to avoid old System V
file system 14 character limit.
* Makefile.am, configure.in: Corresponding changes.
* Makefile.in, configure: Rebuild.
* configure.in: Change version number to 2.8.2. Call
AM_PROG_LIBTOOL. Remove shared library handling; now handled by
libtool. Add AM_CONFIG_HEADER. Change AC_PROG_INSTALL to
AM_PROG_INSTALL. Add AM_EXEEXT.
* Makefile.am (LINK): Remove.
(gprof_LDFLAGS): Remove
(gprof_DEPENDENCIES): Change libbfd.a to libbfd.la.
(gprof_LDADD): Likewise.
($(OBJECTS)): Depend upon gconfig.h and ../bfd/config.h.
* gprof.h: Undefine PACKAGE and VERSION after including BFD
sysdep.h file, then include new gconfig.h file.
* gprof.c (VERSION): Don't define.
* acconfig.h: New file.
* stamp-h.in: New file.
* gconfig.in: New file, created by autoheader.
* Makefile.in, configure, aclocal.m4: Rebuild.
* config/default.exp: Change ld, as, nm and strip from .new to
-new. Load ld-lib.exp rather than ld.exp.
* ld-bootstrap/bootstrap.exp: Use ld-new rather than ld.new.
* lib/ld-lib.exp: Rename from lib/ld.exp, for the benefit of
DejaGnu changes.
* Makefile.am: New file, based on old Makefile.in.
* acinclude.m4: New file, from old aclocal.m4.
* configure.in: Call AM_INIT_AUTOMAKE and AM_PROG_LIBTOOL. Remove
shared library handling; now handled by libtool. Replace
AC_CONFIG_HEADER with AM_CONFIG_HEADER. Call AC_PROG_YACC,
AC_PROG_LEX, and AC_DECL_YYTEXT. Call AM_MAINTAINER_MODE,
AM_CYGWIN32, and AM_EXEEXT. Don't call CY_CYGWIN32 or CY_EXEEXT.
* configure.host: Don't set HLDFLAGS, HLDENV, or RPATH_ENVVAR.
* acconfig.h: Mention PACKAGE and VERSION.
* stamp-h.in: New file.
* ldver.c (ld_program_vresion): Set ld_program_version from
VERSION.
* ldgram.y, ldlex.l: Replace VERSION with VERSIONK.
* Makefile.in: Now built with automake.
* aclocal.m4: Now built with aclocal.
* configure, config.in: Rebuild.
Mark Alexander [Sat, 9 Aug 1997 04:49:48 +0000 (04:49 +0000)]
start-sanitize-tic80
* config/tic80/tic80.mt:
(GDBSERVER-DEPFILES, GDBSERVER_LIBS): Define for gdbserver.
(SIM): Remove -lm to prevent make errors.
* configure.tgt: add gdbserver to configdirs for tic80.
end-sanitize-tic80
* gdbserver/utils.c (error): Change prototype to match defs.h.
* gdbserver/low-sim.c: Change simulator calls to use new interface.
* remote.c (remote_write_bytes): Include '$' at start of packet
and checksum at end of packet in overhead calculation.
* ser-ocd.c: If _WIN32, include <windows.h>.
(dll_do_command): New static variable if _WIN32.
(ocd_open): Set dll_do_command if _WIN32.
(ocd_write): Use dll_do_command rather than do_command.
* config/i386/cygwin32.mh (XDEPFILES): Remove libwigglers.a.
(BDM_DLLNAME, BDM_LIBNAME, BDM_DEFFILE): Don't define.
($(BDM_LIBNAME)): Remove target.
* wigglers.def: Remove.
* gdbtk.c (gdbtk_init): Change gdbtk_lib_tmp and gdbtk_file to be
dynamically allocated, rather than fixed size. Pass "gdbtcl" to
ide_initialize_paths to match installed directory name. If IDE,
use auto_path to search for main.tcl.
* Makefile.in (install-only): If ENABLE_IDE, install from gdbtcl2
rather than gdbtcl.
* gdbtk.c (gdbtk_cleanup): New static function.
(gdbtk_init): Add gdbtk_cleanup as a final cleanup. Uncomment
call to ide_initialize_paths. If we can't initialize the event
system, set GDBTK_IDE to 0 in the Tcl interpreter. Create the
ide_window_register and the ide_window commands. Initialize tk,
itcl, and tix after initializing the IDE.
Geoffrey Noer [Fri, 8 Aug 1997 02:57:35 +0000 (02:57 +0000)]
Thu Aug 7 19:40:52 1997 Geoffrey Noer <noer@cygnus.com>
Changes to OCD support to support wiggler box as well as
target boxes:
* ocd.c: change speed in init command to 0 from 80,
add (temporary) logging commands to help debugging,
(ocd_open): if "target ocd wiggler lpt" then use special
ser-ocd.c serial interface which communicates with Wigglers.dll,
otherwise do as we did before
(ocd_get_packet): add OCD_LOG_FILE and OCD_SET_CONNECTION to
switch of known commands of len 0
* ocd.h: add OCD_LOG_FILE
* serial.c (serial_open): do serial_interface_lookup on ocd
in the case of ocd
* ser-ocd.c: add buffer to contain responses from sending a
command to the Wigglers.dll.
(ocd_readchar): return curr char from buffer and increment ptr
(ocd_write): send buffer to Wigglers.dll, storing response in
return buffer and initializing curr location ptr to start of
buffer.
Geoffrey Noer [Thu, 7 Aug 1997 20:19:26 +0000 (20:19 +0000)]
Thu Aug 7 13:09:17 1997 Geoffrey Noer <noer@cygnus.com>
Nomenclature change. BDM is a specific type of OCD
(On chip debugging). Wiggler is the parallel port box controlled
by Wigglers.dll. The faster target box from Macraigor Systems
is not a wiggler.
* ocd.c:
* ocd.h:
* ppc-bdm.c:
* ser-ocd.c:
Replace all instances of "wiggler_" with "ocd_" and change most other
instances of "wiggler" to "ocd" or "ocd device" depending on context.
* config/m68k/monitor.mt: remove remote-wiggler.o from TDEPFILES
until OCD with that target is supported again.
Geoffrey Noer [Thu, 7 Aug 1997 06:31:46 +0000 (06:31 +0000)]
Wed Aug 6 16:15:31 1997 Geoffrey Noer <noer@cygnus.com>
* Makefile.in: add DLLTOOL = @DLLTOOL@, pass on DLLTOOL to
sub makes, change clean rule to also remove *.a to remove
libwigglers.a, in dependencies: add ppc-bdm.o ocd.o ser-ocd.o and
remove remote-wiggler.o
* configure.in: add DLLTOOL support
* configure: regenerate
* wigglers.def: new file for imports for wigglers.dll
* ser-ocd.c: new file which is layer between ocd.c and either the
wigglers.dll or the target box, only stub so far
* config/powerpc/ppc-eabi.mt: add ppc-bdm.o to TDEPFILES
* config/powerpc/ppc-sim.mt: add ppc-bdm.o to TDEPFILES
* config/i386/cygwin32.mh: add ocd.o ser-ocd.o libwigglers.a
to XDEPFILES, add rules to build libwigglers.a
checking in changes of Stu Grossman <grossman@cygnus.com>:
* remote-wiggler.c: delete
* ocd.c: new, was remote-wiggler.c
always include sys/types.h, include ocd.h, move WIGGLER
commands and many wiggler prototypes to ocd.h, make wiggler_desc
static, stop making local wiggler functions static,
define write_mem_command for wiggler_write_bytes
(wiggler_start_remote): stop hardcoding the target type,
instead set and use a target_type variable.
(wiggler_open): add new target_type and ops args
(wiggler_wait): now no longer takes pid and target_status as args,
stop trying to set target_status struct, remove BGND insn
checks
(read_bdm_registers): renamed to wiggler_read_bdm_registers
(wiggler_read_bdm_registers): numregs arg changed to reglen arg,
remove pktlen check, set reglen instead of numregs
(dump_all_bdm_regs): delete
(wiggler_fetch_registers): delete
(wiggler_prepare_to_store): now just an empty function
(wiggler_store_registers): delete
(wiggler_read_bdm_register): new
(wiggler_write_bdm_registers): new
(wiggler_write_bdm_register): new
(wiggler_write_bytes): use write_mem_command variable instead of
WIGGLER_WRITE_MEM
(get_packet): renamed to wiggler_get_packet, change refs throughout
(put_packet): renamed to wiggler_put_packet, change refs throughout
(wiggler_get_packet): add break to default case of switch,
change length of WIGGLER_GET_VERSION len to 10 from 4 to match
specs
(wiggler_mourn): unpush_target with current_ops, not &wiggler_ops
(flash_xfer_memory): delete
(noop_store_registers): new placeholder replacement for
target_store_registers() which prevents generic_load from trying to
set up the PC.
(bdm_update_flash_command): add store_registers_tmp variable,
make handling of wiggler_ops more generic -- define wiggler_ops
in a target-specific file instead (such as ppc-bdm.c in the case
of the ppc), use current_target to deal with registers again
making this file less target-specific.
(bdm_read_register_command): new
(_initialize_remote_wiggler): stop doing add_target (&wiggler_ops),
comment out add_cmd ("read-register", ...)
* ocd.h: new, contains common wiggler prototypes, command definitions
* ppc-bdm.c: file for ppc-specific OCD code, including target_ops
structure for ppc bdm
(bdm_ppc_open): new
(bdm_ppc_wait): new
(bdm_ppc_fetch_registers): new
(bdm_ppc_store_registers_: new
(_initialize_bdm_ppc): new
* config/powerpc/tm-ppc-eabi.h: add necessary CPU32 BDM defines
* configure: Changed sed delimiter from ':' to '|' when
attempting to substitute ${config_shell} for SHELL. On
NT ${config_shell} may contain a ':' in it.
* Makefile.am: New file, based on old Makefile.in.
* acinclude.m4: New file, from old aclocal.m4.
* configure.in: Call AM_INIT_AUTOMAKE and AM_PROG_LIBTOOL. Remove
shared library handling; now handled by libtool. Replace
AC_CONFIG_HEADER with AM_CONFIG_HEADER. Call AC_PROG_YACC,
AC_PROG_LEX, and AC_DECL_YYTEXT. Call AM_MAINTAINER_MODE,
AM_CYGWIN32, and AM_EXEEXT. Don't call CY_CYGWIN32 or CY_EXEEXT.
* config.in: New file, created by autoheader.
* conf.in: Remove.
* acconfig.h: Mention PACKAGE, VERSION, and USING_CGEN.
* stamp-h.in: New file.
* as.c (print_version_id): Change GAS_VERSION to VERSION.
(parse_args): Likewise.
* config/obj-vms.c: (Write_VMS_MHD_Records): Likewise.
* Makefile.in: Now built with automake.
* aclocal.m4: Now built with aclocal.
* configure: Rebuild.
Per Bothner [Tue, 5 Aug 1997 21:59:56 +0000 (21:59 +0000)]
* jv-lang.c (get_java_utf8_name): Re-write so it works with
implied (missing) data field, as defined by cc1java.
(java_link_class_type): Type length and field offset (in interior)
now includes object header. Get static fields working.
* jv-lang.h (JAVA_OBJECT_SIZE): Update for change in Kaffe.
* jv-typeprint.c (java_type_print_derivation_info,
java_type_print_base): New functions, for better Java output.
* jv-valprint.c: Start to support Java-specific output.
Per Bothner [Tue, 5 Aug 1997 21:58:57 +0000 (21:58 +0000)]
* gdbtypes.h: Re-interpret struct field. Suppport address of static.
Add a bunch of macros.
* coffread.c, dwarf2read.c, dwarfread.c, mdebugread.c, stabsread.c:
Update to use new macros.
* coffread.c, hpread.c, stabsread.c: Remove bugus TYPE_FIELD_VALUE.
* value.h, values.c (value_static_field): New function.
* cp-valprint.c, valops.c: Modify to use value_static_field.
* Makefile.am (TOOL_PROGS): Use an explicit $(EXEEXT).
(install-exec-local): When handling $(noinst_PROGRAMS), only use
$(EXEEXT) on the installed file. When handling $(TOOL_PROGS),
handle $(EXEEXT) correctly.
* configure.in: Add an explicit $(EXEEXT) when substituting for
the name of a program to build.
* Makefile.in, configure: Rebuild.
Peter Schauer [Sun, 3 Aug 1997 15:24:55 +0000 (15:24 +0000)]
* c-valprint.c (c_val_print): Use extract_address to retrieve
the address of the virtual function.
From Peter Bloecher (Peter.Bloecher@eedn.ericsson.se).
* eval.c (evaluate_subexp_standard), valarith.c (value_x_unop):
Handle C++ operator *.
Peter Schauer [Sun, 3 Aug 1997 15:16:37 +0000 (15:16 +0000)]
* rs6000-core.c (make_bfd_asection): New function to add a section
to the core file bfd.
(rs6000coff_core_p): Use make_bfd_asection to add the core file
sections.
Use BFD routines to seek, read and stat the core file.
Handle .data sections from loaded objects and anonymously mmapped
regions, these are available in AIX 4 core files.
* gdbtk.c (Tcl_Alloc): Don't provide our own version of this if
_WIN32.
(Tcl_Realloc, Tcl_Free): Likewise.
* configure.in: Check for cygwin32 environment. Define and
substitute WIN32LIBS and WIN32LDAPP. Always set configdir to
unix; setting it to win was for an old Tcl/Tk configuration
scheme.
* aclocal.m4 (CY_AC_LOAD_TKCONFIG): Substitute TK_BUILD_INCLUDES.
* Makefile.in (TK_CFLAGS): Add @TK_BUILD_INCLUDES@.
(WIN32LDAPP, WIN32LIBS): Define.
(CLIBS): Add $(WIN32LIBS).
(gdb): Use $(WIN32LDAPP).
* configure: Rebuild.