constant pooling in GHC

Phyx lonetiger at
Fri Sep 21 05:23:25 UTC 2018

I simply mean that the same constant is not emitted more than once to
memory. I.e. If a constant string is used twice, there is only one value in
.rodata for it.

On Fri, Sep 21, 2018, 01:20 Carter Schonwald <carter.schonwald at>

> what precisely do you mean by constant pooling? i can guess several
> meanings, but what do you mean specifically?
> On Sat, Sep 15, 2018 at 10:33 AM Phyx <lonetiger at> wrote:
>> Hi All,
>> I'm hoping someone here can save me some time.  I'm working on something
>> that relies on constants in the same translation unit being pooled before
>> assembly.
>> I've noticed GHC does some const pooling at -O1 , but this doesn't seem
>> to be very consistent, which leads me to believe this is a byproduct of
>> another optimization rather than an explicit thing.
>> I couldn't find anything obvious in the sources, so does GHC
>> intentionally do constant pooling already? Or do I need a new pass to
>> guarantee it.
>> Thanks,
>> Tamar
> _______________________________________________
>> ghc-devs mailing list
>> ghc-devs at
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the ghc-devs mailing list