Skip to content
This repository has been archived by the owner on Oct 22, 2020. It is now read-only.

Reading materials for compiler writers

Maik Klein edited this page Jul 30, 2019 · 4 revisions

Vulkan

SPIR-V

IR

Optimization

For a start you're probably better off focusing on simpler and more classical optimizations with a high bang per buck, like (sparse conditional) constant propagation, dead code elimination, rewrite systems for peephole optimizations, inlining, etc. -- unfortunately I don't have a great unified resource for this on hand. I learned a lot by spelunking in LLVM (source code and docs), but that entails learning enough LLVM internals and is therefore a bit slow and tainted. On the other hand, many of these optimizations are conceptually simple (on SSA form) and the key is having an IR that makes them so trivial. In that sense, looking an established project like Cranelift or LLVM for overall IR design could be helpful. @rkruppe

Clone this wiki locally