mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 15:53:54 -06:00
Switch the standard multiplication instructions to TCG.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4740 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
2b0233abfb
commit
214c465f86
5 changed files with 166 additions and 94 deletions
|
@ -192,16 +192,6 @@ static always_inline void set_HI_LOT0 (uint64_t HILO)
|
|||
env->HI[env->current_tc][0] = (int32_t)(HILO >> 32);
|
||||
}
|
||||
|
||||
void do_mult (void)
|
||||
{
|
||||
set_HILO((int64_t)(int32_t)T0 * (int64_t)(int32_t)T1);
|
||||
}
|
||||
|
||||
void do_multu (void)
|
||||
{
|
||||
set_HILO((uint64_t)(uint32_t)T0 * (uint64_t)(uint32_t)T1);
|
||||
}
|
||||
|
||||
void do_madd (void)
|
||||
{
|
||||
int64_t tmp;
|
||||
|
@ -306,6 +296,18 @@ void do_mulshiu (void)
|
|||
}
|
||||
#endif /* TARGET_LONG_BITS > HOST_LONG_BITS */
|
||||
|
||||
#ifdef TARGET_MIPS64
|
||||
void do_dmult (void)
|
||||
{
|
||||
muls64(&(env->LO[env->current_tc][0]), &(env->HI[env->current_tc][0]), T0, T1);
|
||||
}
|
||||
|
||||
void do_dmultu (void)
|
||||
{
|
||||
mulu64(&(env->LO[env->current_tc][0]), &(env->HI[env->current_tc][0]), T0, T1);
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_USER_ONLY
|
||||
void do_mfc0_random (void)
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue