43 lines
1.0 KiB
C
43 lines
1.0 KiB
C
#ifndef E2K_TARGET_CPU_H
|
|
#define E2K_TARGET_CPU_H
|
|
|
|
#include "qemu/log.h"
|
|
|
|
static inline void cpu_clone_regs_child(CPUE2KState *env, target_ulong newsp,
|
|
unsigned flags)
|
|
{
|
|
if (newsp) {
|
|
// FIXME: what size must be?
|
|
env->usd.size = 0x20000;
|
|
env->usd.base = newsp;
|
|
env->usd.read = 1;
|
|
env->usd.write = 1;
|
|
}
|
|
}
|
|
|
|
static inline void cpu_clone_regs_parent(CPUE2KState *env, unsigned flags)
|
|
{
|
|
qemu_log_mask(LOG_UNIMP, "cpu_clone_regs_parent: unimplemented\n");
|
|
// TODO: cpu_clone_regs_parent
|
|
}
|
|
|
|
static inline void cpu_set_tls(CPUE2KState *env, target_ulong newtls)
|
|
{
|
|
qemu_log_mask(LOG_UNIMP, "cpu_set_tls: unimplemented\n");
|
|
// TODO: cpu_set_tls
|
|
}
|
|
|
|
static inline target_ulong cpu_get_tls(CPUE2KState *env)
|
|
{
|
|
// TODO: cpu_get_tls
|
|
qemu_log_mask(LOG_UNIMP, "cpu_get_tls: unimplemented\n");
|
|
return 0;
|
|
}
|
|
|
|
static inline abi_ulong get_sp_from_cpustate(CPUE2KState *env)
|
|
{
|
|
return env->usd.base;
|
|
}
|
|
|
|
#endif /* E2K_TARGET_CPU_H */
|