mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-08 02:03:56 -06:00
Allow use of SPE extension by all PowerPC targets,
adding gprh registers to store GPR MSBs when GPRs are 32 bits. Remove not-needed-anymore ppcemb-linux-user target. Keep ppcemb-softmmu target, which provides 1kB pages support and 36 bits physical address space. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3628 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
a73666f656
commit
3cd7d1ddbb
11 changed files with 149 additions and 86 deletions
|
@ -37,7 +37,6 @@ static always_inline uint32_t glue(ld32r, MEMSUFFIX) (target_ulong EA)
|
|||
((tmp & 0x0000FF00) << 8) | ((tmp & 0x000000FF) << 24);
|
||||
}
|
||||
|
||||
#if defined(TARGET_PPC64) || defined(TARGET_PPCEMB)
|
||||
static always_inline uint64_t glue(ld64r, MEMSUFFIX) (target_ulong EA)
|
||||
{
|
||||
uint64_t tmp = glue(ldq, MEMSUFFIX)(EA);
|
||||
|
@ -50,7 +49,6 @@ static always_inline uint64_t glue(ld64r, MEMSUFFIX) (target_ulong EA)
|
|||
((tmp & 0x000000000000FF00ULL) << 40) |
|
||||
((tmp & 0x00000000000000FFULL) << 54);
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(TARGET_PPC64)
|
||||
static always_inline int64_t glue(ldsl, MEMSUFFIX) (target_ulong EA)
|
||||
|
@ -81,7 +79,6 @@ static always_inline void glue(st32r, MEMSUFFIX) (target_ulong EA,
|
|||
glue(stl, MEMSUFFIX)(EA, tmp);
|
||||
}
|
||||
|
||||
#if defined(TARGET_PPC64) || defined(TARGET_PPCEMB)
|
||||
static always_inline void glue(st64r, MEMSUFFIX) (target_ulong EA,
|
||||
uint64_t data)
|
||||
{
|
||||
|
@ -95,7 +92,6 @@ static always_inline void glue(st64r, MEMSUFFIX) (target_ulong EA,
|
|||
((data & 0x00000000000000FFULL) << 56);
|
||||
glue(stq, MEMSUFFIX)(EA, tmp);
|
||||
}
|
||||
#endif
|
||||
|
||||
/*** Integer load ***/
|
||||
#define PPC_LD_OP(name, op) \
|
||||
|
@ -1123,7 +1119,6 @@ void OPPROTO glue(op_vr_stvx_le_64, MEMSUFFIX) (void)
|
|||
#undef VR_DWORD0
|
||||
#undef VR_DWORD1
|
||||
|
||||
#if defined(TARGET_PPCEMB)
|
||||
/* SPE extension */
|
||||
#define _PPC_SPE_LD_OP(name, op) \
|
||||
void OPPROTO glue(glue(op_spe_l, name), MEMSUFFIX) (void) \
|
||||
|
@ -1385,6 +1380,5 @@ uint64_t glue(spe_lwhsplat_le, MEMSUFFIX) (target_ulong EA)
|
|||
return ret;
|
||||
}
|
||||
PPC_SPE_LD_OP(whsplat_le, spe_lwhsplat_le);
|
||||
#endif /* defined(TARGET_PPCEMB) */
|
||||
|
||||
#undef MEMSUFFIX
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue