organized llvm.cpp some more, made function wrapper, using C++11