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

◆ LeadingZeroCount() [2/2]

static int System.Numerics.BitOperations.LeadingZeroCount ( ulong value)
inlinestatic

Definition at line 153 of file BitOperations.cs.

154 {
156 {
157 return (int)Lzcnt.X64.LeadingZeroCount(value);
158 }
160 {
161 }
163 {
164 if (value != 0L)
165 {
166 return 0x3F ^ (int)X86Base.X64.BitScanReverse(value);
167 }
168 return 64;
169 }
170 uint num = (uint)(value >> 32);
171 if (num == 0)
172 {
173 return 32 + LeadingZeroCount((uint)value);
174 }
175 return LeadingZeroCount(num);
176 }
static int LeadingZeroCount(uint value)
static ulong LeadingZeroCount(ulong value)
Definition Lzcnt.cs:14
static ulong BitScanReverse(ulong value)
Definition X86Base.cs:19

References System.Runtime.Intrinsics.X86.X86Base.X64.BitScanReverse(), System.Runtime.Intrinsics.Arm.ArmBase.Arm64.IsSupported, System.Runtime.Intrinsics.X86.Lzcnt.X64.IsSupported, System.Runtime.Intrinsics.X86.X86Base.X64.IsSupported, System.L, System.Numerics.BitOperations.LeadingZeroCount(), System.Runtime.Intrinsics.X86.Lzcnt.X64.LeadingZeroCount(), and System.value.