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:
j_mayer 2007-09-30 00:50:23 +00:00
parent a09d88b86a
commit bfa1e5cf0a
2 changed files with 4 additions and 4 deletions

View file

@ -603,8 +603,8 @@ void ppc_store_asr (CPUPPCState *env, target_ulong value);
target_ulong do_load_sr (CPUPPCState *env, int srnum);
void do_store_sr (CPUPPCState *env, int srnum, target_ulong value);
#endif
uint32_t ppc_load_xer (CPUPPCState *env);
void ppc_store_xer (CPUPPCState *env, uint32_t value);
target_ulong ppc_load_xer (CPUPPCState *env);
void ppc_store_xer (CPUPPCState *env, target_ulong value);
target_ulong do_load_msr (CPUPPCState *env);
void do_store_msr (CPUPPCState *env, target_ulong value);
void ppc_store_msr_32 (CPUPPCState *env, uint32_t value);

View file

@ -1644,7 +1644,7 @@ void do_store_sr (CPUPPCState *env, int srnum, target_ulong value)
}
#endif /* !defined (CONFIG_USER_ONLY) */
uint32_t ppc_load_xer (CPUPPCState *env)
target_ulong ppc_load_xer (CPUPPCState *env)
{
return (xer_so << XER_SO) |
(xer_ov << XER_OV) |
@ -1653,7 +1653,7 @@ uint32_t ppc_load_xer (CPUPPCState *env)
(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_ov = (value >> XER_OV) & 0x01;