mirror of
https://github.com/kanjitalk755/macemu.git
synced 2025-01-12 16:30:44 +00:00
fix vsldoi implementation and testsuite
This commit is contained in:
parent
4d96076c62
commit
7cc49ca739
@ -1559,7 +1559,7 @@ void powerpc_cpu::execute_vector_shift_octet(uint32 opcode)
|
||||
if (i + sh < 16)
|
||||
VD::set_element(vD, i, VA::get_element(vA, i + sh));
|
||||
else
|
||||
VD::set_element(vD, i, VB::get_element(vB, 16 - (i + sh)));
|
||||
VD::set_element(vD, i, VB::get_element(vB, i - (16 - sh)));
|
||||
}
|
||||
}
|
||||
else if (SD > 0) {
|
||||
|
@ -1541,6 +1541,7 @@ const powerpc_test_cpu::vector_value_t powerpc_test_cpu::vector_values[] = {
|
||||
{'w',{0x88,0x88,0x88,0x88,0x77,0x77,0x77,0x77,0x66,0x66,0x66,0x66,0x55,0x55,0x55,0x55}},
|
||||
{'w',{0x99,0x99,0x99,0x99,0xaa,0xaa,0xaa,0xaa,0xbb,0xbb,0xbb,0xbb,0xcc,0xcc,0xcc,0xcc}},
|
||||
{'w',{0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xee,0xee,0xee,0xee,0xdd,0xdd,0xdd,0xdd}},
|
||||
{'w',{0x00,0x11,0x22,0x33,0x44,0x55,0x66,0x77,0x88,0x99,0xaa,0xbb,0xcc,0xdd,0xee,0xff}},
|
||||
{'h',{0x00,0x00,0x11,0x11,0x22,0x22,0x33,0x33,0x44,0x44,0x55,0x55,0x66,0x66,0x77,0x77}},
|
||||
{'h',{0x00,0x01,0x00,0x02,0x00,0x03,0x00,0x04,0x00,0x05,0x00,0x06,0x00,0x07,0x00,0x08}},
|
||||
{'h',{0x00,0x16,0x00,0x15,0x00,0x14,0x00,0x13,0x00,0x12,0x00,0x10,0x00,0x10,0x00,0x09}},
|
||||
@ -1853,7 +1854,7 @@ void powerpc_test_cpu::test_vector_arith(void)
|
||||
{ "vsel", 'b', 0 , _VA(04,RD,RA,RB,RC,42),{ vD, vA, vB, vC } },
|
||||
{ "vsl", 'b', 'B', _VX(04,RD,RA,RB, 452), { vD, vA, vB } },
|
||||
{ "vslb", 'b', 0 , _VX(04,RD,RA,RB, 260), { vD, vA, vB } },
|
||||
{ "vsldoi", 'b', 0 , _VA(04,RD,RA,RB,00,44),{ vD, vA, vB, vI } },
|
||||
{ "vsldoi", 'b', 0 , _VA(04,RD,RA,RB,00,44),{ vD, vA, vB, vN } },
|
||||
{ "vslh", 'h', 0 , _VX(04,RD,RA,RB, 324), { vD, vA, vB } },
|
||||
{ "vslo", 'b', 0 , _VX(04,RD,RA,RB,1036), { vD, vA, vB } },
|
||||
{ "vslw", 'w', 0 , _VX(04,RD,RA,RB, 388), { vD, vA, vB } },
|
||||
|
Loading…
x
Reference in New Issue
Block a user