Line
Link Here
|
0 |
-- a/js/src/jit/ProcessExecutableMemory.cpp |
0 |
++ b/js/src/jit/ProcessExecutableMemory.cpp |
Lines 248-254
static void* ComputeRandomAllocationAddress() {
Link Here
|
248 |
// x64 CPUs have a 48-bit address space and on some platforms the OS will |
248 |
// x64 CPUs have a 48-bit address space and on some platforms the OS will |
249 |
// give us access to 47 bits, so to be safe we right shift by 18 to leave |
249 |
// give us access to 47 bits, so to be safe we right shift by 18 to leave |
250 |
// 46 bits. |
250 |
// 46 bits. |
|
|
251 |
#ifdef __ia64__ |
252 |
rand >>= 20; // upper 20 mits are reserved for virtual memory type tag |
253 |
#else |
251 |
rand >>= 18; |
254 |
rand >>= 18; |
|
|
255 |
#endif |
252 |
#else |
256 |
#else |
253 |
// On 32-bit, right shift by 34 to leave 30 bits, range [0, 1GiB). Then add |
257 |
// On 32-bit, right shift by 34 to leave 30 bits, range [0, 1GiB). Then add |
254 |
// 512MiB to get range [512MiB, 1.5GiB), or [0x20000000, 0x60000000). This |
258 |
// 512MiB to get range [512MiB, 1.5GiB), or [0x20000000, 0x60000000). This |