[Git][ghc/ghc][wip/tsan/all] 4 commits: rts/SpinLock: Separate out slow path

Ben Gamari gitlab at gitlab.haskell.org
Fri Oct 30 05:21:21 UTC 2020



Ben Gamari pushed to branch wip/tsan/all at Glasgow Haskell Compiler / GHC


Commits:
ab5713e0 by Ben Gamari at 2020-10-30T01:20:54-04:00
rts/SpinLock: Separate out slow path

Not only is this in general a good idea, but it turns out that GCC
unrolls the retry loop, resulting is massive code bloat in critical
parts of the RTS (e.g. `evacuate`).

- - - - -
f538641f by Ben Gamari at 2020-10-30T01:20:54-04:00
rts: Use relaxed ordering on spinlock counters

- - - - -
f7b91d39 by Ben Gamari at 2020-10-30T01:21:11-04:00
Merge branches 'wip/tsan/sched', 'wip/tsan/ci', 'wip/tsan/storage', 'wip/tsan/wsdeque', 'wip/tsan/misc', 'wip/tsan/stm', 'wip/tsan/event-mgr', 'wip/tsan/timer' and 'wip/tsan/stats' into wip/tsan/all

- - - - -
cb267182 by Ben Gamari at 2020-10-30T01:21:15-04:00
testing

- - - - -


30 changed files:

- .gitlab-ci.yml
- hadrian/src/Flavour.hs
- includes/rts/SpinLock.h
- includes/rts/TSANUtils.h
- includes/rts/storage/Closures.h
- includes/stg/SMP.h
- libraries/base/GHC/Event/Control.hs
- rts/.tsan-suppressions
- rts/Capability.c
- rts/Capability.h
- rts/Messages.c
- rts/Proftimer.c
- rts/RaiseAsync.c
- rts/RtsStartup.c
- rts/SMPClosureOps.h
- rts/STM.c
- rts/Schedule.c
- rts/Schedule.h
- rts/Sparks.c
- + rts/SpinLock.c
- rts/Stats.c
- rts/Stats.h
- rts/Task.c
- rts/ThreadPaused.c
- rts/Threads.c
- rts/Timer.c
- rts/WSDeque.c
- rts/WSDeque.h
- rts/posix/GetTime.c
- rts/posix/Signals.c


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/ef98942bff66004c5c8b2ca1d4df1d240f9633da...cb2671825a324f9fabededd9d3c3ca3963951d95

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/ef98942bff66004c5c8b2ca1d4df1d240f9633da...cb2671825a324f9fabededd9d3c3ca3963951d95
You're receiving this email because of your account on gitlab.haskell.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20201030/87e9e17f/attachment.html>


More information about the ghc-commits mailing list