Allocate Adjustors and mark them readable in two steps
This drops allocateExec for darwin, and replaces it with a alloc, write, mark executable strategy instead. This prevents us from trying to allocate an executable range and then write to it, which X^W will prohibit on darwin. This will *only* work if we can use mmap.
Showing
- compiler/main/Packages.hs 3 additions, 3 deletionscompiler/main/Packages.hs
- docs/users_guide/packages.rst 1 addition, 1 deletiondocs/users_guide/packages.rst
- hadrian/src/Rules/Rts.hs 1 addition, 1 deletionhadrian/src/Rules/Rts.hs
- includes/Rts.h 6 additions, 0 deletionsincludes/Rts.h
- includes/rts/storage/GC.h 7 additions, 1 deletionincludes/rts/storage/GC.h
- libraries/base/base.cabal 1 addition, 1 deletionlibraries/base/base.cabal
- libraries/ghci/GHCi/InfoTable.hsc 18 additions, 0 deletionslibraries/ghci/GHCi/InfoTable.hsc
- libraries/ghci/ghci.cabal.in 1 addition, 0 deletionslibraries/ghci/ghci.cabal.in
- rts/Adjustor.c 1 addition, 1 deletionrts/Adjustor.c
- rts/Linker.c 1 addition, 1 deletionrts/Linker.c
- rts/LinkerInternals.h 5 additions, 0 deletionsrts/LinkerInternals.h
- rts/StgCRun.c 2 additions, 2 deletionsrts/StgCRun.c
- rts/ghc.mk 1 addition, 1 deletionrts/ghc.mk
- rts/package.conf.in 1 addition, 1 deletionrts/package.conf.in
- rts/rts.cabal.in 1 addition, 1 deletionrts/rts.cabal.in
- rts/sm/Storage.c 27 additions, 4 deletionsrts/sm/Storage.c
- testsuite/tests/th/T10279.hs 2 additions, 2 deletionstestsuite/tests/th/T10279.hs
- testsuite/tests/th/T10279.stderr 3 additions, 3 deletionstestsuite/tests/th/T10279.stderr
- utils/ghc-cabal/Main.hs 1 addition, 1 deletionutils/ghc-cabal/Main.hs
Loading
Please register or sign in to comment