[commit: ghc] ghc-lwc2: atomicSwitch does not mark the calling SCont's stack as dirty (4270717)

Sivaramakrishnan Krishnamoorthy Chandrasekaran t-sichan at microsoft.com
Sun Mar 3 22:34:43 CET 2013


Repository : http://darcs.haskell.org/ghc.git/

On branch  : ghc-lwc2

http://hackage.haskell.org/trac/ghc/changeset/4270717771c4b8f01b4970cb5de06faefc21ed30

>---------------------------------------------------------------

commit 4270717771c4b8f01b4970cb5de06faefc21ed30
Author: KC Sivaramakrishnan <chandras at cs.purdue.edu>
Date:   Sun Mar 3 16:34:19 2013 -0500

    atomicSwitch does not mark the calling SCont's stack as dirty

>---------------------------------------------------------------

 rts/PrimOps.cmm                 | 5 -----
 tests/Benchmarks/Sieve/Makefile | 2 +-
 2 files changed, 1 insertion(+), 6 deletions(-)

diff --git a/rts/PrimOps.cmm b/rts/PrimOps.cmm
index 6f78bd4..b884c15 100644
--- a/rts/PrimOps.cmm
+++ b/rts/PrimOps.cmm
@@ -711,11 +711,6 @@ again: MAYBE_GC(again);
       StgTSO_trec(CurrentTSO) = NO_TREC;
       StgStack_sp(StgTSO_stackobj(CurrentTSO)) = Sp;
 
-      if (TO_W_(StgStack_dirty(StgTSO_stackobj(CurrentTSO))) == 0) {
-        ccall dirty_STACK (MyCapability () "ptr",
-                                 StgTSO_stackobj(CurrentTSO) "ptr");
-      }
-
       CurrentTSO = tso;
       StgTSO_why_blocked(CurrentTSO) = NotBlocked::I16;
       ("ptr" limit)  = ccall tso_SpLim (tso "ptr");
diff --git a/tests/Benchmarks/Sieve/Makefile b/tests/Benchmarks/Sieve/Makefile
index fb82a68..3b923ce 100644
--- a/tests/Benchmarks/Sieve/Makefile
+++ b/tests/Benchmarks/Sieve/Makefile
@@ -3,6 +3,6 @@ TARGET := sieve-vanilla.bin sieve-lwc.bin
 include ../../config.mk
 
 TOP := ../../../
-GHC_OPTS_EXTRA=-XBangPatterns -O2 -prof -threaded
+GHC_OPTS_EXTRA=-XBangPatterns -O2 -threaded -prof
 
 all: $(TARGET)





More information about the ghc-commits mailing list