Fix x86 cfi directives for syscalls.
The syscall generation always used 4 bytes for each push cfi directive. However, the first push should always use an offset of 8 bytes, each subsequent push after that is only 4 bytes though. Change-Id: Ibaabd107f399ef67010b9a08213783957c2f74a9
This commit is contained in:
@@ -4,12 +4,14 @@
|
||||
|
||||
ENTRY(dup3)
|
||||
pushl %ebx
|
||||
pushl %ecx
|
||||
pushl %edx
|
||||
.cfi_def_cfa_offset 12
|
||||
.cfi_def_cfa_offset 8
|
||||
.cfi_rel_offset ebx, 0
|
||||
.cfi_rel_offset ecx, 4
|
||||
.cfi_rel_offset edx, 8
|
||||
pushl %ecx
|
||||
.cfi_adjust_cfa_offset 4
|
||||
.cfi_rel_offset ecx, 0
|
||||
pushl %edx
|
||||
.cfi_adjust_cfa_offset 4
|
||||
.cfi_rel_offset edx, 0
|
||||
mov 16(%esp), %ebx
|
||||
mov 20(%esp), %ecx
|
||||
mov 24(%esp), %edx
|
||||
|
||||
Reference in New Issue
Block a user