/*
* PowerPC emulation micro-operations for qemu.
- *
+ *
* Copyright (c) 2003-2007 Jocelyn Mayer
*
* This library is free software; you can redistribute it and/or
/* General purpose registers moves */
void OPPROTO glue(op_load_gpr_T0_gpr, REG) (void)
{
- T0 = regs->gpr[REG];
+ T0 = env->gpr[REG];
RETURN();
}
void OPPROTO glue(op_load_gpr_T1_gpr, REG) (void)
{
- T1 = regs->gpr[REG];
+ T1 = env->gpr[REG];
RETURN();
}
void OPPROTO glue(op_load_gpr_T2_gpr, REG) (void)
{
- T2 = regs->gpr[REG];
+ T2 = env->gpr[REG];
RETURN();
}
void OPPROTO glue(op_store_T0_gpr_gpr, REG) (void)
{
- regs->gpr[REG] = T0;
+ env->gpr[REG] = T0;
RETURN();
}
void OPPROTO glue(op_store_T1_gpr_gpr, REG) (void)
{
- regs->gpr[REG] = T1;
+ env->gpr[REG] = T1;
RETURN();
}
#if 0 // unused
void OPPROTO glue(op_store_T2_gpr_gpr, REG) (void)
{
- regs->gpr[REG] = T2;
+ env->gpr[REG] = T2;
RETURN();
}
#endif
#if defined(TARGET_PPCEMB)
void OPPROTO glue(op_load_gpr64_T0_gpr, REG) (void)
{
- T0_64 = regs->gpr[REG];
+ T0_64 = env->gpr[REG];
RETURN();
}
void OPPROTO glue(op_load_gpr64_T1_gpr, REG) (void)
{
- T1_64 = regs->gpr[REG];
+ T1_64 = env->gpr[REG];
RETURN();
}
#if 0 // unused
void OPPROTO glue(op_load_gpr64_T2_gpr, REG) (void)
{
- T2_64 = regs->gpr[REG];
+ T2_64 = env->gpr[REG];
RETURN();
}
#endif
void OPPROTO glue(op_store_T0_gpr64_gpr, REG) (void)
{
- regs->gpr[REG] = T0_64;
+ env->gpr[REG] = T0_64;
RETURN();
}
void OPPROTO glue(op_store_T1_gpr64_gpr, REG) (void)
{
- regs->gpr[REG] = T1_64;
+ env->gpr[REG] = T1_64;
RETURN();
}
#if 0 // unused
void OPPROTO glue(op_store_T2_gpr64_gpr, REG) (void)
{
- regs->gpr[REG] = T2_64;
+ env->gpr[REG] = T2_64;
RETURN();
}
#endif
/* Condition register moves */
void OPPROTO glue(op_load_crf_T0_crf, REG) (void)
{
- T0 = regs->crf[REG];
+ T0 = env->crf[REG];
RETURN();
}
void OPPROTO glue(op_load_crf_T1_crf, REG) (void)
{
- T1 = regs->crf[REG];
+ T1 = env->crf[REG];
RETURN();
}
void OPPROTO glue(op_store_T0_crf_crf, REG) (void)
{
- regs->crf[REG] = T0;
+ env->crf[REG] = T0;
RETURN();
}
void OPPROTO glue(op_store_T1_crf_crf, REG) (void)
{
- regs->crf[REG] = T1;
+ env->crf[REG] = T1;
RETURN();
}
/* Floating point condition and status register moves */
void OPPROTO glue(op_load_fpscr_T0_fpscr, REG) (void)
{
- T0 = regs->fpscr[REG];
+ T0 = env->fpscr[REG];
RETURN();
}
#if REG == 0
void OPPROTO glue(op_store_T0_fpscr_fpscr, REG) (void)
{
- regs->fpscr[REG] = (regs->fpscr[REG] & 0x9) | (T0 & ~0x9);
+ env->fpscr[REG] = (env->fpscr[REG] & 0x9) | (T0 & ~0x9);
RETURN();
}
void OPPROTO glue(op_clear_fpscr_fpscr, REG) (void)
{
- regs->fpscr[REG] = (regs->fpscr[REG] & 0x9);
+ env->fpscr[REG] = (env->fpscr[REG] & 0x9);
RETURN();
}
#else
void OPPROTO glue(op_store_T0_fpscr_fpscr, REG) (void)
{
- regs->fpscr[REG] = T0;
+ env->fpscr[REG] = T0;
RETURN();
}
void OPPROTO glue(op_clear_fpscr_fpscr, REG) (void)
{
- regs->fpscr[REG] = 0x0;
+ env->fpscr[REG] = 0x0;
RETURN();
}
#endif