Opened 13 years ago
Closed 13 years ago
#37 closed enhancement (fixed)
Implement MAP_32BIT
| Reported by: | john | Owned by: | john |
|---|---|---|---|
| Priority: | major | Component: | kernel |
| Version: | Keywords: | vm | |
| Cc: | Blocked By: | ||
| Blocking: | Parent Tickets: | ||
| P4 Branch: | GIT Branch: | ||
| FreeBSD PR: | Due Date: |
Description
On 14 Aug 2013, at 13:21, John Baldwin <jhb@freebsd.org> wrote: > On Wednesday, August 14, 2013 4:23:11 am David Chisnall wrote: >> On 13 Aug 2013, at 21:57, Jilles Tjoelker <jilles@stack.nl> wrote: >> >>> Given that JIT is for performance and larger addresses increase code >>> size and register pressure, the mmap() flag is probably useful. >>> Alternatively, all the JITted code could be placed in one block and use >>> relative addressing. >> >> This would be a good thing to have in for 10.0, as the LLVM 3.4 JIT will >> require it unless someone wants to contribute support for the large code >> model... > > So you just need a flag to cap the virtual address at 2GB? Do you think we > need an arbitrary address flag for this, or is a hardcoded 2GB flag ok? > > Linux has a MAP_32BIT that does what you want I think. Yes, MAP_32BIT is used on Linux to solve this. David
Change History (3)
comment:1 Changed 13 years ago by john
- Owner set to john
- Status changed from new to accepted
comment:2 Changed 13 years ago by john
comment:3 Changed 13 years ago by john
- Resolution set to fixed
- Status changed from accepted to closed
Changes committed in r255426
Note: See
TracTickets for help on using
tickets.

Sent a simple proof of concept to Alan that he ok'd, now need to clean it up and test it.