[commit: ghc] master: Fixed for unregisterised Windows builds (45740c2)

Simon Marlow marlowsd at gmail.com
Tue Mar 20 12:38:03 CET 2012


On 18/03/2012 17:53, Ian Lynagh wrote:
> Repository : ssh://darcs.haskell.org//srv/darcs/ghc
>
> On branch  : master
>
> http://hackage.haskell.org/trac/ghc/changeset/45740c29b24ea78b885d3b9f737a8bdc00265f7c
>
>> ---------------------------------------------------------------
>
> commit 45740c29b24ea78b885d3b9f737a8bdc00265f7c
> Author: Ian Lynagh<igloo at earth.li>
> Date:   Sun Mar 18 12:19:47 2012 +0000
>
>      Fixed for unregisterised Windows builds
>
>> ---------------------------------------------------------------
>
>   rts/PrimOps.cmm |    2 +-
>   rts/Schedule.c  |    2 +-
>   rts/ghc.mk      |    2 ++
>   3 files changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/rts/PrimOps.cmm b/rts/PrimOps.cmm
> index 4cb3b8d..e368ed1 100644
> --- a/rts/PrimOps.cmm
> +++ b/rts/PrimOps.cmm
> @@ -35,7 +35,7 @@ import base_ControlziExceptionziBase_nestedAtomically_closure;
>   import EnterCriticalSection;
>   import LeaveCriticalSection;
>   import ghczmprim_GHCziTypes_False_closure;
> -#if !defined(mingw32_HOST_OS)
> +#if defined(GhcUnregisterised) || !defined(mingw32_HOST_OS)
>   import sm_mutex;
>   #endif

I'm a bit suspicious about tests for GhcUnregisterised.  Normally we 
want to test for something more specific, like TABLES_NEXT_TO_CODE or 
USE_MINIINTERPRETER, so that these options can be used independently. 
That's why we don't have a #define for GhcUnregisterised.

I *think* in these cases you want USE_MINIINTERPRETER.

Cheers,
	Simon



> diff --git a/rts/Schedule.c b/rts/Schedule.c
> index c22b02d..aa22e06 100644
> --- a/rts/Schedule.c
> +++ b/rts/Schedule.c
> @@ -611,7 +611,7 @@ schedulePreLoop(void)
>   {
>     // initialisation for scheduler - what cannot go into initScheduler()
>
> -#if defined(mingw32_HOST_OS)&&  defined(i386_HOST_ARCH)
> +#if defined(mingw32_HOST_OS)&&  defined(i386_HOST_ARCH)&&  !defined(GhcUnregisterised)
>       win32AllocStack();
>   #endif
>   }
> diff --git a/rts/ghc.mk b/rts/ghc.mk
> index 9eb933e..e5fff56 100644
> --- a/rts/ghc.mk
> +++ b/rts/ghc.mk
> @@ -313,6 +313,8 @@ rts/RtsUtils_CC_OPTS += -DGhcEnableTablesNextToCode=\"$(GhcEnableTablesNextToCod
>
>   ifeq "$(GhcUnregisterised)" "YES"
>   rts/HeapStackCheck_HC_OPTS += -DGhcUnregisterised=1
> +rts/PrimOps_HC_OPTS += -DGhcUnregisterised=1
> +rts/Schedule_CC_OPTS += -DGhcUnregisterised=1
>   endif
>
>   # Compile various performance-critical pieces *without* -fPIC -dynamic
>
>
>
> _______________________________________________
> Cvs-ghc mailing list
> Cvs-ghc at haskell.org
> http://www.haskell.org/mailman/listinfo/cvs-ghc




More information about the Cvs-ghc mailing list