diff options
author | Jakub Jelinek <jakub@redhat.com> | 2018-02-28 09:59:15 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2018-02-28 09:59:15 +0100 |
commit | ce579a4fe084bb4aea2b677592e114639d9afc07 (patch) | |
tree | ee17476149a90f9a012107fe31e62bdcb32f4996 /libgcc/config/i386 | |
parent | 678127a85e78a86d680e33b208e1571dc2dc045f (diff) | |
download | gcc-ce579a4fe084bb4aea2b677592e114639d9afc07.tar.gz |
re PR debug/83917 (with -mcall-ms2sysv-xlogues, stepping into x86 tail-call restore stub gives bad backtrace)
PR debug/83917
* configure.ac (AS_HIDDEN_DIRECTIVE): AC_DEFINE_UNQUOTED this to
$asm_hidden_op if visibility ("hidden") attribute works.
(HAVE_AS_CFI_SECTIONS): New AC_DEFINE.
* config/i386/i386-asm.h: Don't include auto-host.h.
(PACKAGE_VERSION, PACKAGE_NAME, PACKAGE_STRING, PACKAGE_TARNAME,
PACKAGE_URL): Don't undefine.
(USE_GAS_CFI_DIRECTIVES): Don't use nor define this macro, instead
guard cfi_startproc only on ifdef __GCC_HAVE_DWARF2_CFI_ASM.
(FN_HIDDEN): Change guard from #ifdef HAVE_GAS_HIDDEN to
#ifdef AS_HIDDEN_DIRECTIVE, use AS_HIDDEN_DIRECTIVE macro in the
definition instead of hardcoded .hidden.
* config/i386/cygwin.S: Include i386-asm.h first before .cfi_sections
directive. Use #ifdef HAVE_AS_CFI_SECTIONS rather than
#ifdef HAVE_GAS_CFI_SECTIONS_DIRECTIVE to guard .cfi_sections.
(USE_GAS_CFI_DIRECTIVES): Don't define.
* configure: Regenerated.
* config.in: Likewise.
From-SVN: r258057
Diffstat (limited to 'libgcc/config/i386')
-rw-r--r-- | libgcc/config/i386/cygwin.S | 8 | ||||
-rw-r--r-- | libgcc/config/i386/i386-asm.h | 21 |
2 files changed, 7 insertions, 22 deletions
diff --git a/libgcc/config/i386/cygwin.S b/libgcc/config/i386/cygwin.S index f856be3e88a..ece17f82a68 100644 --- a/libgcc/config/i386/cygwin.S +++ b/libgcc/config/i386/cygwin.S @@ -23,13 +23,11 @@ * <http://www.gnu.org/licenses/>. */ -#ifdef HAVE_GAS_CFI_SECTIONS_DIRECTIVE -# define USE_GAS_CFI_DIRECTIVES 1 +#include "i386-asm.h" + +#ifdef HAVE_AS_CFI_SECTIONS .cfi_sections .debug_frame -#else -# define USE_GAS_CFI_DIRECTIVES 0 #endif -#include "i386-asm.h" #ifdef L_chkstk /* Function prologue calls __chkstk to probe the stack when allocating more diff --git a/libgcc/config/i386/i386-asm.h b/libgcc/config/i386/i386-asm.h index dbf99564b0c..b5b7fb44fa5 100644 --- a/libgcc/config/i386/i386-asm.h +++ b/libgcc/config/i386/i386-asm.h @@ -27,21 +27,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see #define I386_ASM_H #include "auto-target.h" -#undef PACKAGE_VERSION -#undef PACKAGE_NAME -#undef PACKAGE_STRING -#undef PACKAGE_TARNAME -#undef PACKAGE_URL -#include "auto-host.h" - -#ifndef USE_GAS_CFI_DIRECTIVES -# ifdef __GCC_HAVE_DWARF2_CFI_ASM -# define USE_GAS_CFI_DIRECTIVES 1 -# else -# define USE_GAS_CFI_DIRECTIVES 0 -# endif -#endif -#if USE_GAS_CFI_DIRECTIVES + +#ifdef __GCC_HAVE_DWARF2_CFI_ASM # define cfi_startproc() .cfi_startproc # define cfi_endproc() .cfi_endproc # define cfi_adjust_cfa_offset(X) .cfi_adjust_cfa_offset X @@ -76,8 +63,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see #ifdef __ELF__ # define FN_TYPE(fn) .type fn,@function # define FN_SIZE(fn) .size fn,.-fn -# ifdef HAVE_GAS_HIDDEN -# define FN_HIDDEN(fn) .hidden fn +# ifdef AS_HIDDEN_DIRECTIVE +# define FN_HIDDEN(fn) AS_HIDDEN_DIRECTIVE fn # endif #else # define FN_TYPE(fn) |