llvm / llvm-project

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
http://llvm.org
Other
29.15k stars 12.03k forks source link

Do static analysis at link time #14500

Open llvmbot opened 12 years ago

llvmbot commented 12 years ago
Bugzilla Link 14128
Version trunk
OS All
Depends On llvm/llvm-project#14499
Reporter LLVM Bugzilla Contributor

Extended Description

Static analysis should be done on link/archive time so it can work across whole program and libraries at a time. It should also analyze linked libraries and their dependencies, although only if it's functionality is used (similar to how headers work now).

A number of things is missing for this to be supported:

Debug information could give the analyzer access to the source of the compilation units. I don't know if the debug information can give you the required compilation options. If not, this information would have to be stored somewhere (probably as a DWARF extension) and ccc-analyzer could append that information to object files.

llvmbot commented 12 years ago

assigned to @tkremenek