-
Rémi Bernon authored
The zero_bits parameter doesn't behave as expected, and some 64bit code use it to allocate memory in the lower 32bit address space. The expected full behaviour is: * zero_bits == 0: no constraint on address range * 0 < zero_bits <= 15: returned address should have as many upper bits set to 0, starting at bit 31. In 64bit mode, upper 32bits should all be 0 as well. * 15 < zero_bits <= 31: unsure, but probably same as zero_bits == 15. * zero_bits > 31: (64bit/WoW64 only) zero_bits behaves as a bitmask, as if it was set to the number of leading 0 in the bitmask, works in the whole 64bit range. Signed-off-by: Rémi Bernon <rbernon@codeweavers.com> Signed-off-by: Huw Davies <huw@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
8878492d
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
Makefile.in | ||
atom.c | ||
change.c | ||
directory.c | ||
env.c | ||
error.c | ||
exception.c | ||
file.c | ||
generated.c | ||
info.c | ||
large_int.c | ||
ntdll_test.h | ||
om.c | ||
path.c | ||
pipe.c | ||
port.c | ||
reg.c | ||
rtl.c | ||
rtlbitmap.c | ||
rtlstr.c | ||
string.c | ||
threadpool.c | ||
time.c | ||
virtual.c |