Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ _BulkMoveWithWriteBarrier()

static void System.Buffer._BulkMoveWithWriteBarrier ( ref byte destination,
ref byte source,
nuint byteCount )
inlinestaticprivate

Definition at line 44 of file Buffer.cs.

45 {
46 if (Unsafe.AreSame(ref source, ref destination))
47 {
48 return;
49 }
50 if ((nuint)(nint)Unsafe.ByteOffset(ref source, ref destination) >= byteCount)
51 {
52 do
53 {
54 byteCount -= 16384;
56 destination = ref Unsafe.AddByteOffset(ref destination, 16384u);
57 source = ref Unsafe.AddByteOffset(ref source, 16384u);
58 }
59 while (byteCount > 16384);
60 }
61 else
62 {
63 do
64 {
65 byteCount -= 16384;
66 __BulkMoveWithWriteBarrier(ref Unsafe.AddByteOffset(ref destination, byteCount), ref Unsafe.AddByteOffset(ref source, byteCount), 16384u);
67 }
68 while (byteCount > 16384);
69 }
71 }
static void __BulkMoveWithWriteBarrier(ref byte destination, ref byte source, nuint byteCount)

References System.Buffer.__BulkMoveWithWriteBarrier(), System.byteCount, System.destination, and System.source.

Referenced by System.Buffer.BulkMoveWithWriteBarrier().