My research revolves around the interplay between software, compilers, architecture and microarchitecture in microprocessors resulting in system prototypes, patents and papers. I have worked on formal verification of ARM processors, formalising ARM’s architecture specification, vectorizing compilers, created a language and compiler for programming heterogeneous parallel system, software-defined radio, testcase generation, architectural coverage analysis, CPU simulators and the ARMv8 architecture. My most distracting hobby at the moment is building my own keyboards.

Specialties: Research in formal verification, microprocessor architecture, microarchitecture, parallel programming, parallelizing compilers, functional programming, operating systems.