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 :)

Reply via email to