Microsoft have written a SSA optimiser for their C++ toolchain! https://blogs.msdn.microsoft.com/vcblog/2016/05/04/new-code-optimizer/ (pretty accessible blog post for a compiler)
miniblog.
Related Posts
I see that *up has become an increasingly common name for toolchain installers: rustup, ghcup, even juliaup.
I think Rust was the first to use this terminology? I'm curious how similar the different *up tools are.
@tristanC That's an option! There's often cases where you know what the user wanted though, so you can provide a sensible AST that the toolchain can handle.
For example, a malformed string literal can still be parsed a string so type checking etc can be helpful.
Would you rather run a formally verified application on top of a conventional kernel/compiler toolchain, or a conventional application on verified kernel/compiler toolchain? Why?
