On 05/27/2016 09:34 AM, Peter Maydell wrote:
On 27 May 2016 at 17:21, Richard Henderson wrote:
On 05/27/2016 08:06 AM, Peter Maydell wrote:
@@ -31,6 +32,8 @@ safe_syscall_base:
* does not list any ABI differences regarding stack alignment.)
*/
push%rbp
+
On 27 May 2016 at 16:06, Peter Maydell wrote:
> return_ERESTARTSYS:
> /* code path when we didn't execute the syscall */
> +.cfi_restore_state
> mov $-TARGET_ERESTARTSYS, %rax
> pop %rbp
> +.cfi_def_cfa_offset 8
> +.cfi_restore ebp
These
On 27 May 2016 at 17:21, Richard Henderson wrote:
> On 05/27/2016 08:06 AM, Peter Maydell wrote:
>>
>> @@ -31,6 +32,8 @@ safe_syscall_base:
>> * does not list any ABI differences regarding stack alignment.)
>> */
>> push%rbp
>> +.cfi_def_cfa_offset 16
>> +
On 05/27/2016 08:06 AM, Peter Maydell wrote:
@@ -31,6 +32,8 @@ safe_syscall_base:
* does not list any ABI differences regarding stack alignment.)
*/
push%rbp
+.cfi_def_cfa_offset 16
+.cfi_offset rbp,-16
While this is correct, there are two other
Use cfi directives in the x86-64 safe_syscall to allow gdb to get
backtraces right from within it. (In particular this will be
quite a common situation if the user interrupts QEMU while it's
in a blocked safe-syscall: at the point of the syscall insn RBP
is in use for something else, and so gdb can