3 instantiations of ArrayValue
ILCompiler.Compiler (3)
Compiler\Dataflow\ArrayValue.cs (3)
25result = MultiValueLattice.Meet(result, new MultiValue(new ArrayValue(sizeValue, elementType))); 33return new ArrayValue(new ConstIntValue(size), elementType); 89var newValue = new ArrayValue(Size.DeepCopy(), ElementType);
23 references to ArrayValue
ILCompiler.Compiler (23)
Compiler\Dataflow\ArrayValue.cs (4)
31public static ArrayValue Create(int size, TypeDesc elementType) 66public bool Equals(ArrayValue? otherArr) 89var newValue = new ArrayValue(Size.DeepCopy(), ElementType); 98System.Diagnostics.Debug.Assert(v is not ArrayValue);
Compiler\Dataflow\FlowAnnotations.cs (1)
1016"EmptyTypes" when field.OwningType.IsTypeOf(ILLink.Shared.TypeSystemProxy.WellKnownType.System_Type) => ArrayValue.Create(0, field.OwningType),
Compiler\Dataflow\HandleCallAction.cs (2)
228AddReturnValue(ArrayValue.Create(0, calledMethod.Method.Instantiation[0])); 581if (typesValue is not ArrayValue array)
Compiler\Dataflow\MethodBodyScanner.cs (6)
631currentStack.Push(new StackSlot(ArrayValue.Create(count.Value, arrayElementType))); 1313if (v is ArrayValue arr) 1335private static void MarkArrayValuesAsUnknown(ArrayValue arrValue, int curBasicBlock) 1358if (array is ArrayValue arrValue) 1367StoreMethodLocalValue(arrValue.IndexValues, ArrayValue.SanitizeArrayElementValue(valueToStore.Value), indexToStoreAtInt.Value, curBasicBlock, MaxTrackedArrayValues); 1402if (arrayToLoadFrom.Value.AsSingleValue() is not ArrayValue arr)
src\runtime\src\tools\illink\src\ILLink.Shared\TrimAnalysis\ArrayValue.cs (2)
39if (v is ArrayValue) 46return new(input.AsEnumerable().Select(v => v is ArrayValue ? UnknownValue.Instance : v));
src\runtime\src\tools\illink\src\ILLink.Shared\TrimAnalysis\HandleCallAction.cs (8)
983bool hasTypeArguments = (argumentValues[2].AsSingleValue() as ArrayValue)?.Size.AsConstInt() != 0; 1145if ((argumentValue as ArrayValue)?.TryGetValueByIndex(0, out var underlyingMultiValue) == true) 13241 => (argumentValues[0].AsSingleValue() as ArrayValue)?.Size.AsConstInt(), 13252 => (argumentValues[1].AsSingleValue() as ArrayValue)?.Size.AsConstInt(), 13264 => (argumentValues[2].AsSingleValue() as ArrayValue)?.Size.AsConstInt(), 13275 => (argumentValues[3].AsSingleValue() as ArrayValue)?.Size.AsConstInt(), 1431if (argumentValues[argsParam].AsSingleValue() is ArrayValue arrayValue && 1679if (typesValue is not ArrayValue array)