aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/i386/beos-elf.h12
2 files changed, 17 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 438faba..2d6e674 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2000-02-07 Fred Fish <fnf@be.com>
+
+ * i386/beos-elf.h: (ASM_IDENTIFY_GCC): Define to nothing
+ so the gcc2_compiled symbol doesn't confuse BeOS debuggers.
+
2000-02-07 Zack Weinberg <zack@wolery.cumb.org>
* cppfiles.c (deps_output): Count spacers in deps_column.
diff --git a/gcc/config/i386/beos-elf.h b/gcc/config/i386/beos-elf.h
index 34d94f5..cd51815 100644
--- a/gcc/config/i386/beos-elf.h
+++ b/gcc/config/i386/beos-elf.h
@@ -369,3 +369,15 @@ extern union tree_node *i386_pe_merge_decl_attributes ();
without user intervention. For instance, under Microsoft Windows
symbols must be explicitly imported from shared libraries (DLLs). */
#define MULTIPLE_SYMBOL_SPACES
+
+/* A C statement to output assembler commands which will identify the object
+ file as having been compiled with GNU CC. This isn't needed for BeOS
+ because we use DWARF and DWARF has an DW_AT_producer tag that does the
+ same thing. BeOS debuggers, like bdb, that don't know about this hack
+ can get confused when they find two symbols with the same address, and
+ print the wrong one (gcc2_compiled) in things like backtraces. The most
+ likely ill effect of disabling this is that a BeOS port of gdb would not
+ be able to tell that an executable was compiled with gcc if there was no
+ DWARF info. */
+#undef ASM_IDENTIFY_GCC
+#define ASM_IDENTIFY_GCC(FILE)