Use ByteString to represent Cmm string literals (#16198)
Also used ByteString in some other relevant places.
Merge request reports
Activity
mentioned in issue #16198 (closed)
Sounds reasonable to me.
My only slight concern is about fragmentation due to the pinned nature of
ByteString
s. Particularly in the case of long-lived compiler runs (e.g. the GHCi sessions that @simonmar and his group are known to use). We could in principle introduce our own unpinned byte array type into GHC but perhaps this is best left for future work.Could there be a Note giving an overview of the handling of string literals, in the way this patch does it? Stressing the efficiency issues that led to the change?
You know the details now! Writing them down, and then referring to that Note from appropriate places, would be a help. Thanks!
added 35 commits
-
cbdec328...a1e9cd6a - 33 commits from branch
ghc:master
- 9e9552d8 - Use ByteString to represent Cmm string literals (#16198 (closed))
- 166f48ab - Optimize pprASCII
-
cbdec328...a1e9cd6a - 33 commits from branch
mentioned in merge request !143 (merged)
added 14 commits
-
166f48ab...8c3133a6 - 12 commits from branch
ghc:master
- 44eb3ca9 - Use ByteString to represent Cmm string literals (#16198 (closed))
- 9f973dc0 - Optimize pprASCII
-
166f48ab...8c3133a6 - 12 commits from branch
enabled an automatic merge when the pipeline for 9f973dc0 succeeds
mentioned in merge request !141 (merged)
assigned to @marge-bot
added 13 commits
-
9f973dc0...a5373c1f - 11 commits from branch
ghc:master
- 2f2fabdc - Use ByteString to represent Cmm string literals (#16198 (closed))
- a5a7adb2 - Optimize pprASCII
-
9f973dc0...a5373c1f - 11 commits from branch
assigned to @hsyl20
added 50 commits
-
a5a7adb2...7cdcd3e1 - 48 commits from branch
ghc:master
- f9abab52 - Use ByteString to represent Cmm string literals (#16198 (closed))
- 430ebfc3 - Optimize pprASCII
-
a5a7adb2...7cdcd3e1 - 48 commits from branch
assigned to @marge-bot
assigned to @hsyl20