From 2ebb6f6e5162f2c759a883a30c3a49fbedbf5892 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Fri, 10 Sep 2021 08:18:45 +0200 Subject: [PATCH] Always default to DWARF2 debug for cygwin and mingw This removes the fallback to STABS as default for cygwin and mingw when the assembler does not support .secrel32 and the default is to emit 32bit code. Support for .secrel32 was added to binutils 2.16 released in 2005 so instead document that as requirement. I left the now unused check for .secrel32 in configure around in case somebody wants to turn that into an error or warning. 2021-09-10 Richard Biener * config/i386/cygming.h: Always default to DWARF2 debugging. Do not define DBX_DEBUGGING_INFO, that's done via dbxcoff.h already. * doc/install.texi: Document binutils 2.16 as minimum requirement for mingw. --- gcc/config/i386/cygming.h | 9 --------- gcc/doc/install.texi | 4 ++++ 2 files changed, 4 insertions(+), 9 deletions(-) diff --git a/gcc/config/i386/cygming.h b/gcc/config/i386/cygming.h index ac458cd..da872d1 100644 --- a/gcc/config/i386/cygming.h +++ b/gcc/config/i386/cygming.h @@ -18,17 +18,10 @@ You should have received a copy of the GNU General Public License along with GCC; see the file COPYING3. If not see . */ -#define DBX_DEBUGGING_INFO 1 -#if TARGET_64BIT_DEFAULT || defined (HAVE_GAS_PE_SECREL32_RELOC) #define DWARF2_DEBUGGING_INFO 1 -#endif #undef PREFERRED_DEBUGGING_TYPE -#if (DWARF2_DEBUGGING_INFO) #define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG -#else -#define PREFERRED_DEBUGGING_TYPE DBX_DEBUG -#endif #undef TARGET_SEH #define TARGET_SEH (TARGET_64BIT_MS_ABI && flag_unwind_tables) @@ -97,7 +90,6 @@ along with GCC; see the file COPYING3. If not see #undef DWARF_FRAME_REGISTERS #define DWARF_FRAME_REGISTERS (TARGET_64BIT ? 33 : 17) -#ifdef HAVE_GAS_PE_SECREL32_RELOC /* Use section relative relocations for debugging offsets. Unlike other targets that fake this by putting the section VMA at 0, PE won't allow it. */ @@ -129,7 +121,6 @@ along with GCC; see the file COPYING3. If not see gcc_unreachable (); \ } \ } while (0) -#endif #define TARGET_EXECUTABLE_SUFFIX ".exe" diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi index 99b4470..88e453c 100644 --- a/gcc/doc/install.texi +++ b/gcc/doc/install.texi @@ -5131,6 +5131,10 @@ GCC will build with and support only MinGW runtime 3.12 and later. Earlier versions of headers are incompatible with the new default semantics of @code{extern inline} in @code{-std=c99} and @code{-std=gnu99} modes. +To support emitting DWARF debugging info you need to use GNU binutils +version 2.16 or above containing support for the @code{.secrel32} +assembler pseudo-op. + @html
@end html -- 2.7.4