LLVM  6.0.0svn
Classes | Namespaces | Functions
TargetTransformInfo.h File Reference

This pass exposes codegen information to IR-level passes. More...

#include "llvm/ADT/Optional.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/Operator.h"
#include "llvm/IR/PassManager.h"
#include "llvm/Pass.h"
#include "llvm/Support/DataTypes.h"
#include <functional>
Include dependency graph for TargetTransformInfo.h:

Go to the source code of this file.


struct  llvm::MemIntrinsicInfo
 Information about a load/store intrinsic defined by the target. More...
class  llvm::TargetTransformInfo
 This pass provides access to the codegen interfaces that are needed for IR-level transformations. More...
struct  llvm::TargetTransformInfo::LSRCost
struct  llvm::TargetTransformInfo::UnrollingPreferences
 Parameters that control the generic loop unrolling transformation. More...
struct  llvm::TargetTransformInfo::ReductionFlags
 Flags describing the kind of vector reduction. More...
class  llvm::TargetTransformInfo::Concept
class  llvm::TargetIRAnalysis
 Analysis pass providing the TargetTransformInfo. More...
class  llvm::TargetTransformInfoWrapperPass
 Wrapper pass for TargetTransformInfo. More...


 Compute iterated dominance frontiers using a linear time algorithm.


ImmutablePassllvm::createTargetTransformInfoWrapperPass (TargetIRAnalysis TIRA)
 Create an analysis pass wrapper around a TTI object. More...

Detailed Description

This pass exposes codegen information to IR-level passes.

Every transformation that uses codegen information is broken into three parts:

  1. The IR-level analysis pass.
  2. The IR-level transformation interface which provides the needed information.
  3. Codegen-level implementation which uses target-specific hooks.

This file defines #2, which is the interface that IR-level transformations use for querying the codegen.

Definition in file TargetTransformInfo.h.