52 references to Subtract
System.Linq (1)
System\Linq\Range.cs (1)
93
ref T oneVectorFromEnd = ref Unsafe.
Subtract
(ref end, Vector<T>.Count);
System.Private.CoreLib (46)
src\libraries\System.Private.CoreLib\src\System\Buffers\Text\Base64Helper\Base64DecoderHelper.cs (1)
558
if (decoder.IsValidPadding(Unsafe.
Subtract
(ref ptrToLastElement, 1)))
src\libraries\System.Private.CoreLib\src\System\Buffers\Text\Base64Url\Base64UrlDecoder.cs (1)
315
if (decoder.IsValidPadding(Unsafe.
Subtract
(ref ptrToLastElement, 1)))
src\libraries\System.Private.CoreLib\src\System\Convert.cs (6)
2504
src = ref Unsafe.
Subtract
(ref src, 32);
2505
dest = ref Unsafe.
Subtract
(ref dest, 32);
2520
src = ref Unsafe.
Subtract
(ref src, 16);
2521
dest = ref Unsafe.
Subtract
(ref dest, 16);
2534
dest = ref Unsafe.
Subtract
(ref dest, 4);
2535
src = ref Unsafe.
Subtract
(ref src, 4);
src\libraries\System.Private.CoreLib\src\System\SearchValues\IndexOfAnyAsciiSearcher.cs (12)
461
currentSearchSpace = ref Unsafe.
Subtract
(ref currentSearchSpace, 2 * Vector256<short>.Count);
482
? ref Unsafe.
Subtract
(ref currentSearchSpace, Vector256<short>.Count)
512
currentSearchSpace = ref Unsafe.
Subtract
(ref currentSearchSpace, 2 * Vector128<short>.Count);
533
? ref Unsafe.
Subtract
(ref currentSearchSpace, Vector128<short>.Count)
737
currentSearchSpace = ref Unsafe.
Subtract
(ref currentSearchSpace, Vector256<byte>.Count);
757
? ref Unsafe.
Subtract
(ref currentSearchSpace, Vector128<byte>.Count)
786
currentSearchSpace = ref Unsafe.
Subtract
(ref currentSearchSpace, Vector128<byte>.Count);
806
? ref Unsafe.
Subtract
(ref currentSearchSpace, sizeof(ulong))
1012
currentSearchSpace = ref Unsafe.
Subtract
(ref currentSearchSpace, Vector256<byte>.Count);
1032
? ref Unsafe.
Subtract
(ref currentSearchSpace, Vector128<byte>.Count)
1064
currentSearchSpace = ref Unsafe.
Subtract
(ref currentSearchSpace, Vector128<byte>.Count);
1084
? ref Unsafe.
Subtract
(ref currentSearchSpace, sizeof(ulong))
src\libraries\System.Private.CoreLib\src\System\SearchValues\ProbabilisticMap.cs (11)
437
ref char lastStartVector = ref Unsafe.
Subtract
(ref searchSpaceEnd, 64);
471
Vector512<byte> result = ContainsMask64CharsAvx512(charMap512, ref searchSpace, ref Unsafe.
Subtract
(ref searchSpaceEnd, Vector512<ushort>.Count));
488
Vector256<byte> result = ContainsMask32CharsAvx512(charMap256, ref searchSpace, ref Unsafe.
Subtract
(ref searchSpaceEnd, Vector256<ushort>.Count));
523
ref char lastStartVectorAvx2 = ref Unsafe.
Subtract
(ref searchSpaceEnd, 32);
556
cur = ref Unsafe.
Subtract
(ref searchSpaceEnd, 16);
563
ref char lastStartVector = ref Unsafe.
Subtract
(ref searchSpaceEnd, 16);
617
cur = ref Unsafe.
Subtract
(ref cur, 64);
648
Vector512<byte> result = ContainsMask64CharsAvx512(charMap512, ref searchSpace, ref Unsafe.
Subtract
(ref cur, Vector512<ushort>.Count));
666
Vector256<byte> result = ContainsMask32CharsAvx512(charMap256, ref searchSpace, ref Unsafe.
Subtract
(ref cur, Vector256<ushort>.Count));
706
cur = ref Unsafe.
Subtract
(ref cur, 32);
748
cur = ref Unsafe.
Subtract
(ref cur, 16);
src\libraries\System.Private.CoreLib\src\System\SpanHelpers.cs (2)
336
ref T last = ref Unsafe.
Subtract
(ref Unsafe.Add(ref first, length), 1);
343
last = ref Unsafe.
Subtract
(ref last, 1);
src\libraries\System.Private.CoreLib\src\System\SpanHelpers.T.cs (3)
3788
ref T oneVectorAwayFromEnd = ref Unsafe.
Subtract
(ref end, Vector512<T>.Count);
3803
ref T oneVectorAwayFromEnd = ref Unsafe.
Subtract
(ref end, Vector256<T>.Count);
3818
ref T oneVectorAwayFromEnd = ref Unsafe.
Subtract
(ref end, Vector128<T>.Count);
src\libraries\System.Private.CoreLib\src\System\Text\Ascii.cs (7)
103
Unsafe.ReadUnaligned<ulong>(ref Unsafe.
Subtract
(ref Unsafe.As<T, byte>(ref Unsafe.Add(ref searchSpace, length)), sizeof(ulong))));
113
Vector128.LoadUnsafe(ref Unsafe.
Subtract
(ref searchSpaceEnd, Vector128<T>.Count)));
123
Vector256.LoadUnsafe(ref Unsafe.
Subtract
(ref searchSpaceEnd, Vector256<T>.Count)));
173
Vector256.LoadUnsafe(ref Unsafe.
Subtract
(ref searchSpaceEnd, 2 * Vector256<T>.Count)) |
174
Vector256.LoadUnsafe(ref Unsafe.
Subtract
(ref searchSpaceEnd, Vector256<T>.Count)));
225
Vector128.LoadUnsafe(ref Unsafe.
Subtract
(ref searchSpaceEnd, 2 * Vector128<T>.Count)) |
226
Vector128.LoadUnsafe(ref Unsafe.
Subtract
(ref searchSpaceEnd, Vector128<T>.Count)));
src\System\Runtime\CompilerServices\RuntimeHelpers.CoreCLR.cs (2)
1074
return ref Unsafe.
Subtract
(ref Unsafe.As<MethodTableAuxiliaryData, DynamicStaticsInfo>(ref this), 1);
1082
return ref Unsafe.
Subtract
(ref Unsafe.As<MethodTableAuxiliaryData, ThreadStaticsInfo>(ref this), 1);
src\System\Runtime\CompilerServices\StaticsHelpers.cs (1)
91
return ref Unsafe.
Subtract
(ref RuntimeHelpers.GetRawData(obj), sizeof(MethodTable*));
System.Runtime.Numerics (5)
System\Number.BigInteger.cs (1)
1243
MemoryMarshal.CreateReadOnlySpan(ref Unsafe.
Subtract
(ref lastWholeBlockStart, i * TParser.DigitsPerBlock), TParser.DigitsPerBlock),
System\Numerics\BigInteger.cs (4)
3692
address = ref Unsafe.
Subtract
(ref address, sizeof(uint));
3717
address = ref Unsafe.
Subtract
(ref address, sizeof(uint));
3734
address = ref Unsafe.
Subtract
(ref address, sizeof(uint));
3849
Debug.Assert(Unsafe.AreSame(ref lastAddress, ref Unsafe.
Subtract
(ref address, sizeof(uint))));