|
LLVM 24.0.0git
|
This pass exposes codegen information to IR-level passes. More...
#include "llvm/ADT/APInt.h"#include "llvm/ADT/ArrayRef.h"#include "llvm/ADT/BitmaskEnum.h"#include "llvm/ADT/STLFunctionalExtras.h"#include "llvm/ADT/Uniformity.h"#include "llvm/Analysis/IVDescriptors.h"#include "llvm/Analysis/InterestingMemoryOperand.h"#include "llvm/IR/FMF.h"#include "llvm/IR/InstrTypes.h"#include "llvm/IR/PassManager.h"#include "llvm/Pass.h"#include "llvm/Support/AtomicOrdering.h"#include "llvm/Support/BranchProbability.h"#include "llvm/Support/Compiler.h"#include "llvm/Support/InstructionCost.h"#include <functional>#include <optional>#include <utility>Go to the source code of this file.
Classes | |
| struct | llvm::MemIntrinsicInfo |
| Information about a load/store intrinsic defined by the target. More... | |
| struct | llvm::HardwareLoopInfo |
| Attributes of a target dependent hardware loop. More... | |
| class | llvm::MemIntrinsicCostAttributes |
| Information for memory intrinsic cost model. More... | |
| class | llvm::IntrinsicCostAttributes |
| struct | llvm::TailFoldingInfo |
| class | llvm::TargetTransformInfo |
| This pass provides access to the codegen interfaces that are needed for IR-level transformations. More... | |
| struct | llvm::TargetTransformInfo::PointersChainInfo |
| Describe known properties for a set of pointers. More... | |
| struct | llvm::TargetTransformInfo::LSRCost |
| struct | llvm::TargetTransformInfo::UnrollingPreferences |
| Parameters that control the generic loop unrolling transformation. More... | |
| struct | llvm::TargetTransformInfo::PeelingPreferences |
| struct | llvm::TargetTransformInfo::BuildVectorUseOp |
| Stores information about the uses of a build vector. More... | |
| struct | llvm::TargetTransformInfo::MemCmpExpansionOptions |
| Returns options for expansion of memcmp. IsZeroCmp is. More... | |
| struct | llvm::TargetTransformInfo::OperandValueInfo |
| struct | llvm::TargetTransformInfo::VPLegalization |
| class | llvm::TargetIRAnalysis |
Analysis pass providing the TargetTransformInfo. More... | |
| class | llvm::TargetTransformInfoWrapperPass |
| Wrapper pass for TargetTransformInfo. More... | |
Namespaces | |
| namespace | llvm |
| This is an optimization pass for GlobalISel generic memory operations. | |
| namespace | llvm::Intrinsic |
| This namespace contains an enum with a value for every intrinsic/builtin function known by LLVM. | |
Typedefs | |
| typedef TargetTransformInfo | llvm::TTI |
Enumerations | |
| enum class | llvm::VectorInstrContext : uint8_t { llvm::None , llvm::Load , llvm::Store , llvm::BinaryOp , llvm::SplatOpFolded } |
| Represents a hint about the context in which a vector instruction or intrinsic is used. More... | |
| enum class | llvm::TailFoldingStyle { llvm::None , llvm::Data , llvm::DataWithoutLaneMask , llvm::DataAndControlFlow , llvm::DataWithEVL } |
Functions | |
| LLVM_ABI ImmutablePass * | llvm::createTargetTransformInfoWrapperPass (TargetIRAnalysis TIRA) |
| Create an analysis pass wrapper around a TTI object. | |
This pass exposes codegen information to IR-level passes.
Every transformation that uses codegen information is broken into three parts:
This file defines #2, which is the interface that IR-level transformations use for querying the codegen.
Definition in file TargetTransformInfo.h.