- Use inlined functions like MSDDK. Modified: trunk/reactos/include/ndk/rtlfuncs.h _____
Modified: trunk/reactos/include/ndk/rtlfuncs.h --- trunk/reactos/include/ndk/rtlfuncs.h 2005-09-06 05:30:39 UTC (rev 17687) +++ trunk/reactos/include/ndk/rtlfuncs.h 2005-09-06 05:58:48 UTC (rev 17688) @@ -906,6 +906,7 @@
/* * Ansi->Unicode String Functions */ +NTSYSAPI NTSTATUS NTAPI RtlAnsiStringToUnicodeString( @@ -975,6 +976,7 @@ PCWSTR SourceString );
+#ifdef NTOS_MODE_USER NTSYSAPI NTSTATUS NTAPI @@ -983,6 +985,7 @@ IN PCUNICODE_STRING UniSource, IN BOOLEAN AllocateDestinationString ); +#endif
NTSYSAPI NTSTATUS @@ -1869,40 +1872,63 @@ /* * Misc conversion functions */ -/* FIXME: Use inline */ -NTSYSAPI +#if defined(NTOS_MODE_USER) && !defined(NO_RTL_INLINES) +static __inline LARGE_INTEGER -NTAPI -RtlConvertLongToLargeInteger(IN LONG SignedInteger); +NTAPI_INLINE +RtlConvertLongToLargeInteger(LONG SignedInteger) +{ + LARGE_INTEGER Result;
-/* FIXME: Use inline */ -NTSYSAPI + Result.QuadPart = SignedInteger; + return Result; +} + +static __inline LARGE_INTEGER -NTAPI +NTAPI_INLINE RtlEnlargedIntegerMultiply( LONG Multiplicand, - LONG Multiplier -); + LONG Multiplier) +{ + LARGE_INTEGER Product;
-/* FIXME: Use inline */ -NTSYSAPI + Product.QuadPart = (LONGLONG)Multiplicand * (ULONGLONG)Multiplier; + return Product; +} + +static __inline ULONG -NTAPI +NTAPI_INLINE RtlEnlargedUnsignedDivide( - ULARGE_INTEGER Dividend, - ULONG Divisor, - PULONG Remainder -); + IN ULARGE_INTEGER Dividend, + IN ULONG Divisor, + IN PULONG Remainder OPTIONAL) +{ + ULONG Quotient;
-/* FIXME: Use inline */ -NTSYSAPI + Quotient = (ULONG)(Dividend.QuadPart / Divisor); + if (Remainder) { + *Remainder = (ULONG)(Dividend.QuadPart % Divisor); + } + + return Quotient; +} + +static __inline LARGE_INTEGER -NTAPI +NTAPI_INLINE RtlEnlargedUnsignedMultiply( ULONG Multiplicand, - ULONG Multiplier -); + ULONG Multiplier) +{ + LARGE_INTEGER Product;
+ Product.QuadPart = (ULONGLONG)Multiplicand * (ULONGLONG)Multiplier; + return Product; +} +#endif + NTSYSAPI ULONG NTAPI