[Git][ghc/ghc][wip/tsan/codegen] 22 commits: cmm: Introduce MemoryOrderings
Ben Gamari (@bgamari)
gitlab at gitlab.haskell.org
Thu Nov 10 15:25:37 UTC 2022
Ben Gamari pushed to branch wip/tsan/codegen at Glasgow Haskell Compiler / GHC
Commits:
1e025fb8 by Ben Gamari at 2022-11-10T09:28:42-05:00
cmm: Introduce MemoryOrderings
- - - - -
82739430 by Ben Gamari at 2022-11-10T09:28:42-05:00
llvm: Respect memory specified orderings
- - - - -
9281c802 by Ben Gamari at 2022-11-10T09:30:59-05:00
Codegen/x86: Eliminate barrier for relaxed accesses
- - - - -
4415c1ef by Ben Gamari at 2022-11-10T09:30:59-05:00
cmm/Parser: Reduce some repetition
- - - - -
86ded8b8 by Ben Gamari at 2022-11-10T09:30:59-05:00
cmm/Parser: Add syntax for ordered loads and stores
- - - - -
e95581e5 by Ben Gamari at 2022-11-10T09:42:58-05:00
cmm/Parser: Atomic load syntax
- - - - -
5569a9f6 by Ben Gamari at 2022-11-10T09:43:02-05:00
codeGen: Introduce ThreadSanitizer instrumentation
This introduces a new Cmm pass which instruments the program with
ThreadSanitizer annotations, allowing full tracking of mutator memory
accesses via TSAN.
- - - - -
b12d07cb by Ben Gamari at 2022-11-10T09:43:02-05:00
rts/Messages: Refactor
- - - - -
7ac21924 by Ben Gamari at 2022-11-10T09:43:02-05:00
Ordering fixes
- - - - -
d41c6a8c by Ben Gamari at 2022-11-10T09:43:02-05:00
eventlog: Silence spurious data race
- - - - -
2f896ba9 by Ben Gamari at 2022-11-10T09:43:02-05:00
Introduce SET_INFO_RELEASE for Cmm
- - - - -
7dabeb15 by Ben Gamari at 2022-11-10T09:43:02-05:00
unlockClosure
- - - - -
6970367a by Ben Gamari at 2022-11-10T09:43:02-05:00
Introduce and use GET_INFO_ACQUIRE
- - - - -
beddf374 by Ben Gamari at 2022-11-10T09:43:02-05:00
Fences
- - - - -
8965eebb by Ben Gamari at 2022-11-10T09:43:02-05:00
LOAD_INFO
- - - - -
eaf72829 by Ben Gamari at 2022-11-10T09:43:02-05:00
rts/stm: Fix memory ordering in readTVarIO#
See #22421.
- - - - -
8ece45a1 by Ben Gamari at 2022-11-10T09:43:02-05:00
Improve heap memory barrier note
- - - - -
37af3f28 by Ben Gamari at 2022-11-10T09:43:02-05:00
load_acquire_w
- - - - -
a3dac035 by Ben Gamari at 2022-11-10T09:43:02-05:00
rts: Introduce getNumCapabilities
- - - - -
24260401 by Ben Gamari at 2022-11-10T09:43:03-05:00
ghc: Fix data race in dump file handling
Previously the dump filename cache would use a non-atomic update which
could potentially result in lost dump contents. Note that this is still
a bit racy since the first writer may lag behind a later appending
writer.
- - - - -
ca2bbba1 by Ben Gamari at 2022-11-10T09:43:03-05:00
rts: Mark accesses to Capability.context_switch as relaxed
Also Capability.interrupt.
- - - - -
d883495c by Ben Gamari at 2022-11-10T10:11:05-05:00
Note
- - - - -
30 changed files:
- compiler/GHC/Cmm/Config.hs
- compiler/GHC/Cmm/Lexer.x
- compiler/GHC/Cmm/MachOp.hs
- compiler/GHC/Cmm/Parser.y
- compiler/GHC/Cmm/Pipeline.hs
- + compiler/GHC/Cmm/ThreadSanitizer.hs
- compiler/GHC/CmmToAsm/AArch64/CodeGen.hs
- compiler/GHC/CmmToAsm/PPC/CodeGen.hs
- compiler/GHC/CmmToAsm/X86/CodeGen.hs
- compiler/GHC/CmmToC.hs
- compiler/GHC/CmmToLlvm/CodeGen.hs
- compiler/GHC/Driver/Config/Cmm.hs
- compiler/GHC/Driver/Flags.hs
- compiler/GHC/Driver/Session.hs
- compiler/GHC/StgToCmm/ExtCode.hs
- compiler/GHC/StgToCmm/Prim.hs
- compiler/GHC/Utils/Logger.hs
- compiler/ghc.cabal.in
- docs/users_guide/debugging.rst
- rts/Apply.cmm
- rts/Capability.c
- rts/Capability.h
- rts/HeapStackCheck.cmm
- rts/Messages.c
- rts/Messages.h
- rts/PrimOps.cmm
- rts/Printer.c
- rts/ProfHeap.c
- rts/ProfilerReport.c
- rts/ProfilerReportJson.c
The diff was not included because it is too large.
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/a2751d716045c5ae511ff4091068601cd2566cde...d883495cd2d6c5370d5db83171355be9dc17a629
--
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/a2751d716045c5ae511ff4091068601cd2566cde...d883495cd2d6c5370d5db83171355be9dc17a629
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/20221110/10063ecf/attachment-0001.html>
More information about the ghc-commits
mailing list