summaryrefslogtreecommitdiff
path: root/compiler/GHC/StgToCmm/InfoTableProv.hs
Commit message (Collapse)AuthorAgeFilesLines
* FastString: add fastStringToShorTextdoyougnu2023-01-311-19/+16
|
* InfoTableProv: ShortText --> ShortByteStringdoyougnu2023-01-311-17/+20
|
* Minor SDoc-related cleanupKrzysztof Gogolewski2022-10-281-1/+1
| | | | | | | | | | | * Rename pprCLabel to pprCLabelStyle, and use the name pprCLabel for a function using CStyle (analogous to pprAsmLabel) * Move LabelStyle to the CLabel module, it no longer needs to be in Outputable. * Move calls to 'text' right next to literals, to make sure the text/str rule is triggered. * Remove FastString/String roundtrip in Tc.Deriv.Generate * Introduce showSDocForUser', which abstracts over a pattern in GHCi.UI
* Separate IPE source file from spanBen Gamari2022-10-111-6/+19
| | | | | | The source file name can very often be shared across many IPE entries whereas the source coordinates are generally unique. Separate the two to exploit sharing of the former.
* Refactor IPE initializationBen Gamari2022-10-111-0/+131
Here we refactor the representation of info table provenance information in object code to significantly reduce its size and link-time impact. Specifically, we deduplicate strings and represent them as 32-bit offsets into a common string table. In addition, we rework the registration logic to eliminate allocation from the registration path, which is run from a static initializer where things like allocation are technically undefined behavior (although it did previously seem to work). For similar reasons we eliminate lock usage from registration path, instead relying on atomic CAS. Closes #22077.