diff options
author | aurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162> | 2008-10-27 22:50:22 +0000 |
---|---|---|
committer | aurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162> | 2008-10-27 22:50:22 +0000 |
commit | d03ef5116bb436437aef6054a284ebfd922612a2 (patch) | |
tree | d8d4f1956a4368efa13088ac9526504a24359000 /target-ppc/op.c | |
parent | f4b147f6701f6f5127b70b82f41757a52dfa4aae (diff) |
target-ppc: convert rotation instructions to TCG
Also fix rlwimi and rldimi for corner cases.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5555 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-ppc/op.c')
-rw-r--r-- | target-ppc/op.c | 56 |
1 files changed, 0 insertions, 56 deletions
diff --git a/target-ppc/op.c b/target-ppc/op.c index 2271ed0d9f..bcdb11d003 100644 --- a/target-ppc/op.c +++ b/target-ppc/op.c @@ -752,63 +752,7 @@ void OPPROTO op_subfzeo_64 (void) } #endif -/*** Integer logical ***/ -/* or */ -void OPPROTO op_or (void) -{ - T0 |= T1; - RETURN(); -} - -/*** Integer rotate ***/ -void OPPROTO op_rotl32_T0_T1 (void) -{ - T0 = rotl32(T0, T1 & 0x1F); - RETURN(); -} - -void OPPROTO op_rotli32_T0 (void) -{ - T0 = rotl32(T0, PARAM1); - RETURN(); -} - -#if defined(TARGET_PPC64) -void OPPROTO op_rotl64_T0_T1 (void) -{ - T0 = rotl64(T0, T1 & 0x3F); - RETURN(); -} - -void OPPROTO op_rotli64_T0 (void) -{ - T0 = rotl64(T0, PARAM1); - RETURN(); -} -#endif - /*** Integer shift ***/ -/* shift right word */ -void OPPROTO op_sli_T0 (void) -{ - T0 = T0 << PARAM1; - RETURN(); -} - -void OPPROTO op_srli_T0 (void) -{ - T0 = (uint32_t)T0 >> PARAM1; - RETURN(); -} - -#if defined(TARGET_PPC64) -void OPPROTO op_srli_T0_64 (void) -{ - T0 = (uint64_t)T0 >> PARAM1; - RETURN(); -} -#endif - void OPPROTO op_srli_T1 (void) { T1 = (uint32_t)T1 >> PARAM1; |