aboutsummaryrefslogtreecommitdiff
path: root/gdb/partial-stab.h
diff options
context:
space:
mode:
authorJeff Law <law@redhat.com>1995-08-12 22:50:04 +0000
committerJeff Law <law@redhat.com>1995-08-12 22:50:04 +0000
commit65eaea2742c1b7b1625e618603436cc3af71074e (patch)
tree398c9c396cf8e21ede64e1317bb96e80a3cb93b7 /gdb/partial-stab.h
parent5c6f833bb0a981df13d831932f56a5807f5ef126 (diff)
downloadgdb-65eaea2742c1b7b1625e618603436cc3af71074e.zip
gdb-65eaea2742c1b7b1625e618603436cc3af71074e.tar.gz
gdb-65eaea2742c1b7b1625e618603436cc3af71074e.tar.bz2
* configure.in: Recognize aix4 specially as some aspects
of aix4 need different handling than aix3. * configure: Updated. * config/powerpc/{aix4.mh,aix4.mt,tm-ppc-aix4.h}: New files specific to aix4 support on the power pc. * config/powerpc/tm-ppc-aix.h (DONT_RELOCATE_SYMFILE_OBJFILE): Do not defined. The aix4 specific target files will do that. * config/rs6000/{aix4,mh,aix4,mt,tm-rs6000-aix4.h}: New files specific to aix4 support on the rs6000. * config/rs6000/tm-rs6000.h (CONVERT_FROM_FUNC_PTR_ADDR): Don't do the conversion if the pointer is not a magic aix function pointer. * rs6000-tdep.c: Include objfiles.h and symtab.h. (is_magic_function_pointer): New function. * rs6000-tdep.c (skip_prologue): Refine check for frameless functions. Handle b .+4 emitted by aix4 compilers. Only allow one load of a minimal toc pointer. Handle aix4 compiler's code for alloca. * rs6000-tdep.c (find_toc_address): Report an error if no toc was found rather than possibly core dumping. * partial-stab.h: Handle extra field generated by the aix4 compiler for enumerations. * stabsread.c (read_enum_type): Likewise.
Diffstat (limited to 'gdb/partial-stab.h')
-rw-r--r--gdb/partial-stab.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/gdb/partial-stab.h b/gdb/partial-stab.h
index 255f4a1..ac2149d 100644
--- a/gdb/partial-stab.h
+++ b/gdb/partial-stab.h
@@ -484,6 +484,17 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
if (*p++ == 'e')
{
+ /* The aix4 compiler emits extra crud before the members. */
+ if (*p == '-')
+ {
+ /* Skip over the type (?). */
+ while (*p != ':')
+ p++;
+
+ /* Skip over the colon. */
+ p++;
+ }
+
/* We have found an enumerated type. */
/* According to comments in read_enum_type
a comma could end it instead of a semicolon.