Previous 199869 Revisions Next

r32482 Wednesday 1st October, 2014 at 14:13:21 UTC by Ville Linde
powerpc: fix unaligned 64-bit accesses (nw)
[src/emu/cpu/powerpc]ppcdrc.c

trunk/src/emu/cpu/powerpc/ppcdrc.c
r32481r32482
12971297            UML_MOV(block, mem(&m_core->tempaddr), I0);                      // mov     [tempaddr],i0
12981298            UML_DMOV(block, mem(&m_core->tempdata.d), I1);                   // dmov    [tempdata],i1
12991299            UML_DSHR(block, I1, I1, 32);                                            // dshr    i1,i1,32
1300            UML_AND(block, I0, I0, ~7);                                             // and     i0,i0,~7
13001301            UML_DMOV(block, I2, U64(0x00000000ffffffff));                           // dmov    i2,0x00000000ffffffff
13011302            UML_CALLH(block, *masked);                                              // callh   masked
13021303            UML_ADD(block, I0, mem(&m_core->tempaddr), 4);                   // add     i0,[tempaddr],4
r32481r32482
13081309         {
13091310            UML_MOV(block, mem(&m_core->tempaddr), I0);                      // mov     [tempaddr],i0
13101311            UML_DMOV(block, I2, U64(0x00000000ffffffff));                           // mov     i2,0x00000000ffffffff
1312            UML_AND(block, I0, I0, ~7);                                             // and     i0,i0,~7
13111313            UML_CALLH(block, *masked);                                              // callh   masked
13121314            UML_DSHL(block, mem(&m_core->tempdata.d), I0, 32);               // dshl    [tempdata],i0,32
13131315            UML_ADD(block, I0, mem(&m_core->tempaddr), 4);                   // add     i0,[tempaddr],4

Previous 199869 Revisions Next


© 1997-2024 The MAME Team