这个过程简单的分为几步。
第一步:写一个简单的小程序,hello.c。内容如下:
#include<stdio.h>
int main() {
printf("Hello world!\n");
}
第二步:找出如何在LLVM里面输出信息,最后选择采用llvm::errs(),等于采用了LLVM的错误机制。包括llvm::errs()所需的头文件。具体内容如下:
#include "llvm/Support/raw_ostream.h"
//shining add end
//shining add begin
llvm::errs() << "clang/tools/driver/driver.cpp/main()/shining_add" << '\n';
//shining add end
注:为了标明代码是我自己添加的,所以在添加的log信息前后都加了注释。
第三步:采用clang3.9.0代码,在我知道的几个点随意添加了几个log信息,信息内容如上一步所示,主要是标明插入log的函数的相关信息,都放在了函数的第一条语句处。编译该clang之后,使用命令clang hello.c -o hello编译hello.c,可以得到如下输出信息:
clang/tools/driver/driver.cpp/main()/shining_add
clang/tools/driver/driver.cpp/main()/shining_add
clang/to