RegisterSet is an efficient set data structure using arrays for managing a set of registers.
Constructor | Description |
|
|
Instance member | Description |
|
|
Full Usage:
this.ArrSize
Returns: int
Modifiers: abstract |
|
|
A backup storage for unknown variables, which does not have a RegisterID. For example, when writing a symbolic executor, we may encounter unknown variables, i.e., fresh symbolic variables. We store them in this set.
|
Full Usage:
this.BitArray
Returns: uint64[]
Modifiers: abstract |
|
|
|
|
|
Full Usage:
this.Intersect(arg1)
Parameters:
RegisterSet
Returns: RegisterSet
Modifiers: abstract |
|
Full Usage:
this.IsEmpty()
Returns: bool
Modifiers: abstract |
|
Full Usage:
this.New(arg1) (arg2)
Parameters:
uint64[]
arg1 : Set<RegisterID>
Returns: RegisterSet
Modifiers: abstract |
Create a new RegisterSet from a given array and a set. This method should be overridden by ISA-specific RegisterSet implementation.
|
|
|
Full Usage:
this.Remove(arg1)
Parameters:
RegisterID
Returns: RegisterSet
Modifiers: abstract |
|
|
|
|
|
Full Usage:
this.Union(arg1)
Parameters:
RegisterSet
Returns: RegisterSet
Modifiers: abstract |
|
Static member | Description |
Full Usage:
RegisterSet.GetBucketAndOffset(idx)
Parameters:
int
Returns: int * int
|
|
Full Usage:
RegisterSet.GetIndex(bucketId) (offset)
Parameters:
int
offset : int
Returns: int
|
|
Full Usage:
RegisterSet.IsBitSet(nth) (v)
Parameters:
int32
v : uint64
Returns: bool
|
|
Full Usage:
RegisterSet.MakeInternalBitArray(size)
Parameters:
int
Returns: 'a[]
|
|