aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/gcc.c20
2 files changed, 22 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f69310c..23ff608 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2001-11-27 Jakub Jelinek <jakub@redhat.com>
+
+ * gcc.c (ASM_DEBUG_SPEC): Use conditional expression rather than
+ preprocessor define. If only DBX_DEBUGGING_INFO or only
+ DWARF2_DEBUGGING_INFO is supported for the target, provide
+ appropriate definitions.
+
2001-11-27 Neil Booth <neil@daikokuya.demon.co.uk>
* Makefile.in: Update, and add c-objc-common.o dependencies.
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 7a5cad2..ea7aa1c 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -80,6 +80,7 @@ compilation is specified by a string called a "spec". */
#include "intl.h"
#include "prefix.h"
#include "gcc.h"
+#include "flags.h"
#ifdef HAVE_SYS_RESOURCE_H
#include <sys/resource.h>
@@ -590,15 +591,24 @@ proper position among the other output files. */
to the assembler. */
#ifndef ASM_DEBUG_SPEC
# if defined(HAVE_AS_GDWARF2_DEBUG_FLAG) && defined(HAVE_AS_GSTABS_DEBUG_FLAG)
-# if PREFERRED_DEBUGGING_TYPE == DBX_DEBUG
-# define ASM_DEBUG_SPEC "%{gdwarf-2*:--gdwarf2}%{!gdwarf-2*:%{g*:--gstabs}}"
+# if defined(DBX_DEBUGGING_INFO) && defined(DWARF2_DEBUGGING_INFO)
+# define ASM_DEBUG_SPEC \
+ (PREFERRED_DEBUGGING_TYPE == DBX_DEBUG \
+ ? "%{gdwarf-2*:--gdwarf2}%{!gdwarf-2*:%{g*:--gstabs}}" \
+ : "%{gstabs*:--gstabs}%{!gstabs*:%{g*:--gdwarf2}}")
# else
-# define ASM_DEBUG_SPEC "%{gstabs*:--gstabs}%{!gstabs*:%{g*:--gdwarf2}}"
+# ifdef DBX_DEBUGGING_INFO
+# define ASM_DEBUG_SPEC "%{g*:--gstabs}"
+# endif
+# ifdef DWARF2_DEBUGGING_INFO
+# define ASM_DEBUG_SPEC "%{g*:--gdwarf2}"
+# endif
# endif
-# else
-# define ASM_DEBUG_SPEC ""
# endif
#endif
+#ifndef ASM_DEBUG_SPEC
+# define ASM_DEBUG_SPEC ""
+#endif
/* Here is the spec for running the linker, after compiling all files. */