mirror of https://github.com/proxmox/mirror_qemu
target-xtensa: Let cpu_xtensa_init() return XtensaCPU
Make the include paths for cpu-qom.h consistent to allow using XtensaCPU in cpu.h. Turn cpu_init macro into a static inline function returning CPUXtensaState for backwards compatibility. Signed-off-by: Andreas Färber <afaerber@suse.de> Acked-by: Max Filippov <jcmvbkbc@gmail.com>master
parent
f6932a867d
commit
15be317139
|
@ -28,7 +28,7 @@
|
||||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "cpu-qom.h"
|
#include "cpu.h"
|
||||||
#include "qemu-common.h"
|
#include "qemu-common.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -344,13 +344,24 @@ typedef struct CPUXtensaState {
|
||||||
CPU_COMMON
|
CPU_COMMON
|
||||||
} CPUXtensaState;
|
} CPUXtensaState;
|
||||||
|
|
||||||
#define cpu_init cpu_xtensa_init
|
#include "cpu-qom.h"
|
||||||
|
|
||||||
#define cpu_exec cpu_xtensa_exec
|
#define cpu_exec cpu_xtensa_exec
|
||||||
#define cpu_gen_code cpu_xtensa_gen_code
|
#define cpu_gen_code cpu_xtensa_gen_code
|
||||||
#define cpu_signal_handler cpu_xtensa_signal_handler
|
#define cpu_signal_handler cpu_xtensa_signal_handler
|
||||||
#define cpu_list xtensa_cpu_list
|
#define cpu_list xtensa_cpu_list
|
||||||
|
|
||||||
CPUXtensaState *cpu_xtensa_init(const char *cpu_model);
|
XtensaCPU *cpu_xtensa_init(const char *cpu_model);
|
||||||
|
|
||||||
|
static inline CPUXtensaState *cpu_init(const char *cpu_model)
|
||||||
|
{
|
||||||
|
XtensaCPU *cpu = cpu_xtensa_init(cpu_model);
|
||||||
|
if (cpu == NULL) {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
return &cpu->env;
|
||||||
|
}
|
||||||
|
|
||||||
void xtensa_translate_init(void);
|
void xtensa_translate_init(void);
|
||||||
int cpu_xtensa_exec(CPUXtensaState *s);
|
int cpu_xtensa_exec(CPUXtensaState *s);
|
||||||
void xtensa_register_core(XtensaConfigList *node);
|
void xtensa_register_core(XtensaConfigList *node);
|
||||||
|
@ -471,7 +482,6 @@ static inline void cpu_get_tb_cpu_state(CPUXtensaState *env, target_ulong *pc,
|
||||||
}
|
}
|
||||||
|
|
||||||
#include "cpu-all.h"
|
#include "cpu-all.h"
|
||||||
#include "cpu-qom.h"
|
|
||||||
#include "exec-all.h"
|
#include "exec-all.h"
|
||||||
|
|
||||||
static inline int cpu_has_work(CPUXtensaState *env)
|
static inline int cpu_has_work(CPUXtensaState *env)
|
||||||
|
|
|
@ -80,7 +80,7 @@ static void breakpoint_handler(CPUXtensaState *env)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CPUXtensaState *cpu_xtensa_init(const char *cpu_model)
|
XtensaCPU *cpu_xtensa_init(const char *cpu_model)
|
||||||
{
|
{
|
||||||
static int tcg_inited;
|
static int tcg_inited;
|
||||||
static int debug_handler_inited;
|
static int debug_handler_inited;
|
||||||
|
@ -116,7 +116,7 @@ CPUXtensaState *cpu_xtensa_init(const char *cpu_model)
|
||||||
|
|
||||||
xtensa_irq_init(env);
|
xtensa_irq_init(env);
|
||||||
qemu_init_vcpu(env);
|
qemu_init_vcpu(env);
|
||||||
return env;
|
return cpu;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue