Michael Walker
|
49a903c6e3
|
Add newtype for preemption bounds and fair bounds
|
2015-11-17 19:29:35 +00:00 |
|
Michael Walker
|
b6ceaede99
|
Abort SCT execution early if there are no decisions in bound. Closes #28.
|
2015-11-17 19:16:19 +00:00 |
|
Michael Walker
|
68ef26727b
|
Give schedulers the trace so far
|
2015-11-17 19:16:13 +00:00 |
|
Michael Walker
|
d1643bb360
|
Enable building with Stackage lts-2
|
2015-11-17 19:15:56 +00:00 |
|
Michael Walker
|
f3be1d12ab
|
Replace type synonyms with newtypes. Closes #29.
|
2015-11-17 19:15:52 +00:00 |
|
Michael Walker
|
c6a702f725
|
Use ThreadId in definition of Conc, not Int
|
2015-11-17 18:03:03 +00:00 |
|
Michael Walker
|
3d3119ffd6
|
Expand test suite
|
2015-11-16 02:48:54 +00:00 |
|
Michael Walker
|
bc04990dbd
|
Fix off-by-one in adding backtracking points
|
2015-11-16 02:46:22 +00:00 |
|
Michael Walker
|
17ddc217c4
|
Unsynchronised reads and writes ARE dependent
|
2015-11-16 02:45:53 +00:00 |
|
Michael Walker
|
4081a6d7d7
|
Fix error with stepCommit argument order
|
2015-11-16 01:49:35 +00:00 |
|
Michael Walker
|
74dce99d71
|
Make stepModRefCas strict in the new value
|
2015-11-15 16:53:10 +00:00 |
|
Michael Walker
|
64057590db
|
Merge branch 'primops-simp'. Closes #20.
This only implements the atomic-primops operations which deal with CRefs,
as handling relaxed memory in the presence of MutVar#s is really hard.
|
2015-11-15 15:45:12 +00:00 |
|
Michael Walker
|
343e097f83
|
Implement casCRef and modifyCRefCAS
|
2015-11-15 15:42:45 +00:00 |
|
Michael Walker
|
12f0a118ef
|
Store threads in an IntMap
|
2015-11-15 15:42:45 +00:00 |
|
Michael Walker
|
af1985747d
|
Implement readForCAS
|
2015-11-15 15:42:45 +00:00 |
|
Michael Walker
|
8d3be1cd19
|
Add modifyCRefCAS_
|
2015-11-15 15:42:45 +00:00 |
|
Michael Walker
|
5d3e84ac76
|
Move lookahead to Deterministic.Internal.Common
|
2015-11-15 15:42:45 +00:00 |
|
Michael Walker
|
b20f254c29
|
Add a primitive for peekTicket
|
2015-11-15 15:42:45 +00:00 |
|
Michael Walker
|
62c2b38867
|
Add primitives for readForCAS, casCRef, and modifyCRefCAS
|
2015-11-15 15:42:45 +00:00 |
|
Michael Walker
|
e8bbb191ed
|
Add compare-and-swap primitives to MonadConc
|
2015-11-15 15:42:45 +00:00 |
|
Michael Walker
|
385d67a842
|
Remvoe Par comparison from MonadConc description
|
2015-11-15 15:42:37 +00:00 |
|
Michael Walker
|
b1ee473068
|
Clarify default memory model
|
2015-11-15 15:39:07 +00:00 |
|
Michael Walker
|
39b0ae8a45
|
Fix comment on memory behaviour of CRefs
|
2015-11-14 01:15:09 +00:00 |
|
Michael Walker
|
24faa57f29
|
Only show representative failures in autocheck
|
2015-11-12 14:56:32 +00:00 |
|
Michael Walker
|
41b1368f0b
|
Remove explicit nubby functions
|
2015-11-12 14:53:37 +00:00 |
|
Michael Walker
|
e9b417684a
|
Improve nubbyness
|
2015-11-12 14:52:58 +00:00 |
|
Michael Walker
|
6c60343432
|
Add nubby variants of alwaysTrue, alwaysTrue2, and somewhereTrue
|
2015-11-12 14:15:47 +00:00 |
|
Michael Walker
|
5ded895254
|
Rename CVar operations for consistency with CRefs
|
2015-11-11 14:57:12 +00:00 |
|
Michael Walker
|
fc293b7436
|
Handle removing the todo point in 'grow', not 'next'
|
2015-11-10 17:07:50 +00:00 |
|
Michael Walker
|
3321038070
|
Helper functions for exceptions
|
2015-11-08 22:04:07 +00:00 |
|
Michael Walker
|
30f15b4df8
|
Add helper functions around dealing with CVars
|
2015-11-07 20:28:45 +00:00 |
|
Michael Walker
|
e7c6bf6737
|
Factor out implementation of stepCommit
|
2015-11-07 19:41:06 +00:00 |
|
Michael Walker
|
06a63dcc33
|
Merge Conc and ConcIO implementations
|
2015-11-07 18:07:10 +00:00 |
|
Michael Walker
|
5f78dc5b99
|
Remove the 't' type parameter from STMIO and ConcIO
|
2015-11-07 17:19:40 +00:00 |
|
Michael Walker
|
0f72df77c4
|
Define Conc and ConcIO with STMST and STMIO, not STMLike
|
2015-11-07 17:13:38 +00:00 |
|
Michael Walker
|
1b9ca8bfb7
|
Simplify implementation of Conc and ConcIO
|
2015-11-05 23:36:30 +00:00 |
|
Michael Walker
|
e1b0e29baf
|
Rename CVar primitives for clarity.
|
2015-11-05 23:09:01 +00:00 |
|
Michael Walker
|
eb5add3d41
|
Simplify creation of CVars and CRefs
|
2015-11-05 23:01:13 +00:00 |
|
Michael Walker
|
27c3741371
|
Simplify implementation of STM
|
2015-11-05 22:28:46 +00:00 |
|
Michael Walker
|
67bcf996a8
|
Add default definitions of fork and forkOn
|
2015-11-05 16:09:13 +00:00 |
|
Michael Walker
|
aa0202a5af
|
Add failing bound thread signifiers. Closes #22.
|
2015-11-03 19:53:48 +00:00 |
|
Michael Walker
|
772aba80d0
|
Make TSO the default memory model. Closes #24.
|
2015-11-03 19:53:47 +00:00 |
|
Michael Walker
|
5c80220309
|
Fix for GHC <7.10
|
2015-11-03 19:53:45 +00:00 |
|
Michael Walker
|
a16a25c631
|
Fix willBlock, extend lookahead of willBlockSafely
|
2015-11-03 19:15:07 +00:00 |
|
Michael Walker
|
4572eba19e
|
Improve async docs. Closes #19.
|
2015-11-03 00:21:47 +00:00 |
|
Michael Walker
|
6321e42265
|
Enable withasync_wait2 test
|
2015-11-03 00:21:33 +00:00 |
|
Michael Walker
|
7b511cdbc7
|
Handle yields properly in pbInitialise
|
2015-11-03 00:00:29 +00:00 |
|
Michael Walker
|
ea926ba407
|
Add a forkOnWithUnmask operation to MonadConc
|
2015-11-02 22:43:22 +00:00 |
|
Michael Walker
|
0b5a0f0235
|
Enable async_cancel test in async-dejafu
|
2015-11-01 15:46:30 +00:00 |
|
Michael Walker
|
88d33e88ef
|
Fix a alwaysTrue2 missing out a failure
|
2015-11-01 15:46:30 +00:00 |
|