And it actually works, but what I'm trying to do next is to get the llvm::Module by using the llvm::CodeGenAction::takeModule() method. I took a quick look at the code, and seems that for every translation unit a different FrontendAction (EmitLLVMOnlyAction).
The question is:
Is there a way to get a pointer to that FrontendAction (EmitLLVMOnlyAction) created by ClangTool so I can play with the llvm::Modules?
You can write your own FronendActionFactory, and then you have total control over the Action you create and what you want to do with it. I have never done anything with llvm::Modules, so unforeseen problems might arise