Re: constant pooling in GHC
oh ok, so CSE / sharing for string and numerical literals? On Fri, Sep 21, 2018 at 1:23 AM Phyx wrote: > 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 > wrote: > >> 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 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@haskell.org >>> http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs >>> >> ___ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
Re: constant pooling in GHC
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 wrote: > 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 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@haskell.org >> http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs >> > ___ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
constant pooling in GHC
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@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs