target.h (struct gtm_jmpbuf): Merge x86_64 and ia32 declarations some more.
* config/x86/target.h (struct gtm_jmpbuf): Merge x86_64 and ia32 declarations some more. * config/x86/sjlj.S (_ITM_beginTransaction): Move ret to common code. From-SVN: r191955
This commit is contained in:
parent
c8ae7abfab
commit
0c609a2144
@ -1,3 +1,9 @@
|
||||
2012-10-02 Uros Bizjak <ubizjak@gmail.com>
|
||||
|
||||
* config/x86/target.h (struct gtm_jmpbuf): Merge x86_64
|
||||
and ia32 declarations some more.
|
||||
* config/x86/sjlj.S (_ITM_beginTransaction): Move ret to common code.
|
||||
|
||||
2012-09-20 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR other/43620
|
||||
|
@ -74,7 +74,6 @@ SYM(_ITM_beginTransaction):
|
||||
call SYM(GTM_begin_transaction)
|
||||
addq $56, %rsp
|
||||
cfi_def_cfa_offset(8)
|
||||
ret
|
||||
#else
|
||||
leal 4(%esp), %ecx
|
||||
movl 4(%esp), %eax
|
||||
@ -99,8 +98,8 @@ SYM(_ITM_beginTransaction):
|
||||
#endif
|
||||
addl $28, %esp
|
||||
cfi_def_cfa_offset(4)
|
||||
ret
|
||||
#endif
|
||||
ret
|
||||
cfi_endproc
|
||||
|
||||
TYPE(_ITM_beginTransaction)
|
||||
|
@ -24,11 +24,11 @@
|
||||
|
||||
namespace GTM HIDDEN {
|
||||
|
||||
#ifdef __x86_64__
|
||||
/* ??? This doesn't work for Win64. */
|
||||
typedef struct gtm_jmpbuf
|
||||
{
|
||||
void *cfa;
|
||||
#ifdef __x86_64__
|
||||
unsigned long long rbx;
|
||||
unsigned long long rbp;
|
||||
unsigned long long r12;
|
||||
@ -36,18 +36,14 @@ typedef struct gtm_jmpbuf
|
||||
unsigned long long r14;
|
||||
unsigned long long r15;
|
||||
unsigned long long rip;
|
||||
} gtm_jmpbuf;
|
||||
#else
|
||||
typedef struct gtm_jmpbuf
|
||||
{
|
||||
void *cfa;
|
||||
unsigned long ebx;
|
||||
unsigned long esi;
|
||||
unsigned long edi;
|
||||
unsigned long ebp;
|
||||
unsigned long eip;
|
||||
} gtm_jmpbuf;
|
||||
#endif
|
||||
} gtm_jmpbuf;
|
||||
|
||||
/* x86 doesn't require strict alignment for the basic types. */
|
||||
#define STRICT_ALIGNMENT 0
|
||||
|
Loading…
Reference in New Issue
Block a user