unicore32: convert get_sp_from_cpustate from macro to inline
All other architectures define get_sp_from_cpustate as an inline function, only unicore32 uses a #define. With this, some usages are impossible, for example, enabling sigaltstack in linux-user/syscall.c results in linux-user/syscall.c: In function ‘do_syscall’: linux-user/syscall.c:8299:39: error: dereferencing ‘void *’ pointer [-Werror] get_sp_from_cpustate(arg1, arg2, get_sp_from_cpustate((CPUArchState *)cpu_env)); ^ linux-user/syscall.c:8299:39: error: request for member ‘regs’ in something not a structure or union Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
6bb9ead762
commit
6e50216461
@ -21,6 +21,10 @@ typedef struct target_sigaltstack {
|
||||
#define TARGET_SS_ONSTACK 1
|
||||
#define TARGET_SS_DISABLE 2
|
||||
|
||||
#define get_sp_from_cpustate(cpustate) (cpustate->regs[29])
|
||||
static inline abi_ulong get_sp_from_cpustate(CPUUniCore32State *state)
|
||||
{
|
||||
return state->regs[29];
|
||||
}
|
||||
|
||||
|
||||
#endif /* TARGET_SIGNAL_H */
|
||||
|
Loading…
Reference in New Issue
Block a user