aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2001-03-23 00:41:02 +0000
committerAndrew Cagney <cagney@redhat.com>2001-03-23 00:41:02 +0000
commit41899c04122d85b9ce11715061d03330b1d59175 (patch)
treeb6dfcd7a802cc914dee8003654665a5d6b458908
parent886655446608bea8e4cf8a93bf77df06dc087312 (diff)
downloadgdb-41899c04122d85b9ce11715061d03330b1d59175.zip
gdb-41899c04122d85b9ce11715061d03330b1d59175.tar.gz
gdb-41899c04122d85b9ce11715061d03330b1d59175.tar.bz2
* config/pa/xm-hppah.h (HPPA_COMPILER_BUG): Delete. GDB only
compiles using an ISO-C compiler. (MALLOC_INCOMPATIBLE): Ditto. * linespec.c (decode_line_1): Delete hack to work around HPPA_COMPILER_BUG.
-rw-r--r--gdb/ChangeLog8
-rw-r--r--gdb/config/pa/xm-hppah.h5
-rw-r--r--gdb/linespec.c29
3 files changed, 8 insertions, 34 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 84d19b0..5ad26d3 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,13 @@
2001-03-22 Andrew Cagney <ac131313@redhat.com>
+ * config/pa/xm-hppah.h (HPPA_COMPILER_BUG): Delete. GDB only
+ compiles using an ISO-C compiler.
+ (MALLOC_INCOMPATIBLE): Ditto.
+ * linespec.c (decode_line_1): Delete hack to work around
+ HPPA_COMPILER_BUG.
+
+2001-03-22 Andrew Cagney <ac131313@redhat.com>
+
* exec.c (xfer_memory): Always initialize section.
* infrun.c (normal_stop): Always initialize source_flag.
diff --git a/gdb/config/pa/xm-hppah.h b/gdb/config/pa/xm-hppah.h
index 497d2a7..796b17a 100644
--- a/gdb/config/pa/xm-hppah.h
+++ b/gdb/config/pa/xm-hppah.h
@@ -29,11 +29,6 @@
#define USG
-#ifndef __STDC__
-/* This define is discussed in decode_line_1 in symtab.c */
-#define HPPA_COMPILER_BUG
-#endif
-
#define HAVE_TERMIOS
/* HP defines malloc and realloc as returning void *, even for non-ANSI
diff --git a/gdb/linespec.c b/gdb/linespec.c
index f78751b..35f225c 100644
--- a/gdb/linespec.c
+++ b/gdb/linespec.c
@@ -459,36 +459,7 @@ decode_line_1 (char **argptr, int funfirstline, struct symtab *default_symtab,
int default_line, char ***canonical)
{
struct symtabs_and_lines values;
-#ifdef HPPA_COMPILER_BUG
- /* FIXME: The native HP 9000/700 compiler has a bug which appears
- when optimizing this file with target i960-vxworks. I haven't
- been able to construct a simple test case. The problem is that
- in the second call to SKIP_PROLOGUE below, the compiler somehow
- does not realize that the statement val = find_pc_line (...) will
- change the values of the fields of val. It extracts the elements
- into registers at the top of the block, and does not update the
- registers after the call to find_pc_line. You can check this by
- inserting a printf at the end of find_pc_line to show what values
- it is returning for val.pc and val.end and another printf after
- the call to see what values the function actually got (remember,
- this is compiling with cc -O, with this patch removed). You can
- also examine the assembly listing: search for the second call to
- skip_prologue; the LDO statement before the next call to
- find_pc_line loads the address of the structure which
- find_pc_line will return; if there is a LDW just before the LDO,
- which fetches an element of the structure, then the compiler
- still has the bug.
-
- Setting val to volatile avoids the problem. We must undef
- volatile, because the HPPA native compiler does not define
- __STDC__, although it does understand volatile, and so volatile
- will have been defined away in defs.h. */
-#undef volatile
- volatile struct symtab_and_line val;
-#define volatile /*nothing */
-#else
struct symtab_and_line val;
-#endif
register char *p, *p1;
char *q, *pp, *ii, *p2;
#if 0