LLVM添加sanitizer

有的时候需要在编译器LLVM上添加自己写的sanitizer,比如自己写的sanitizer名字叫做Bitype,想通过指定-fsanitize=bitype来开启Bitype sanitizer,则需要如下步骤:

  • 在clang/Basic/Sanitizers.def文件中添加SANITIZER(“bitype”, Bitype)
  • 在clang/Driver/SanitizerArgs.h中添加needsBitypeRt函数
  • 在clang/lib/Deriver/ToolChain.cpp文件中getSupportedSanitizers()函数添加Res对Bitype的支持