darling-gdb/gdb/energize-patches
1992-07-18 20:14:32 +00:00

915 lines
25 KiB
Plaintext
Executable File
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Apply these patches to GDB to produce an Energize GDB.
# To apply these patches, first cd to gdb-XX/gdb, run "patch -p0 <thisfile",
# and then Sanitize.
===================================================================
RCS file: /local/cvsfiles/devo/gdb/.Sanitize,v
retrieving revision 2.63
diff -c -r2.63 .Sanitize
*** 2.63 1992/07/14 07:51:45
--- .Sanitize 1992/07/16 22:43:53
***************
*** 77,82 ****
--- 77,85 ----
doc
dwarfread.c
elfread.c
+ energize
+ energize.c
+ energize.h
environ.c
environ.h
eval.c
===================================================================
RCS file: /local/cvsfiles/devo/gdb/Makefile.in,v
retrieving revision 1.172
diff -c -r1.172 Makefile.in
*** 1.172 1992/07/17 23:53:54
--- Makefile.in 1992/07/18 00:11:14
***************
*** 123,128 ****
--- 123,135 ----
READLINE_DEP = $$(READLINE_DIR)
RL_LIB = ./../readline${subdir}/libreadline.a
+ # Energize libraries. Works slightly differently than other libraries
+ # because it is a gdb subdir and we try to build the energize library
+ # if it doesn't exist, unlike readline, bfd, mmalloc, etc. Note
+ # that SDIR and BDIR will be different if we configured with -srcdir.
+ ENERGIZE_DIR = energize
+ ENERGIZE_LIB = ${ENERGIZE_DIR}/libconn.a
+
# All the includes used for CFLAGS and for lint.
# -I. for config files.
# -I${srcdir} possibly for regex.h also.
***************
*** 155,166 ****
# {X,T}M_CLIBS, defined in *config files, have host- and target-dependent libs.
# TERMCAP comes after readline, since readline depends on it.
CLIBS = ${BFD_LIB} ${RL_LIB} ${TERMCAP} ${MMALLOC_LIB} ${LIBIBERTY} \
! ${XM_CLIBS} ${TM_CLIBS}
CDEPS = ${XM_CDEPS} ${TM_CDEPS} ${BFD_LIB} ${MMALLOC_LIB} ${LIBIBERTY} \
${RL_LIB} ${MMALLOC_LIB}
ADD_FILES = ${REGEX} ${ALLOCA} ${XM_ADD_FILES} ${TM_ADD_FILES}
! ADD_DEPS = ${REGEX1} ${ALLOCA1} ${XM_ADD_FILES} ${TM_ADD_FILES}
VERSION = 4.6.1
DIST=gdb
--- 162,174 ----
# {X,T}M_CLIBS, defined in *config files, have host- and target-dependent libs.
# TERMCAP comes after readline, since readline depends on it.
CLIBS = ${BFD_LIB} ${RL_LIB} ${TERMCAP} ${MMALLOC_LIB} ${LIBIBERTY} \
! ${ENERGIZE_LIB} ${XM_CLIBS} ${TM_CLIBS}
CDEPS = ${XM_CDEPS} ${TM_CDEPS} ${BFD_LIB} ${MMALLOC_LIB} ${LIBIBERTY} \
${RL_LIB} ${MMALLOC_LIB}
ADD_FILES = ${REGEX} ${ALLOCA} ${XM_ADD_FILES} ${TM_ADD_FILES}
! ADD_DEPS = ${REGEX1} ${ALLOCA1} ${XM_ADD_FILES} ${TM_ADD_FILES} \
! ${ENERGIZE_LIB}
VERSION = 4.6.1
DIST=gdb
***************
*** 190,196 ****
${DEMANGLER}.c mem-break.c target.c inftarg.c \
dbxread.c coffread.c elfread.c dwarfread.c xcoffread.c \
ieee-float.c language.c parse.c buildsym.c objfiles.c \
! minsyms.c mipsread.c maint.c
# Source files in subdirectories (which will be handled separately by
# 'make gdb.tar.Z').
--- 198,204 ----
${DEMANGLER}.c mem-break.c target.c inftarg.c \
dbxread.c coffread.c elfread.c dwarfread.c xcoffread.c \
ieee-float.c language.c parse.c buildsym.c objfiles.c \
! minsyms.c mipsread.c maint.c energize.c
# Source files in subdirectories (which will be handled separately by
# 'make gdb.tar.Z').
***************
*** 276,282 ****
command.o utils.o expprint.o environ.o version.o gdbtypes.o \
copying.o $(DEPFILES) ${DEMANGLER}.o mem-break.o target.o \
inftarg.o ieee-float.o putenv.o parse.o language.o $(YYOBJ) \
! buildsym.o objfiles.o minsyms.o maint.o demangle.o \
dbxread.o coffread.o elfread.o dwarfread.o xcoffread.o mipsread.o
RAPP_OBS = rgdb.o rudp.o rserial.o serial.o udp.o $(XDEPFILES)
--- 284,290 ----
command.o utils.o expprint.o environ.o version.o gdbtypes.o \
copying.o $(DEPFILES) ${DEMANGLER}.o mem-break.o target.o \
inftarg.o ieee-float.o putenv.o parse.o language.o $(YYOBJ) \
! buildsym.o objfiles.o minsyms.o maint.o demangle.o energize.o \
dbxread.o coffread.o elfread.o dwarfread.o xcoffread.o mipsread.o
RAPP_OBS = rgdb.o rudp.o rserial.o serial.o udp.o $(XDEPFILES)
***************
*** 289,295 ****
NTSSTART = kdb-start.o
! SUBDIRS = doc
# For now, shortcut the "configure GDB for fewer languages" stuff.
YYFILES = c-exp.tab.c m2-exp.tab.c
--- 297,303 ----
NTSSTART = kdb-start.o
! SUBDIRS = doc ${ENERGIZE_DIR}
# For now, shortcut the "configure GDB for fewer languages" stuff.
YYFILES = c-exp.tab.c m2-exp.tab.c
***************
*** 343,348 ****
--- 351,370 ----
#load `echo " "$(DEPFILES) | sed -e 's/\.o/.c/g' -e 's, , ../,g'`
echo "Load .c corresponding to:" $(DEPFILES)
+ ${ENERGIZE_LIB} :
+ @(cd ${ENERGIZE_DIR}; \
+ $(MAKE) \
+ "against=$(against)" \
+ "AR=$(AR)" \
+ "AR_FLAGS=$(AR_FLAGS)" \
+ "CC=$(CC)" \
+ "CFLAGS=$(CFLAGS)" \
+ "RANLIB=$(RANLIB)" \
+ "MAKEINFO=$(MAKEINFO)" \
+ "INSTALL=$(INSTALL)" \
+ "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
+ "INSTALL_DATA=$(INSTALL_DATA)" \
+ "BISON=$(BISON)")
# This is useful when debugging GDB, because some Unix's don't let you run GDB
# on itself without copying the executable. So "make gdb1" will make
***************
*** 643,649 ****
-e '/extern.*free/d' \
< y.tab.c > m2-exp.tab.c
-rm y.tab.c
-
main.o: ${srcdir}/main.c
${CC} -c ${INTERNAL_CFLAGS} -I${READLINE_DIR} $<
--- 665,670 ----
===================================================================
RCS file: /local/cvsfiles/devo/gdb/breakpoint.c,v
retrieving revision 1.40
diff -c -r1.40 breakpoint.c
*** 1.40 1992/07/16 23:23:02
--- breakpoint.c 1992/07/16 23:23:58
***************
*** 273,278 ****
--- 273,279 ----
b->cond_string = NULL;
if (from_tty)
printf_filtered ("Breakpoint %d now unconditional.\n", bnum);
+ energize_condition_breakpoint(b);
}
else
{
***************
*** 281,286 ****
--- 282,288 ----
typed in or the decompiled expression. */
b->cond_string = savestring (arg, strlen (arg));
b->cond = parse_exp_1 (&arg, block_for_pc (b->address), 0);
+ energize_condition_breakpoint(b);
if (*arg)
error ("Junk at end of expression");
}
***************
*** 316,327 ****
ALL_BREAKPOINTS (b)
if (b->number == bnum)
{
! if (from_tty && input_from_terminal_p ())
printf_filtered ("Type commands for when breakpoint %d is hit, one per line.\n\
End with a line saying just \"end\".\n", bnum);
l = read_command_lines ();
free_command_lines (&b->commands);
b->commands = l;
return;
}
error ("No breakpoint number %d.", bnum);
--- 318,330 ----
ALL_BREAKPOINTS (b)
if (b->number == bnum)
{
! if ((from_tty && input_from_terminal_p ()) || energize)
printf_filtered ("Type commands for when breakpoint %d is hit, one per line.\n\
End with a line saying just \"end\".\n", bnum);
l = read_command_lines ();
free_command_lines (&b->commands);
b->commands = l;
+ energize_commands_breakpoint(b);
return;
}
error ("No breakpoint number %d.", bnum);
***************
*** 922,927 ****
--- 925,931 ----
{
b->ignore_count--;
this_bp_stop = 0;
+ energize_ignore_breakpoint(b);
}
else
{
***************
*** 1366,1371 ****
--- 1370,1377 ----
mention (b)
struct breakpoint *b;
{
+ energize_create_breakpoint(b);
+
switch (b->type)
{
case bp_watchpoint:
***************
*** 2113,2118 ****
--- 2119,2126 ----
register struct breakpoint *b;
register bpstat bs;
+ energize_delete_breakpoint(bpt);
+
if (bpt->inserted)
target_remove_breakpoint(bpt->address, bpt->shadow_contents);
***************
*** 2284,2289 ****
--- 2292,2298 ----
if (b->number == bptnum)
{
b->ignore_count = count;
+ energize_ignore_breakpoint(b);
if (!from_tty)
return;
else if (count == 0)
***************
*** 2308,2314 ****
struct breakpoint *b;
ALL_BREAKPOINTS (b)
! b->ignore_count = 0;
}
/* Command to set ignore-count of breakpoint N to COUNT. */
--- 2317,2326 ----
struct breakpoint *b;
ALL_BREAKPOINTS (b)
! {
! b->ignore_count = 0;
! energize_ignore_breakpoint(b);
! }
}
/* Command to set ignore-count of breakpoint N to COUNT. */
***************
*** 2375,2380 ****
--- 2387,2394 ----
{
bpt->enable = enabled;
+ energize_enable_breakpoint(bpt);
+
if (xgdb_verbose && bpt->type == bp_breakpoint)
printf ("breakpoint #%d enabled\n", bpt->number);
***************
*** 2422,2427 ****
--- 2436,2443 ----
disable_breakpoint (bpt)
struct breakpoint *bpt;
{
+ energize_disable_breakpoint(bpt);
+
bpt->enable = disabled;
if (xgdb_verbose && bpt->type == bp_breakpoint)
===================================================================
RCS file: /local/cvsfiles/devo/gdb/command.c,v
retrieving revision 1.18
diff -c -r1.18 command.c
*** 1.18 1992/07/10 17:22:30
--- command.c 1992/07/16 22:44:12
***************
*** 1148,1154 ****
}
if (pid != -1)
! while ((rc = wait (&status)) != pid && rc != -1)
;
else
error ("Fork failed");
--- 1148,1154 ----
}
if (pid != -1)
! while ((rc = energize_wait (&status)) != pid && rc != -1)
;
else
error ("Fork failed");
===================================================================
RCS file: /local/cvsfiles/devo/gdb/configure.in,v
retrieving revision 1.51
diff -c -r1.51 configure.in
*** 1.51 1992/07/07 07:22:33
--- configure.in 1992/07/16 22:44:14
***************
*** 1,4 ****
! configdirs="doc"
srcname="GDB"
srctrigger=main.c
target_dependent=true
--- 1,4 ----
! configdirs="energize doc"
srcname="GDB"
srctrigger=main.c
target_dependent=true
===================================================================
RCS file: /local/cvsfiles/devo/gdb/defs.h,v
retrieving revision 1.43
diff -c -r1.43 defs.h
*** 1.43 1992/07/09 04:40:24
--- defs.h 1992/07/16 22:48:44
***************
*** 805,808 ****
--- 805,810 ----
#define MAINTENANCE_CMDS 1
#endif
+ #include "energize.h"
+
#endif /* !defined (DEFS_H) */
===================================================================
RCS file: /local/cvsfiles/devo/gdb/inflow.c,v
retrieving revision 1.27
diff -c -r1.27 inflow.c
*** 1.27 1992/07/04 03:21:21
--- inflow.c 1992/07/05 12:58:31
***************
*** 81,87 ****
static short pgrp_inferior;
static short pgrp_ours;
# else /* not def SHORT_PGRP */
! static int pgrp_inferior;
static int pgrp_ours;
# endif /* not def SHORT_PGRP */
#else /* not def TIOCGPGRP */
--- 81,87 ----
static short pgrp_inferior;
static short pgrp_ours;
# else /* not def SHORT_PGRP */
! int pgrp_inferior;
static int pgrp_ours;
# endif /* not def SHORT_PGRP */
#else /* not def TIOCGPGRP */
===================================================================
RCS file: /local/cvsfiles/devo/gdb/infrun.c,v
retrieving revision 1.52
diff -c -r1.52 infrun.c
*** 1.52 1992/07/04 03:21:24
--- infrun.c 1992/07/05 13:46:46
***************
*** 617,622 ****
--- 617,623 ----
Here we must get it up to actual execution of the real program. */
inferior_pid = pid; /* Needed for wait_for_inferior stuff below */
+ energize_new_process();
clear_proceed_status ();
***************
*** 755,760 ****
--- 756,762 ----
attach (pid);
inferior_pid = pid;
+ energize_new_process();
push_target (&child_ops);
mark_breakpoints_out ();
===================================================================
RCS file: /local/cvsfiles/devo/gdb/inftarg.c,v
retrieving revision 1.11
diff -c -r1.11 inftarg.c
*** 1.11 1992/03/29 23:21:27
--- inftarg.c 1992/07/05 13:48:05
***************
*** 58,64 ****
#ifdef USE_PROC_FS
pid = proc_wait (status);
#else
! pid = wait (status);
#endif
if (pid == -1) /* No more children to wait for */
{
--- 58,64 ----
#ifdef USE_PROC_FS
pid = proc_wait (status);
#else
! pid = energize_wait (status);
#endif
if (pid == -1) /* No more children to wait for */
{
===================================================================
RCS file: /local/cvsfiles/devo/gdb/main.c,v
retrieving revision 1.51
diff -c -r1.51 main.c
*** 1.51 1992/07/10 17:22:33
--- main.c 1992/07/17 23:22:19
***************
*** 426,431 ****
--- 426,432 ----
char *corearg = NULL;
char *cdarg = NULL;
char *ttyarg = NULL;
+ char *energize_id = NULL;
/* Pointers to all arguments of +command option. */
char **cmdarg;
***************
*** 524,529 ****
--- 525,531 ----
{"tty", required_argument, 0, 't'},
{"baud", required_argument, 0, 'b'},
{"b", required_argument, 0, 'b'},
+ {"context", required_argument, 0, 12},
/* Allow machine descriptions to add more options... */
#ifdef ADDITIONAL_OPTIONS
ADDITIONAL_OPTIONS
***************
*** 556,561 ****
--- 558,566 ----
case 11:
cdarg = optarg;
break;
+ case 12:
+ energize_id = optarg;
+ break;
case 's':
symarg = optarg;
break;
***************
*** 736,741 ****
--- 741,748 ----
free ((PTR)dirarg);
do_cleanups (ALL_CLEANUPS);
+ energize_initialize (energize_id, execarg);
+
if (execarg != NULL
&& symarg != NULL
&& strcmp (execarg, symarg) == 0)
***************
*** 850,856 ****
if (!setjmp (to_top_level))
{
do_cleanups (ALL_CLEANUPS); /* Do complete cleanup */
! command_loop ();
quit_command ((char *)0, instream == stdin);
}
}
--- 857,866 ----
if (!setjmp (to_top_level))
{
do_cleanups (ALL_CLEANUPS); /* Do complete cleanup */
! if (energize)
! energize_main_loop();
! else
! command_loop ();
quit_command ((char *)0, instream == stdin);
}
}
***************
*** 912,918 ****
else if (c->function.cfunc == NO_FUNCTION)
error ("That is not a command, just a help topic.");
else
! (*c->function.cfunc) (arg, from_tty & caution);
}
/* Tell the user if the language has changed (except first time). */
--- 922,928 ----
else if (c->function.cfunc == NO_FUNCTION)
error ("That is not a command, just a help topic.");
else
! energize_call_command (c, arg, from_tty & caution);
}
/* Tell the user if the language has changed (except first time). */
***************
*** 1564,1570 ****
while (1)
{
dont_repeat ();
! p = command_line_input ((char *) NULL, instream == stdin);
if (p == NULL)
/* Treat end of file like "end". */
break;
--- 1574,1580 ----
while (1)
{
dont_repeat ();
! p = energize_command_line_input ((char *) NULL, instream == stdin);
if (p == NULL)
/* Treat end of file like "end". */
break;
***************
*** 1868,1874 ****
void
print_prompt ()
{
! printf ("%s", prompt);
fflush (stdout);
}
--- 1878,1884 ----
void
print_prompt ()
{
! printf_filtered ("%s", prompt);
fflush (stdout);
}
===================================================================
RCS file: /local/cvsfiles/devo/gdb/printcmd.c,v
retrieving revision 1.30
diff -c -r1.30 printcmd.c
*** 1.30 1992/07/06 00:22:52
--- printcmd.c 1992/07/16 22:44:42
***************
*** 778,783 ****
--- 778,792 ----
{
int histindex = record_latest_value (val);
+ if (energize)
+ {
+ char buf[20];
+
+ sprintf(buf, "$%d", histindex);
+ energize_start_variable_annotation(buf, NULL, VALUE_TYPE(val),
+ VALUE_ADDRESS(val), "");
+ }
+
if (inspect)
printf ("\031(gdb-makebuffer \"%s\" %d '(\"", exp, histindex);
else
***************
*** 784,789 ****
--- 793,799 ----
if (histindex >= 0) printf_filtered ("$%d = ", histindex);
print_formatted (val, format, fmt.size);
+ energize_end_variable_annotation();
printf_filtered ("\n");
if (inspect)
printf("\") )\030");
***************
*** 1653,1663 ****
--- 1663,1681 ----
standard indentation here is 4 spaces, and val_print indents
2 for each recurse. */
val = read_var_value (sym, FRAME_INFO_ID (fi));
+
+ energize_start_variable_annotation(SYMBOL_NAME(sym), sym,
+ VALUE_TYPE(val),
+ VALUE_ADDRESS(val), "");
+
if (val)
val_print (VALUE_TYPE (val), VALUE_CONTENTS (val), VALUE_ADDRESS (val),
stream, 0, 0, 2, Val_no_prettyprint);
else
fputs_filtered ("???", stream);
+
+ energize_end_variable_annotation();
+
first = 0;
}
===================================================================
RCS file: /local/cvsfiles/devo/gdb/stack.c,v
retrieving revision 1.33
diff -c -r1.33 stack.c
*** 1.33 1992/07/04 03:21:45
--- stack.c 1992/07/05 14:13:23
***************
*** 159,165 ****
if (addressprint)
printf_filtered ("%s in ", local_hex_string(fi->pc));
! fputs_demangled (fname, stdout, 0);
fputs_filtered (" (...)\n", stdout);
return;
--- 159,168 ----
if (addressprint)
printf_filtered ("%s in ", local_hex_string(fi->pc));
! if (energize)
! energize_annotate_function(fname, 0, level);
! else
! fputs_demangled (fname, stdout, 0);
fputs_filtered (" (...)\n", stdout);
return;
***************
*** 218,224 ****
if (addressprint)
if (fi->pc != sal.pc || !sal.symtab)
printf_filtered ("%s in ", local_hex_string(fi->pc));
! fputs_demangled (funname ? funname : "??", stdout, 0);
wrap_here (" ");
fputs_filtered (" (", stdout);
if (args)
--- 221,230 ----
if (addressprint)
if (fi->pc != sal.pc || !sal.symtab)
printf_filtered ("%s in ", local_hex_string(fi->pc));
! if (energize)
! energize_annotate_function(funname ? funname : "??", 0, level);
! else
! fputs_demangled (funname ? funname : "??", stdout, 0);
wrap_here (" ");
fputs_filtered (" (", stdout);
if (args)
***************
*** 255,261 ****
{
if (addressprint && mid_statement)
printf_filtered ("%s\t", local_hex_string(fi->pc));
! print_source_lines (sal.symtab, sal.line, sal.line + 1, 0);
}
current_source_line = max (sal.line - lines_to_list/2, 1);
}
--- 261,268 ----
{
if (addressprint && mid_statement)
printf_filtered ("%s\t", local_hex_string(fi->pc));
! if (!energize)
! print_source_lines (sal.symtab, sal.line, sal.line + 1, 0);
}
current_source_line = max (sal.line - lines_to_list/2, 1);
}
***************
*** 429,435 ****
if (funname)
{
printf_filtered (" in ");
! fputs_demangled (funname, stdout, DMGL_ANSI | DMGL_PARAMS);
}
wrap_here (" ");
if (sal.symtab)
--- 436,446 ----
if (funname)
{
printf_filtered (" in ");
! if (energize)
! energize_annotate_function(funname, DMGL_ANSI | DMGL_PARAMS,
! selected_frame_level);
! else
! fputs_demangled (funname, stdout, DMGL_ANSI | DMGL_PARAMS);
}
wrap_here (" ");
if (sal.symtab)
===================================================================
RCS file: /local/cvsfiles/devo/gdb/symfile.c,v
retrieving revision 1.55
diff -c -r1.55 symfile.c
*** 1.55 1992/07/04 13:58:46
--- symfile.c 1992/07/05 14:14:12
***************
*** 611,616 ****
--- 611,618 ----
fflush (stdout);
}
+ energize_symbol_file(objfile);
+
return (objfile);
}
===================================================================
RCS file: /local/cvsfiles/devo/gdb/utils.c,v
retrieving revision 1.54
diff -c -r1.54 utils.c
*** 1.54 1992/07/09 04:40:35
--- utils.c 1992/07/16 22:44:50
***************
*** 694,700 ****
register int ans2;
/* Automatically answer "yes" if input is not from a terminal. */
! if (!input_from_terminal_p ())
return 1;
while (1)
--- 694,700 ----
register int ans2;
/* Automatically answer "yes" if input is not from a terminal. */
! if (!input_from_terminal_p () && !energize)
return 1;
while (1)
***************
*** 701,721 ****
{
va_start (args);
ctlstr = va_arg (args, char *);
vfprintf_filtered (stdout, ctlstr, args);
- va_end (args);
printf_filtered ("(y or n) ");
! fflush (stdout);
! answer = fgetc (stdin);
! clearerr (stdin); /* in case of C-d */
! if (answer == EOF) /* C-d */
! return 1;
! if (answer != '\n') /* Eat rest of input line, to EOF or newline */
! do
! {
! ans2 = fgetc (stdin);
! clearerr (stdin);
! }
! while (ans2 != EOF && ans2 != '\n');
if (answer >= 'a')
answer -= 040;
if (answer == 'Y')
--- 701,732 ----
{
va_start (args);
ctlstr = va_arg (args, char *);
+ energize_query (ctlstr, args);
vfprintf_filtered (stdout, ctlstr, args);
printf_filtered ("(y or n) ");
! if (energize)
! {
! char *buf;
!
! buf = energize_command_line_input(0, 0);
! answer = buf ? *buf : 'Y';
! energize_acknowledge_query(buf);
! }
! else
! {
! fflush (stdout);
! answer = fgetc (stdin);
! clearerr (stdin); /* in case of C-d */
! if (answer == EOF) /* C-d */
! return 1;
! if (answer != '\n') /* Eat rest of input line, to EOF or newline */
! do
! {
! ans2 = fgetc (stdin);
! clearerr (stdin);
! }
! while (ans2 != EOF && ans2 != '\n');
! }
if (answer >= 'a')
answer -= 040;
if (answer == 'Y')
***************
*** 723,728 ****
--- 734,740 ----
if (answer == 'N')
return 0;
printf_filtered ("Please answer y or n.\n");
+ va_end (args);
}
}
***************
*** 989,994 ****
--- 1001,1012 ----
if (linebuffer == 0)
return;
+ if (energize)
+ {
+ energize_fputs(linebuffer);
+ return;
+ }
+
/* Don't do any filtering if it is disabled. */
if (stream != stdout
|| (lines_per_page == UINT_MAX && chars_per_line == UINT_MAX))
===================================================================
RCS file: /local/cvsfiles/devo/gdb/valprint.c,v
retrieving revision 1.48
diff -c -r1.48 valprint.c
*** 1.48 1992/07/10 03:56:06
--- valprint.c 1992/07/16 22:44:53
***************
*** 485,490 ****
--- 485,491 ----
struct type **dont_print;
{
int i, len, n_baseclasses;
+ char expr_tag[100]; /* Energize */
check_stub_type (type);
***************
*** 549,554 ****
--- 550,562 ----
fprint_symbol (stream, TYPE_FIELD_NAME (type, i));
fputs_filtered (" = ", stream);
}
+
+ sprintf(expr_tag, ".%s", TYPE_FIELD_NAME(type, i));
+
+ energize_start_variable_annotation(expr_tag, NULL,
+ TYPE_FIELD_TYPE(type, i),
+ (CORE_ADDR) (valaddr + TYPE_FIELD_BITPOS(type, i) / 8),
+ "");
if (TYPE_FIELD_PACKED (type, i))
{
value v;
***************
*** 567,572 ****
--- 575,581 ----
valaddr + TYPE_FIELD_BITPOS (type, i) / 8,
0, stream, format, 0, recurse + 1, pretty);
}
+ energize_end_variable_annotation();
}
if (pretty)
{
***************
*** 801,806 ****
--- 810,816 ----
unsigned int rep1;
/* Number of repetitions we have detected so far. */
unsigned int reps;
+ char expr_tag[100]; /* Energize */
if (i != 0)
if (arrayprint)
***************
*** 822,827 ****
--- 832,842 ----
++rep1;
}
+ sprintf(expr_tag, "[%d]", i);
+ energize_start_variable_annotation(expr_tag, NULL,
+ elttype,
+ (CORE_ADDR) (valaddr + i * eltlen),
+ "");
if (reps > REPEAT_COUNT_THRESHOLD)
{
val_print (elttype, valaddr + i * eltlen,
***************
*** 838,843 ****
--- 853,859 ----
recurse + 1, pretty);
things_printed++;
}
+ energize_end_variable_annotation();
}
if (i < len)
fprintf_filtered (stream, "...");
===================================================================
*** config/ncr3000.mh Mon Jun 15 12:25:13 1992
--- config/ncr3000.mh Sat Jul 18 12:41:07 1992
***************
*** 38,40 ****
--- 38,46 ----
# The /usr/ucb/install program is incompatible (complains about unknown
# group staff). Use good old cp...
INSTALL = cp
+
+ # These are the libs that are needed for the Energize version of gdb on
+ # SVR4. Note that we MUST include the standard C library before libucb.a,
+ # otherwise we get lots of broken stuff we don't want.
+ XM_CLIBS = -L/usr/lib -lm -lnet -lresolv -lform -lsocket -lc \
+ /usr/ucblib/libucb.a -lnsl
===================================================================
*** demangle.c Wed Jul 15 13:33:17 1992
--- demangle.c Fri Jul 17 21:34:09 1992
***************
*** 37,43 ****
the appropriate target configuration file. */
#ifndef DEFAULT_DEMANGLING_STYLE
! # define DEFAULT_DEMANGLING_STYLE AUTO_DEMANGLING_STYLE_STRING
#endif
/* The current demangling style in affect. Global so that the demangler
--- 37,43 ----
the appropriate target configuration file. */
#ifndef DEFAULT_DEMANGLING_STYLE
! # define DEFAULT_DEMANGLING_STYLE LUCID_DEMANGLING_STYLE_STRING
#endif
/* The current demangling style in affect. Global so that the demangler