diff options
author | Tom Musta <tommusta@gmail.com> | 2014-08-12 08:45:03 -0500 |
---|---|---|
committer | Alexander Graf <agraf@suse.de> | 2014-09-08 12:50:49 +0200 |
commit | a7f23d0f8bfbe76864a6427c0e21fe794ab9b7ef (patch) | |
tree | ea0c224ffcde6644324d901cb3088ea67cb15142 /blockdev.c | |
parent | 9674a356267ee9cf8230775f88c90c299a4affc9 (diff) |
target-ppc: Bug Fix: rlwinm
The rlwinm specification includes the ROTL32 operation, which is defined
to be a left rotation of two copies of the least significant 32 bits of
the source GPR.
The current implementation is incorrect on 64-bit implementations in that
it rotates a single copy of the least significant 32 bits, padding with
zeroes in the most significant bits.
Fix the code to properly implement this ROTL32 operation.
Example:
R3 = F7487D82EC6F75DF
rlwinm 3,3,5,12,4
R3 expected : 8DEEBBFD880EBBFD
R3 actual : 00000000880EBBFD (without this fix)
Signed-off-by: Tom Musta <tommusta@gmail.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'blockdev.c')
0 files changed, 0 insertions, 0 deletions