CTFE-PGO ... Because I was bored

Stefan Koch via Digitalmars-d digitalmars-d at puremagic.com
Tue Dec 13 21:23:12 PST 2016


On Wednesday, 14 December 2016 at 05:07:17 UTC, Stefan Koch wrote:
> Hi Guys,
>
> Implementing and TESTING function-call support is boring so ...
>
> I have just written a little piece of code that counts which 
> switch-cases are executed most frequently versus how often 
> their conditions are evaluated.
>
> This can essentially be the basis for pgo based on the 
> ctfe-function path.
> Since functions are supposed to be the same at ctfe and at 
> runtime, you basically get profiling information for free while 
> compiling.
>
> Cheers,
> Stefan

https://github.com/UplinkCoder/dmd/compare/newCTFE...newCTFE-PGO
This is the code that was necessary to add execution counters.
I'd say it does speak for the soundness of the design :)


More information about the Digitalmars-d mailing list