summaryrefslogtreecommitdiff
path: root/compiler/cmm
diff options
context:
space:
mode:
authorSimon Marlow <marlowsd@gmail.com>2014-05-04 20:27:42 +0100
committerSimon Marlow <marlowsd@gmail.com>2014-05-04 20:28:58 +0100
commitf0fcc41d755876a1b02d1c7c79f57515059f6417 (patch)
tree89cce0cfc61744b1c7b732619ea9de04f21fdcfe /compiler/cmm
parent5141baf76132fe0d8f88cfa0a62698cc3b37e48a (diff)
downloadhaskell-f0fcc41d755876a1b02d1c7c79f57515059f6417.tar.gz
Revert "Per-thread allocation counters and limits"
Problems were found on 32-bit platforms, I'll commit again when I have a fix. This reverts the following commits: 54b31f744848da872c7c6366dea840748e01b5cf b0534f78a73f972e279eed4447a5687bd6a8308e
Diffstat (limited to 'compiler/cmm')
-rw-r--r--compiler/cmm/CmmLayoutStack.hs9
1 files changed, 3 insertions, 6 deletions
diff --git a/compiler/cmm/CmmLayoutStack.hs b/compiler/cmm/CmmLayoutStack.hs
index e7d57d550a..bdc947829d 100644
--- a/compiler/cmm/CmmLayoutStack.hs
+++ b/compiler/cmm/CmmLayoutStack.hs
@@ -988,12 +988,9 @@ lowerSafeForeignCall dflags block
id <- newTemp (bWord dflags)
new_base <- newTemp (cmmRegType dflags (CmmGlobal BaseReg))
let (caller_save, caller_load) = callerSaveVolatileRegs dflags
+ load_tso <- newTemp (gcWord dflags)
load_stack <- newTemp (gcWord dflags)
- tso <- newTemp (gcWord dflags)
- cn <- newTemp (bWord dflags)
- bdfree <- newTemp (bWord dflags)
- bdstart <- newTemp (bWord dflags)
- let suspend = saveThreadState dflags tso cn <*>
+ let suspend = saveThreadState dflags <*>
caller_save <*>
mkMiddle (callSuspendThread dflags id intrbl)
midCall = mkUnsafeCall tgt res args
@@ -1002,7 +999,7 @@ lowerSafeForeignCall dflags block
-- might now have a different Capability!
mkAssign (CmmGlobal BaseReg) (CmmReg (CmmLocal new_base)) <*>
caller_load <*>
- loadThreadState dflags tso load_stack cn bdfree bdstart
+ loadThreadState dflags load_tso load_stack
(_, regs, copyout) =
copyOutOflow dflags NativeReturn Jump (Young succ)