Chapuni's branch based on http://llvm.org/git/clang.git