LLVM  8.0.1
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/Operator.h"
#include "llvm/IR/PassManager.h"
#include "llvm/Pass.h"
#include "llvm/Support/AtomicOrdering.h"
#include "llvm/Support/DataTypes.h"
#include <functional>
Include dependency graph for TargetTransformInfo.h:

Go to the source code of this file.

Classes

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::MemCmpExpansionOptions
 If not nullptr, enable inline expansion of memcmp. 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...
 

Namespaces

 llvm
 This class represents lattice values for constants.
 
 llvm::Intrinsic
 This namespace contains an enum with a value for every intrinsic/builtin function known by LLVM.
 

Functions

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.