HomePhabricator

[Sanitizer] Reduce the usage of sanitizer blacklist in CodeGenModule

Authored by samsonov on Jul 7 2014, 4:34 PM.

Description

[Sanitizer] Reduce the usage of sanitizer blacklist in CodeGenModule

Get rid of cached CodeGenModule::SanOpts, which was used to turn off
sanitizer codegen options if current LLVM Module is blacklisted, and use
plain LangOpts.Sanitize instead.

  1. Some codegen decisions (turning TBAA or writable strings on/off) shouldn't depend on the contents of blacklist.
  1. llvm.asan.globals should *always* be created, even if the module is blacklisted - soon Clang's CodeGen where we read sanitizer blacklist files, so we should properly report which globals are blacklisted to the backend.

llvm-svn: 212499

Details