From 5b13ee655c4abef8b708319660796229788efcae Mon Sep 17 00:00:00 2001
From: gdkchan <gab.dark.100@gmail.com>
Date: Sun, 28 Oct 2018 22:18:58 -0300
Subject: [PATCH] Fix the rotate right method on ABitUtils (#486)

---
 ChocolArm64/ABitUtils.cs | 18 +++---------------
 1 file changed, 3 insertions(+), 15 deletions(-)

diff --git a/ChocolArm64/ABitUtils.cs b/ChocolArm64/ABitUtils.cs
index dd41623564..a2654c20a3 100644
--- a/ChocolArm64/ABitUtils.cs
+++ b/ChocolArm64/ABitUtils.cs
@@ -2,18 +2,6 @@ namespace ChocolArm64
 {
     static class ABitUtils
     {
-        public static int CountBitsSet(long Value)
-        {
-            int Count = 0;
-
-            for (int Bit = 0; Bit < 64; Bit++)
-            {
-                Count += (int)(Value >> Bit) & 1;
-            }
-
-            return Count;
-        }
-
         public static int HighestBitSet32(int Value)
         {
             for (int Bit = 31; Bit >= 0; Bit--)
@@ -50,12 +38,12 @@ namespace ChocolArm64
 
         public static long RotateRight(long Bits, int Shift, int Size)
         {
-            return (Bits >> Shift) | (Bits << (Size - Shift));
+            return (long)RotateRight((ulong)Bits, Shift, Size);
         }
 
-        public static bool IsPow2(int Value)
+        public static ulong RotateRight(ulong Bits, int Shift, int Size)
         {
-            return Value != 0 && (Value & (Value - 1)) == 0;
+            return (Bits >> Shift) | (Bits << (Size - Shift));
         }
     }
 }