[llvm-commits] [llvm] r100798 - in /llvm/trunk: include/llvm/Analysis/Lint.h include/llvm/LinkAllPasses.h lib/Analysis/Lint.cpp test/Other/lint.ll

Dan Gohman gohman at apple.com
Thu Apr 8 15:59:11 PDT 2010

Right now the usage model is you just put


in your front-end's code for setting up a pass manager. Or you run "opt -lint"
on LLVM IR files produced by your front-end. I'm open to ideas for how to
make it more usable.

There's nothing in Lint.cpp that's immune from false positive conditions. In
a way, it's this very property of having the potential to be spurious which
separates checks which must go in Lint.cpp from checks which can go in


On Apr 8, 2010, at 2:21 PM, Daniel Dunbar wrote:

> Can I turn that off? Or, what is the intended use case for this in the FE?
> - Daniel
> On Thu, Apr 8, 2010 at 12:51 PM, Dan Gohman <gohman at apple.com> wrote:
>> On Apr 8, 2010, at 12:01 PM, Daniel Dunbar wrote:
>>> Any reason not to put this under "AndVerify" and "VerifyEach" as part
>>> of the StandardPasses.h lists?
>> Yes; this comment in Lint.cpp:
>>>> +// Another limitation is that it assumes all code will be executed. A store
>>>> +// through a null pointer in a basic block which is never reached is harmless,
>>>> +// but this pass will warn about it anyway.
>> Dan

More information about the llvm-commits mailing list