On Wed, Jul 1, 2015 at 3:14 PM, Jakub Zalewski <[email protected]> wrote:
> Dear all, > > I am working on porting GHC to [native client]( > https://developer.chrome.com/native-client) and I am currently trying to > figure out how to port the RTS. > > On POSIX systems RTS seems to depend on two POSIX signals: timer signal > and interrupt signal; while native client has very limited POSIX signal > support --- for instance it does not define *siginfo_t* (which is > referenced in the base package). > > So far, I know how to deal with the dependency on the timer signal, as > while browsing the source code in rts/posix/Itimer.c, I noticed that on iOS > the timer is not using POSIX signals to implement the timer signal. > > I wanted to ask if there are any other POSIX signal dependencies in the > RTS, and would it safe to disable any signal handling in the RTS if I know > that there will be no interrupt signals sent to the RTS? > I don't know the answer to your question, but for an additional data point you might look at the HalVM: https://github.com/galoisinc/halvm For the specific case of timers it may not be helpful (for all I know it uses some xen magic to get a timer interrupt), but it should be similar to native-client support in that the HalVM provides the RTS with a stripped down libc. Jason
_______________________________________________ ghc-devs mailing list [email protected] http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
