From 3fd4045fdb1f0ccff7cca0c6604648d0e0cb8d48 Mon Sep 17 00:00:00 2001 From: Jim Kingdon Date: Mon, 1 Nov 1993 20:41:35 +0000 Subject: [PATCH] * paread.c (pa_symtab_read): Change comments to say ignoring labels really should be handled by the assembler/compiler. * Makefile.in: Add -O to CXXFLAGS. * TODO: Expand comments on fast watchpoints. --- gdb/ChangeLog | 9 +++++++++ gdb/Makefile.in | 25 ++++++++++++++++++------- gdb/TODO | 11 ++++++++++- gdb/paread.c | 12 +++++++----- 4 files changed, 44 insertions(+), 13 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index ad9bf1b..2db2df2 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,12 @@ +Mon Nov 1 09:40:21 1993 Jim Kingdon (kingdon@lioth.cygnus.com) + + * paread.c (pa_symtab_read): Change comments to say ignoring + labels really should be handled by the assembler/compiler. + + * Makefile.in: Add -O to CXXFLAGS. + + * TODO: Expand comments on fast watchpoints. + Sun Oct 31 19:45:06 1993 Jeffrey A. Law (law@snake.cs.utah.edu) * paread.c (pa_symtab_read): Also filter out local symbols diff --git a/gdb/Makefile.in b/gdb/Makefile.in index 0f585da..eb52de5 100644 --- a/gdb/Makefile.in +++ b/gdb/Makefile.in @@ -51,6 +51,9 @@ AR = ar AR_FLAGS = qv RANLIB = ranlib +M_INSTALL=@: +M_UNINSTALL=@: + # Flags that describe where you can find the termcap library. # This can be overridden in the host Makefile fragment file. TERMCAP = -ltermcap @@ -141,8 +144,10 @@ GLOBAL_CFLAGS = $(MT_CFLAGS) $(MH_CFLAGS) # when running make. I.E. "make CFLAGS=-Wmissing-prototypes". CFLAGS = -g -# Need to pass this to testsuite for "make check" -CXXFLAGS = -g +# Need to pass this to testsuite for "make check". Probably should be +# consistent with top-level Makefile.in and gdb/testsuite/Makefile.in +# so "make check" has the same result no matter where it is run. +CXXFLAGS = -g -O # INTERNAL_CFLAGS is the aggregate of all other *CFLAGS macros. INTERNAL_CFLAGS = $(CFLAGS) $(GLOBAL_CFLAGS) $(PROFILE_CFLAGS) \ @@ -841,11 +846,11 @@ ALLDEPFILES = 29k-share/udi/udip2soc.c 29k-share/udi/udr.c \ go32-xdep.c gould-pinsn.c gould-xdep.c h8300-tdep.c h8500-tdep.c \ hp300ux-nat.c hppa-pinsn.c hppa-tdep.c hppab-nat.c hppah-nat.c \ i386-pinsn.c i386-tdep.c i386b-nat.c i386mach-nat.c i386v-nat.c \ - i386aix-nat.c i386m3-nat.c i386v4-nat.c i386lynx-nat.c i386ly-tdep.c \ + i386aix-nat.c i386m3-nat.c i386v4-nat.c i386ly-nat.c i386ly-tdep.c \ i387-tdep.c \ i960-pinsn.c i960-tdep.c \ infptrace.c inftarg.c irix4-nat.c isi-xdep.c m3-nat.c \ - m68k-pinsn.c m68k-tdep.c \ + m68k-pinsn.c m68k-tdep.c m68kly-nat.c \ m88k-nat.c m88k-pinsn.c m88k-tdep.c mips-nat.c mips-pinsn.c \ mips-tdep.c mipsm3-nat.c news-xdep.c \ nindy-share/Onindy.c nindy-share/nindy.c \ @@ -858,8 +863,9 @@ ALLDEPFILES = 29k-share/udi/udip2soc.c 29k-share/udi/udr.c \ remote-st.c remote-utils.c dcache.c \ remote-udi.c remote-vx.c remote-z8k.c rs6000-nat.c rs6000-pinsn.c \ rs6000-tdep.c ser-go32.c ser-tcp.c sh-tdep.c solib.c sparc-nat.c \ - sparc-pinsn.c sparc-tdep.c sun3-nat.c sun386-nat.c symm-tdep.c \ - symm-nat.c tahoe-pinsn.c ultra3-nat.c ultra3-xdep.c umax-xdep.c \ + sparc-pinsn.c sparc-tdep.c sparcly-nat.c sun3-nat.c sun386-nat.c \ + symm-tdep.c symm-nat.c \ + tahoe-pinsn.c ultra3-nat.c ultra3-xdep.c umax-xdep.c \ vax-pinsn.c \ vx-share/xdr_ld.c vx-share/xdr_ptrace.c vx-share/xdr_rdb.c \ xcoffexec.c xcoffread.c xcoffsolib.c z8k-tdep.c @@ -971,6 +977,7 @@ ALLCONFIG = config/a29k/a29k-kern.mt config/a29k/a29k-udi.mt \ config/m68k/es1800.mt config/m68k/hp300bsd.mh \ config/m68k/hp300bsd.mt config/m68k/hp300hpux.mh \ config/m68k/hp300hpux.mt config/m68k/isi.mh config/m68k/isi.mt \ + config/m68k/m68klynx.mh config/m68k/m68klynx.mt \ config/m68k/m68k-em.mt \ config/m68k/monitor.mt \ config/m68k/news.mh config/m68k/news.mt config/m68k/news1000.mh \ @@ -993,6 +1000,7 @@ ALLCONFIG = config/a29k/a29k-kern.mt config/a29k/a29k-udi.mt \ config/pa/hppahpux.mt config/pyr/pyramid.mh config/pyr/pyramid.mt \ config/romp/rtbsd.mh config/rs6000/rs6000.mh config/rs6000/rs6000.mt \ config/sh/sh.mt config/sparc/sparc-em.mt config/sparc/sparclite.mt \ + config/sparc/sparclynx.mh config/sparc/sparclynx.mt \ config/sparc/sun4os4.mh config/sparc/sun4os4.mt \ config/sparc/sun4sol2.mh config/sparc/sun4sol2.mt \ config/sparc/vxsparc.mt config/tahoe/tahoe.mh config/tahoe/tahoe.mt \ @@ -1144,7 +1152,7 @@ hppah-nat.o: hppah-nat.c $(bfd_h) $(defs_h) $(inferior_h) target.h i386-pinsn.o: i386-pinsn.c $(bfd_h) $(dis-asm_h) $(defs_h) i386-tdep.o: i386-tdep.c $(defs_h) $(gdbcore_h) $(inferior_h) target.h i386b-nat.o: i386b-nat.c $(defs_h) -i386lynx-nat.o: i386lynx-nat.c $(defs_h) $(frame_h) $(inferior_h) target.h +i386ly-nat.o: i386ly-nat.c $(defs_h) $(frame_h) $(inferior_h) target.h i386ly-tdep.o: i386ly-tdep.c $(defs_h) $(inferior_h) target.h i386mach-nat.o: i386mach-nat.c $(defs_h) $(gdbcore_h) $(inferior_h) @@ -1194,6 +1202,7 @@ m2-valprint.o: m2-valprint.c $(defs_h) $(gdbtypes_h) $(symtab_h) \ m68k-pinsn.o: m68k-pinsn.c $(bfd_h) $(dis-asm_h) $(defs_h) m68k-tdep.o: m68k-tdep.c $(defs_h) $(frame_h) $(symtab_h) +m68kly-nat.o: m68kly-nat.c $(defs_h) $(frame_h) $(inferior_h) target.h m88k-nat.o: m88k-nat.c $(defs_h) $(gdbcore_h) $(inferior_h) m88k-pinsn.o: m88k-pinsn.c $(defs_h) $(symtab_h) m88k-tdep.o: m88k-tdep.c $(defs_h) $(gdbcore_h) $(inferior_h) @@ -1351,6 +1360,8 @@ sparc-pinsn.o: sparc-pinsn.c $(bfd_h) $(dis-asm_h) $(defs_h) sparc-tdep.o: sparc-tdep.c $(ieee-float_h) $(defs_h) $(gdbcore_h) \ $(inferior_h) objfiles.h symfile.h target.h +sparcly-nat.o: sparcly-nat.c $(bfd_h) $(defs_h) $(inferior_h) target.h + stabsread.o: stabsread.c $(bfd_h) $(INCLUDE_DIR)/aout/stab.def \ $(INCLUDE_DIR)/aout/stab_gnu.h buildsym.h complaints.h $(defs_h) \ $(gdbtypes_h) objfiles.h stabsread.h symfile.h $(symtab_h) diff --git a/gdb/TODO b/gdb/TODO index f643f84..0e95297 100644 --- a/gdb/TODO +++ b/gdb/TODO @@ -81,7 +81,16 @@ breakpoints that don't have to be removed to step over them. Speed up watchpoints by using debug registers, page table diddling (on SunOS4, can call mprotect() in the inferior; on other machines can do -something simpler), etc. +something simpler), etc. Note that you need to detect a +"fast-watchable expression" (i.e., if watching "*p", then either a +change to the address pointed to by p or a change to p itself which +causes the value of *p to change, is a watchpoint hit). It is +possible we will also someday want extensions which are +lower-level--"read from these addresses", "write to these addresses", +etc., but there is no consensus about just how important these are and +exactly what form they would take. There is a consensus that the +existing watchpoint semantics should use hardware assists when +available. Update gdbint.texinfo to include doc on the directory structure and the various tricks of building gdb. diff --git a/gdb/paread.c b/gdb/paread.c index 6399378..11246ff 100644 --- a/gdb/paread.c +++ b/gdb/paread.c @@ -182,11 +182,13 @@ pa_symtab_read (abfd, addr, objfile) bufp->symbol_value &= ~0x3; /* clear out permission bits */ check_strange_names: - /* GAS leaves symbols with the prefixes "LS$", "LBB$", - and "LBE$" in .o files after assembling. And thus - they appear in the final executable. This can - cause problems if these special symbols have the - same value as real symbols. So ignore them. Also "LC$". */ + /* GAS leaves labels in .o files after assembling. At + least labels starting with "LS$", "LBB$", "LBE$", + "LC$", and "L$" can happen. This should be fixed in + the assembler and/or compiler, to save space in the + executable (and because having GDB make gross + distinctions based on the name is kind of ugly), but + until then, just ignore them. */ if (*symname == 'L' && (symname[1] == '$' || symname[2] == '$' || symname[3] == '$')) -- 2.7.4