[GHC] #12799: Itimer.c doesn't compile on iOS non-threaded RTS
#12799: Itimer.c doesn't compile on iOS non-threaded RTS -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: new Priority: high | Milestone: 8.2.1 Component: Runtime | Version: 8.0.1 System | Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: Building GHC Unknown/Multiple | failed Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- The RTS uses the pthread-based `Itimer` implementation due to the bizarrely crippled timer mechanisms provided imposed by that platform. This broke in 999c464da36e925bd4ffea34c94d3a7b3ab0135c which fixed the pthreads implementation to correctly pause when unneeded. In doing this, however, it introduced a dependency on the RTS's synchronization primitives provided by `OSThreads.c` (e.g. `Condition`, `Mutex`). -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12799> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#12799: Itimer.c doesn't compile on iOS non-threaded RTS -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: new Priority: high | Milestone: 8.2.1 Component: Runtime System | Version: 8.0.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Building GHC | Unknown/Multiple failed | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by Ben Gamari <ben@…>): In [changeset:"1732d7ac43ca578deca39ea5a63cbf34f3cd9dd5/ghc" 1732d7ac/ghc]: {{{ #!CommitTicketReference repository="ghc" revision="1732d7ac43ca578deca39ea5a63cbf34f3cd9dd5" Define thread primitives if they're supported. On iOS, we use the pthread-based implementation of Itimer.c even for a non-threaded RTS. Since 999c464, this relies on synchronization primitives like Mutex, so ensure those primitives are defined whenever they are supported, even if !THREADED_RTS. Fixes #12799. Reviewers: erikd, austin, simonmar, bgamari Reviewed By: simonmar, bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2712 GHC Trac Issues: #12799 }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12799#comment:1> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#12799: Itimer.c doesn't compile on iOS non-threaded RTS -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: closed Priority: high | Milestone: 8.2.1 Component: Runtime System | Version: 8.0.1 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Building GHC | Unknown/Multiple failed | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: new => closed * resolution: => fixed -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12799#comment:2> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
participants (1)
-
GHC