aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorJeff Law <law@redhat.com>1995-03-03 22:25:27 +0000
committerJeff Law <law@redhat.com>1995-03-03 22:25:27 +0000
commit2097152a52d65afa45652591ac26348a6f9c97a1 (patch)
treeb8a2b7a1957fec756d195070e3bdedc41270afcd /gdb
parent13ffa6becef1f14ef849255b3ad5fadd2cbbb734 (diff)
downloadfsf-binutils-gdb-2097152a52d65afa45652591ac26348a6f9c97a1.zip
fsf-binutils-gdb-2097152a52d65afa45652591ac26348a6f9c97a1.tar.gz
fsf-binutils-gdb-2097152a52d65afa45652591ac26348a6f9c97a1.tar.bz2
* somread.c (check_strange_names): Filter names emitted by the HP
compiler when generating PIC code.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog3
-rw-r--r--gdb/somread.c10
2 files changed, 11 insertions, 2 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index f7ec8a6..0ddfcd3 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,8 @@
Fri Mar 3 15:12:12 1995 Jeff Law (law@snake.cs.utah.edu)
+ * somread.c (check_strange_names): Filter names emitted by the HP
+ compiler when generating PIC code.
+
* valops.c (value_struct_elt_for_reference): Work around macro
bugs in HP's compilers.
* c-exp.y (block): Likewise.
diff --git a/gdb/somread.c b/gdb/somread.c
index ae04617..bee059d 100644
--- a/gdb/somread.c
+++ b/gdb/somread.c
@@ -227,9 +227,15 @@ som_symtab_read (abfd, objfile, section_offsets)
the nasty habit of placing section symbols from the literal
subspaces in the middle of the program's text. Filter
those out as best we can. Check for first and last character
- being '$'. */
+ being '$'.
+
+ And finally, the newer HP compilers emit crud like $PIC_foo$N
+ in some circumstance (PIC code I guess). It's also claimed
+ that they emit D$ symbols too. What stupidity. */
if ((symname[0] == 'L' && symname[1] == '$')
- || (symname[0] == '$' && symname[strlen(symname) - 1] == '$'))
+ || (symname[0] == '$' && symname[strlen(symname) - 1] == '$')
+ || (symname[0] == 'D' && symname[1] == '$')
+ || (strncmp (symname, "$PIC", 4) == 0))
continue;
break;