LLVM API Documentation

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

llvm::FindUnsafePointerTypes Struct Reference

#include <FindUnsafePointerTypes.h>

Inheritance diagram for llvm::FindUnsafePointerTypes:

Inheritance graph
[legend]
Collaboration diagram for llvm::FindUnsafePointerTypes:

Collaboration graph
[legend]
List of all members.

Public Member Functions

const std::set< PointerType * > & getUnsafeTypes () const
virtual bool runOnModule (Module &M)
void print (std::ostream &o, const Module *Mod) const
virtual void getAnalysisUsage (AnalysisUsage &AU) const

Public Attributes

std::set< PointerType * > UnsafeTypes

Detailed Description

Definition at line 34 of file FindUnsafePointerTypes.h.


Member Function Documentation

virtual void llvm::FindUnsafePointerTypes::getAnalysisUsage AnalysisUsage AU  )  const [inline, virtual]
 

getAnalysisUsage - Of course, we provide ourself...

Reimplemented from llvm::Pass.

Definition at line 55 of file FindUnsafePointerTypes.h.

References llvm::AnalysisUsage::setPreservesAll().

const std::set<PointerType*>& llvm::FindUnsafePointerTypes::getUnsafeTypes  )  const [inline]
 

Definition at line 39 of file FindUnsafePointerTypes.h.

References UnsafeTypes.

Referenced by print().

void FindUnsafePointerTypes::print std::ostream &  o,
const Module Mod
const [virtual]
 

print - Loop over the results of the analysis, printing out unsafe types.

Reimplemented from llvm::Pass.

Definition at line 89 of file FindUnsafePointerTypes.cpp.

References E, getUnsafeTypes(), I, and UnsafeTypes.

bool FindUnsafePointerTypes::runOnModule Module M  )  [virtual]
 

run - Inspect the operations that the specified module does on values of various types. If they are deemed to be 'unsafe' note that the type is not safe to transform.

Implements llvm::ModulePass.

Definition at line 61 of file FindUnsafePointerTypes.cpp.

References llvm::Module::begin(), E, llvm::Module::end(), F, llvm::Value::getName(), llvm::GlobalValue::getParent(), I, llvm::inst_begin(), llvm::inst_end(), isSafeInstruction(), PrintFailures, and UnsafeTypes.


Member Data Documentation

std::set<PointerType*> llvm::FindUnsafePointerTypes::UnsafeTypes
 

Definition at line 36 of file FindUnsafePointerTypes.h.

Referenced by getUnsafeTypes(), print(), and runOnModule().


The documentation for this struct was generated from the following files: