qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] microblaze stack pointer?


From: Laurent Vivier
Subject: [Qemu-devel] microblaze stack pointer?
Date: Wed, 4 Apr 2018 14:30:26 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0

Hi,

cleaning up linux-user signal handling functions, I found something weird.

In get_sp_from_cpustate(), SP is regs[14]:

linux-user/microblaze/target_signal.h

 24) static inline abi_ulong get_sp_from_cpustate(CPUMBState *state)
 25) {
 26)     return state->regs[14];
 27) }

But in get_sigframe(), SP is regs[1];

 4128) static abi_ulong get_sigframe(struct target_sigaction *ka,
 4129)                               CPUMBState *env, int frame_size)
 4130) {
 4131)     abi_ulong sp = env->regs[1];
 4132)
 4133)     if ((ka->sa_flags & TARGET_SA_ONSTACK) != 0 &&
!on_sig_stack(sp)) {
 4134)         sp = target_sigaltstack_used.ss_sp +
target_sigaltstack_used.ss
 4135)     }
 4136)
 4137)     return ((sp - frame_size) & -8UL);
 4138) }

Is this correct?

Thanks,
Laurent



reply via email to

[Prev in Thread] Current Thread [Next in Thread]