Commit 1f319dba by Uros Bizjak Committed by Uros Bizjak

target.h (GTM_longjmp): Correct .cfi directives.

	* config/x86/target.h (GTM_longjmp): Correct .cfi directives.

From-SVN: r184220
parent ebe8daca
2012-02-14 Uros Bizjak <ubizjak@gmail.com>
* config/x86/target.h (GTM_longjmp): Correct .cfi directives.
2012-02-14 Torvald Riegel <triegel@redhat.com> 2012-02-14 Torvald Riegel <triegel@redhat.com>
* libitm_i.h (GTM::gtm_rwlog_entry): New. * libitm_i.h (GTM::gtm_rwlog_entry): New.
......
...@@ -112,6 +112,7 @@ SYM(_ITM_beginTransaction): ...@@ -112,6 +112,7 @@ SYM(_ITM_beginTransaction):
SYM(GTM_longjmp): SYM(GTM_longjmp):
cfi_startproc cfi_startproc
#ifdef __x86_64__ #ifdef __x86_64__
cfi_def_cfa(%rsi, 0)
movq (%rsi), %rcx movq (%rsi), %rcx
movq 8(%rsi), %rbx movq 8(%rsi), %rbx
movq 16(%rsi), %rbp movq 16(%rsi), %rbp
...@@ -119,20 +120,21 @@ SYM(GTM_longjmp): ...@@ -119,20 +120,21 @@ SYM(GTM_longjmp):
movq 32(%rsi), %r13 movq 32(%rsi), %r13
movq 40(%rsi), %r14 movq 40(%rsi), %r14
movq 48(%rsi), %r15 movq 48(%rsi), %r15
movl %edi, %eax
cfi_offset(%rip, 56) cfi_offset(%rip, 56)
cfi_def_cfa(%rcx, 0) movl %edi, %eax
movq %rcx, %rsp movq %rcx, %rsp
cfi_register(%rsp, %rcx)
jmp *56(%rsi) jmp *56(%rsi)
#else #else
cfi_def_cfa(%edx, 0)
movl (%edx), %ecx movl (%edx), %ecx
movl 4(%edx), %ebx movl 4(%edx), %ebx
movl 8(%edx), %esi movl 8(%edx), %esi
movl 12(%edx), %edi movl 12(%edx), %edi
movl 16(%edx), %ebp movl 16(%edx), %ebp
cfi_offset(%eip, 20) cfi_offset(%eip, 20)
cfi_def_cfa(%ecx, 0)
movl %ecx, %esp movl %ecx, %esp
cfi_register(%esp, %ecx)
jmp *20(%edx) jmp *20(%edx)
#endif #endif
cfi_endproc cfi_endproc
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment