aboutsummaryrefslogtreecommitdiff
path: root/ARMeilleure/Decoders/OpCode32MemMult.cs
diff options
context:
space:
mode:
Diffstat (limited to 'ARMeilleure/Decoders/OpCode32MemMult.cs')
-rw-r--r--ARMeilleure/Decoders/OpCode32MemMult.cs11
1 files changed, 3 insertions, 8 deletions
diff --git a/ARMeilleure/Decoders/OpCode32MemMult.cs b/ARMeilleure/Decoders/OpCode32MemMult.cs
index cc726196..522b96bb 100644
--- a/ARMeilleure/Decoders/OpCode32MemMult.cs
+++ b/ARMeilleure/Decoders/OpCode32MemMult.cs
@@ -1,3 +1,5 @@
+using System.Numerics;
+
namespace ARMeilleure.Decoders
{
class OpCode32MemMult : OpCode32, IOpCode32MemMult
@@ -23,14 +25,7 @@ namespace ARMeilleure.Decoders
RegisterMask = opCode & 0xffff;
- int regsSize = 0;
-
- for (int index = 0; index < 16; index++)
- {
- regsSize += (RegisterMask >> index) & 1;
- }
-
- regsSize *= 4;
+ int regsSize = BitOperations.PopCount((uint)RegisterMask) * 4;
if (!u)
{