5 instantiations of ValueBasicBlockPair
ILCompiler.Compiler (5)
Compiler\Dataflow\ArrayValue.cs (1)
101
newValue.IndexValues.Add(kvp.Key, new
ValueBasicBlockPair
(kvp.Value.Value.DeepCopy(), kvp.Value.BasicBlockIndex));
Compiler\Dataflow\MethodBodyScanner.cs (4)
247
valueCollection[index] = new
ValueBasicBlockPair
(value, curBasicBlock);
275
valueCollection[collectionKey] = new
ValueBasicBlockPair
(value, curBasicBlock);
280
valueCollection[collectionKey] = new
ValueBasicBlockPair
(valueToStore, curBasicBlock);
1421
arr.IndexValues[index.Value] = new
ValueBasicBlockPair
(UnknownValue.Instance, curBasicBlock);
29 references to ValueBasicBlockPair
ILCompiler.Compiler (29)
Compiler\Dataflow\ArrayValue.cs (4)
43
IndexValues = new Dictionary<int,
ValueBasicBlockPair
>();
47
public Dictionary<int,
ValueBasicBlockPair
> IndexValues { get; }
51
if (IndexValues.TryGetValue(index, out
var
valuePair))
81
if (!otherArr.IndexValues.TryGetValue(kvp.Key, out
ValueBasicBlockPair
value) || !kvp.Value.Equals(value))
Compiler\Dataflow\MethodBodyScanner.cs (18)
201
private static void ValidateNoReferenceToReference(
ValueBasicBlockPair
?[] locals, MethodIL method, int ilOffset)
205
ValueBasicBlockPair
? localVariable = locals[localVariableIndex];
225
ValueBasicBlockPair
?[] valueCollection,
232
ValueBasicBlockPair
? existingValue = valueCollection[index];
251
Dictionary<KeyType,
ValueBasicBlockPair
> valueCollection,
258
if (valueCollection.TryGetValue(collectionKey, out
ValueBasicBlockPair
existingValue))
348
ValueBasicBlockPair
?[] locals = new
ValueBasicBlockPair
?[methodIL.GetLocals().Length];
923
ValueBasicBlockPair
?[] locals)
927
ValueBasicBlockPair
? localValue = locals[index];
1001
ValueBasicBlockPair
?[] locals,
1012
ValueBasicBlockPair
?[] locals,
1030
protected void StoreInReference(MultiValue target, MultiValue source, MethodIL methodIL, int offset,
ValueBasicBlockPair
?[] locals, int curBasicBlock, ref InterproceduralState ipState, int? parameterIndex)
1138
ValueBasicBlockPair
?[] locals,
1195
ValueBasicBlockPair
?[] locals,
1244
ValueBasicBlockPair
?[] locals,
1278
ValueBasicBlockPair
?[] locals,
1424
else if (arr.IndexValues.TryGetValue(index.Value, out
ValueBasicBlockPair
arrayIndexValue))
Compiler\Dataflow\ValueNode.cs (7)
54
public struct ValueBasicBlockPair : IEquatable<
ValueBasicBlockPair
>
65
public bool Equals(
ValueBasicBlockPair
other) => Value.Equals(other.Value) && BasicBlockIndex.Equals(other.BasicBlockIndex);
67
public override bool Equals(object? obj) => obj is
ValueBasicBlockPair
other && Equals(other);
71
public static bool operator ==(
ValueBasicBlockPair
left,
ValueBasicBlockPair
right) => left.Equals(right);
72
public static bool operator !=(
ValueBasicBlockPair
left,
ValueBasicBlockPair
right) => !(left == right);