Skip to content

Commit

Permalink
PR debug/83917
Browse files Browse the repository at this point in the history
	* config/i386/i386-asm.h (PACKAGE_VERSION, PACKAGE_NAME,
	PACKAGE_STRING, PACKAGE_TARNAME, PACKAGE_URL): Undefine between
	inclusion of auto-target.h and auto-host.h.
	(USE_GAS_CFI_DIRECTIVES): Define if not defined already based on
	__GCC_HAVE_DWARF2_CFI_ASM.
	(cfi_startproc, cfi_endproc, cfi_adjust_cfa_offset,
	cfi_def_cfa_register, cfi_def_cfa, cfi_register, cfi_offset, cfi_push,
	cfi_pop): Define.
	* config/i386/cygwin.S: Don't include auto-host.h here, just
	define USE_GAS_CFI_DIRECTIVES to 1 or 0 and include i386-asm.h.
	(cfi_startproc, cfi_endproc, cfi_adjust_cfa_offset,
	cfi_def_cfa_register, cfi_register, cfi_push, cfi_pop): Remove.
	* config/i386/resms64fx.h: Add cfi_* directives.
	* config/i386/resms64x.h: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@258010 138bc75d-0d04-0410-961f-82ee72b054a4
  • Loading branch information
jakub committed Feb 26, 2018
1 parent 372c2d9 commit 9e8a86c
Show file tree
Hide file tree
Showing 5 changed files with 70 additions and 22 deletions.
18 changes: 18 additions & 0 deletions libgcc/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,21 @@
2018-02-26 Jakub Jelinek <jakub@redhat.com>

PR debug/83917
* config/i386/i386-asm.h (PACKAGE_VERSION, PACKAGE_NAME,
PACKAGE_STRING, PACKAGE_TARNAME, PACKAGE_URL): Undefine between
inclusion of auto-target.h and auto-host.h.
(USE_GAS_CFI_DIRECTIVES): Define if not defined already based on
__GCC_HAVE_DWARF2_CFI_ASM.
(cfi_startproc, cfi_endproc, cfi_adjust_cfa_offset,
cfi_def_cfa_register, cfi_def_cfa, cfi_register, cfi_offset, cfi_push,
cfi_pop): Define.
* config/i386/cygwin.S: Don't include auto-host.h here, just
define USE_GAS_CFI_DIRECTIVES to 1 or 0 and include i386-asm.h.
(cfi_startproc, cfi_endproc, cfi_adjust_cfa_offset,
cfi_def_cfa_register, cfi_register, cfi_push, cfi_pop): Remove.
* config/i386/resms64fx.h: Add cfi_* directives.
* config/i386/resms64x.h: Likewise.

2018-02-20 Max Filippov <jcmvbkbc@gmail.com>

* config/xtensa/ieee754-df.S (__adddf3_aux): Add
Expand Down
26 changes: 4 additions & 22 deletions libgcc/config/i386/cygwin.S
Original file line number Diff line number Diff line change
Expand Up @@ -23,31 +23,13 @@
* <http://www.gnu.org/licenses/>.
*/

#include "auto-host.h"

#ifdef HAVE_GAS_CFI_SECTIONS_DIRECTIVE
# define USE_GAS_CFI_DIRECTIVES 1
.cfi_sections .debug_frame
# define cfi_startproc() .cfi_startproc
# define cfi_endproc() .cfi_endproc
# define cfi_adjust_cfa_offset(X) .cfi_adjust_cfa_offset X
# define cfi_def_cfa_register(X) .cfi_def_cfa_register X
# define cfi_register(D,S) .cfi_register D, S
# ifdef __x86_64__
# define cfi_push(X) .cfi_adjust_cfa_offset 8; .cfi_rel_offset X, 0
# define cfi_pop(X) .cfi_adjust_cfa_offset -8; .cfi_restore X
# else
# define cfi_push(X) .cfi_adjust_cfa_offset 4; .cfi_rel_offset X, 0
# define cfi_pop(X) .cfi_adjust_cfa_offset -4; .cfi_restore X
# endif
#else
# define cfi_startproc()
# define cfi_endproc()
# define cfi_adjust_cfa_offset(X)
# define cfi_def_cfa_register(X)
# define cfi_register(D,S)
# define cfi_push(X)
# define cfi_pop(X)
#endif /* HAVE_GAS_CFI_SECTIONS_DIRECTIVE */
# 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
Expand Down
39 changes: 39 additions & 0 deletions libgcc/config/i386/i386-asm.h
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,47 @@ 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
# define cfi_startproc() .cfi_startproc
# define cfi_endproc() .cfi_endproc
# define cfi_adjust_cfa_offset(X) .cfi_adjust_cfa_offset X
# define cfi_def_cfa_register(X) .cfi_def_cfa_register X
# define cfi_def_cfa(R,O) .cfi_def_cfa R, O
# define cfi_register(D,S) .cfi_register D, S
# define cfi_offset(R,O) .cfi_offset R, O
# ifdef __x86_64__
# define cfi_push(X) .cfi_adjust_cfa_offset 8; .cfi_rel_offset X, 0
# define cfi_pop(X) .cfi_adjust_cfa_offset -8; .cfi_restore X
# else
# define cfi_push(X) .cfi_adjust_cfa_offset 4; .cfi_rel_offset X, 0
# define cfi_pop(X) .cfi_adjust_cfa_offset -4; .cfi_restore X
# endif
#else
# define cfi_startproc()
# define cfi_endproc()
# define cfi_adjust_cfa_offset(X)
# define cfi_def_cfa_register(X)
# define cfi_def_cfa(R,O)
# define cfi_register(D,S)
# define cfi_offset(R,O)
# define cfi_push(X)
# define cfi_pop(X)
#endif

#define PASTE2(a, b) PASTE2a(a, b)
#define PASTE2a(a, b) a ## b

Expand Down
5 changes: 5 additions & 0 deletions libgcc/config/i386/resms64fx.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,9 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
* from the function. */

.text
cfi_startproc()
cfi_offset(%rbp, -16)
cfi_def_cfa(%rbp, 16)
MS2SYSV_STUB_BEGIN(resms64fx_17)
mov -0x68(%rsi),%r15
MS2SYSV_STUB_BEGIN(resms64fx_16)
Expand All @@ -48,7 +51,9 @@ MS2SYSV_STUB_BEGIN(resms64fx_12)
SSE_RESTORE
mov -0x38(%rsi),%rsi
leaveq
cfi_def_cfa(%rsp, 8)
ret
cfi_endproc()
MS2SYSV_STUB_END(resms64fx_12)
MS2SYSV_STUB_END(resms64fx_13)
MS2SYSV_STUB_END(resms64fx_14)
Expand Down
4 changes: 4 additions & 0 deletions libgcc/config/i386/resms64x.h
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
* function. */

.text
cfi_startproc()
cfi_def_cfa(%r10, 8)
MS2SYSV_STUB_BEGIN(resms64x_18)
mov -0x70(%rsi),%r15
MS2SYSV_STUB_BEGIN(resms64x_17)
Expand All @@ -49,7 +51,9 @@ MS2SYSV_STUB_BEGIN(resms64x_12)
SSE_RESTORE
mov -0x38(%rsi),%rsi
mov %r10,%rsp
cfi_def_cfa_register(%rsp)
ret
cfi_endproc()
MS2SYSV_STUB_END(resms64x_12)
MS2SYSV_STUB_END(resms64x_13)
MS2SYSV_STUB_END(resms64x_14)
Expand Down

0 comments on commit 9e8a86c

Please sign in to comment.