[NDK][XDK]: Add some forgotten RTL bitmap functions.

svn path=/trunk/; revision=74242
This commit is contained in:
Hermès Bélusca-Maïto 2017-03-29 16:36:13 +00:00
parent 7fc8752aed
commit 73dff0f128
2 changed files with 36 additions and 6 deletions

View file

@ -3227,6 +3227,14 @@ RtlClearAllBits(
_In_ PRTL_BITMAP BitMapHeader
);
NTSYSAPI
VOID
NTAPI
RtlClearBit(
_In_ PRTL_BITMAP BitMapHeader,
_In_range_(<, BitMapHeader->SizeOfBitMap) ULONG BitNumber
);
NTSYSAPI
VOID
NTAPI
@ -3288,6 +3296,14 @@ RtlFindLeastSignificantBit(
_In_ ULONGLONG Value
);
NTSYSAPI
ULONG
NTAPI
RtlFindLongestRunClear(
_In_ PRTL_BITMAP BitMapHeader,
_Out_ PULONG StartingIndex
);
NTSYSAPI
CCHAR
NTAPI
@ -3391,6 +3407,20 @@ RtlTestBit(
_In_range_(<, BitMapHeader->SizeOfBitMap) ULONG BitNumber
);
#if defined(_M_AMD64)
_Must_inspect_result_
FORCEINLINE
BOOLEAN
RtlCheckBit(
_In_ PRTL_BITMAP BitMapHeader,
_In_range_(<, BitMapHeader->SizeOfBitMap) ULONG BitPosition)
{
return BitTest64((LONG64 CONST*)BitMapHeader->Buffer, (LONG64)BitPosition);
}
#else
#define RtlCheckBit(BMH,BP) (((((PLONG)(BMH)->Buffer)[(BP)/32]) >> ((BP)%32)) & 0x1)
#endif /* defined(_M_AMD64) */
//
// Timer Functions
//

View file

@ -948,6 +948,12 @@ RtlTimeToTimeFields(
_In_ PLARGE_INTEGER Time,
_Out_ PTIME_FIELDS TimeFields);
NTSYSAPI
USHORT
FASTCALL
RtlUshortByteSwap(
_In_ USHORT Source);
NTSYSAPI
ULONG
FASTCALL
@ -1019,12 +1025,6 @@ NTAPI
RtlUpcaseUnicodeChar(
_In_ WCHAR SourceCharacter);
NTSYSAPI
USHORT
FASTCALL
RtlUshortByteSwap(
_In_ USHORT Source);
_IRQL_requires_max_(APC_LEVEL)
_Must_inspect_result_
NTSYSAPI