Source-to-source transformations with Clang/LLVM