XER is to be treated as a 64 bits register on 64 bits implementations,
according to the PowerPC 2.04 specification. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3279 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
a09d88b86a
commit
bfa1e5cf0a
|
@ -603,8 +603,8 @@ void ppc_store_asr (CPUPPCState *env, target_ulong value);
|
||||||
target_ulong do_load_sr (CPUPPCState *env, int srnum);
|
target_ulong do_load_sr (CPUPPCState *env, int srnum);
|
||||||
void do_store_sr (CPUPPCState *env, int srnum, target_ulong value);
|
void do_store_sr (CPUPPCState *env, int srnum, target_ulong value);
|
||||||
#endif
|
#endif
|
||||||
uint32_t ppc_load_xer (CPUPPCState *env);
|
target_ulong ppc_load_xer (CPUPPCState *env);
|
||||||
void ppc_store_xer (CPUPPCState *env, uint32_t value);
|
void ppc_store_xer (CPUPPCState *env, target_ulong value);
|
||||||
target_ulong do_load_msr (CPUPPCState *env);
|
target_ulong do_load_msr (CPUPPCState *env);
|
||||||
void do_store_msr (CPUPPCState *env, target_ulong value);
|
void do_store_msr (CPUPPCState *env, target_ulong value);
|
||||||
void ppc_store_msr_32 (CPUPPCState *env, uint32_t value);
|
void ppc_store_msr_32 (CPUPPCState *env, uint32_t value);
|
||||||
|
|
|
@ -1644,7 +1644,7 @@ void do_store_sr (CPUPPCState *env, int srnum, target_ulong value)
|
||||||
}
|
}
|
||||||
#endif /* !defined (CONFIG_USER_ONLY) */
|
#endif /* !defined (CONFIG_USER_ONLY) */
|
||||||
|
|
||||||
uint32_t ppc_load_xer (CPUPPCState *env)
|
target_ulong ppc_load_xer (CPUPPCState *env)
|
||||||
{
|
{
|
||||||
return (xer_so << XER_SO) |
|
return (xer_so << XER_SO) |
|
||||||
(xer_ov << XER_OV) |
|
(xer_ov << XER_OV) |
|
||||||
|
@ -1653,7 +1653,7 @@ uint32_t ppc_load_xer (CPUPPCState *env)
|
||||||
(xer_cmp << XER_CMP);
|
(xer_cmp << XER_CMP);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ppc_store_xer (CPUPPCState *env, uint32_t value)
|
void ppc_store_xer (CPUPPCState *env, target_ulong value)
|
||||||
{
|
{
|
||||||
xer_so = (value >> XER_SO) & 0x01;
|
xer_so = (value >> XER_SO) & 0x01;
|
||||||
xer_ov = (value >> XER_OV) & 0x01;
|
xer_ov = (value >> XER_OV) & 0x01;
|
||||||
|
|
Loading…
Reference in a new issue