aboutsummaryrefslogtreecommitdiff
path: root/ARMeilleure/Translation/Cache/JumpTableEntryAllocator.cs
diff options
context:
space:
mode:
Diffstat (limited to 'ARMeilleure/Translation/Cache/JumpTableEntryAllocator.cs')
-rw-r--r--ARMeilleure/Translation/Cache/JumpTableEntryAllocator.cs72
1 files changed, 0 insertions, 72 deletions
diff --git a/ARMeilleure/Translation/Cache/JumpTableEntryAllocator.cs b/ARMeilleure/Translation/Cache/JumpTableEntryAllocator.cs
deleted file mode 100644
index ae2c075e..00000000
--- a/ARMeilleure/Translation/Cache/JumpTableEntryAllocator.cs
+++ /dev/null
@@ -1,72 +0,0 @@
-using ARMeilleure.Common;
-using System.Collections.Generic;
-using System.Diagnostics;
-
-namespace ARMeilleure.Translation.Cache
-{
- class JumpTableEntryAllocator
- {
- private readonly BitMap _bitmap;
- private int _freeHint;
-
- public JumpTableEntryAllocator()
- {
- _bitmap = new BitMap();
- }
-
- public bool EntryIsValid(int entryIndex)
- {
- lock (_bitmap)
- {
- return _bitmap.IsSet(entryIndex);
- }
- }
-
- public void SetEntry(int entryIndex)
- {
- lock (_bitmap)
- {
- _bitmap.Set(entryIndex);
- }
- }
-
- public int AllocateEntry()
- {
- lock (_bitmap)
- {
- int entryIndex;
-
- if (!_bitmap.IsSet(_freeHint))
- {
- entryIndex = _freeHint;
- }
- else
- {
- entryIndex = _bitmap.FindFirstUnset();
- }
-
- _freeHint = entryIndex + 1;
-
- bool wasSet = _bitmap.Set(entryIndex);
- Debug.Assert(wasSet);
-
- return entryIndex;
- }
- }
-
- public void FreeEntry(int entryIndex)
- {
- lock (_bitmap)
- {
- _bitmap.Clear(entryIndex);
-
- _freeHint = entryIndex;
- }
- }
-
- public IEnumerable<int> GetEntries()
- {
- return _bitmap;
- }
- }
-}