reactos/lib/rtl
Amine Khaldi 7c99b62e1f [CMAKE]
- Move generated precompiled headers to binary folders.
- Enable auto image base for ntdll.
- Update the location of generated PCH files for rtl, ntdll and crt.

svn path=/branches/cmake-bringup/; revision=48459
2010-08-04 19:10:43 +00:00
..
amd64
arm
i386 [RTL]: Rtl ByteSwap functions should use intrinsics, isntead of assembly code. This should be merged into trunk! 2010-08-03 01:56:35 +00:00
powerpc
access.c
acl.c
actctx.c
assert.c
atom.c
avlsupp.c
avltable.c
bitmap.c
bootdata.c
CMakeLists.txt [CMAKE] 2010-08-04 19:10:43 +00:00
compress.c
condvar.c
crc32.c
critical.c
dbgbuffer.c
debug.c
dos8dot3.c
encode.c
env.c
error.c
exception.c
generictable.c
handle.c
heap.c
image.c
interlck.c
largeint.c [RTL]: Rtl ByteSwap functions should use intrinsics, isntead of assembly code. This should be merged into trunk! 2010-08-03 01:56:35 +00:00
luid.c
mem.c
memgen.c
message.c
network.c
nls.c
path.c
ppb.c
process.c
propvar.c
qsort.c
random.c
rangelist.c
readme.txt
registry.c
res.c
resource.c
rtl.h
rtlavl.h
rtlp.h
sd.c
security.c
sid.c
slist.c
splaytree.c
sprintf.c
srw.c
swprintf.c
thread.c
time.c
timerqueue.c
timezone.c
unicode.c
unicodeprefix.c
vectoreh.c
version.c
wait.c
workitem.c

RTL restrictions:

ExAllocatePool (and friends) must be used exclusively. RtlAllocateHeap (and friends) must NOT be used! ExAllocatePool (and friends) translate to RtlAllocateHeap (and friends) in ntdll\rtl\libsupp.c.

RtlEnterCriticalSection (and friends) must be used exclusively. ExAcquireFastMutex (and friends) must NOT be used! RtlEnterCriticalSection (and friends) translate to ExAcquireFastMutex (and friends) in ntoskrnl\rtl\libsupp.c. This means that RtlEnterCriticalSection (and friends) can NOT be used recursively in RTL. The reason for choosing RtlEnterCriticalSection (and friends) over ExAcquireFastMutex (and friends) is that the FAST_MUTEX struct is smaller than the RTL_CRITICAL_SECTION struct.