TypeSan: Practical Type Confusion Detection
LLVM: a compilation framework for lifelong program analysis & transformation