1 //===-- llvm/Analysis/Lint.h - LLVM IR Lint ---------------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 // This file defines lint interfaces that can be used for some sanity checking
11 // of input to the system, and for checking that transformations
12 // haven't done something bad. In contrast to the Verifier, the Lint checker
13 // checks for undefined behavior or constructions with likely unintended
16 // To see what specifically is checked, look at Lint.cpp
18 //===----------------------------------------------------------------------===//
20 #ifndef LLVM_ANALYSIS_LINT_H
21 #define LLVM_ANALYSIS_LINT_H
31 /// @brief Create a lint pass.
33 /// Check a module or function.
34 FunctionPass *createLintPass();
36 /// @brief Check a module.
38 /// This should only be used for debugging, because it plays games with
39 /// PassManagers and stuff.
41 const Module &M ///< The module to be checked
44 // lintFunction - Check a function.
46 const Function &F ///< The function to be checked
49 } // End llvm namespace